כדי להשלים את המשימה CreateBooking
מוכנות להשקה, צריך ליצור ולספק את CreateBooking
השיטה בהצלחה. המערכת קוראת לשיטה הזו כשמשתמש מנסה ליצור הזמנה. אם נוצרת הזמנה מוצלחת, התשובה כוללת booking_id
ייחודי שאפשר להשתמש בו כדי להתייחס להזמנה בבקשות או בעדכונים עתידיים.
דרישות ליצירת משימות של הזמנת תור
- 10 תגובות מוצלחות של
CreateBooking
עם שיעור שגיאות של פחות מ-10%.
יסודות של CreateBooking
כשמשתמש יוזם הזמנה, בקשת CreateBooking
נשלחת לשרת ההזמנות של השותף. התשובה לבקשה מציינת אם ההזמנה בוצעה בהצלחה או נכשלה. אם ההזמנה נכשלת, התגובה צריכה לכלול את שגיאת הלוגיקה העסקית שגרמה לכשל. לדוגמה, המשבצת הפכה ללא זמינה או שהיא כבר הוזמנה על ידי אותו משתמש.
כשמשתמש יוצר הזמנה, Google שולחת לכם את השם הפרטי, שם המשפחה, מספר הטלפון וכתובת האימייל של המשתמש. מידע נוסף זמין במאמר בנושא מדיניות בנושא התאמה ויצירה של חשבונות.
האידמפוטנטיות
התקשורת ברשת לא תמיד אמינה, ו-Google יכולה לנסות שוב לשלוח בקשות HTTP אם לא מתקבלת תשובה. לכן, כל השיטות שמשנות את המצב צריכות להיות אידמפוטנטיות:
CreateBooking
UpdateBooking
לכל הודעת בקשה, חוץ מ-UpdateBooking
, מצורפים טוקנים של אידמפוטנטיות כדי לזהות את הבקשה באופן ייחודי. כך אפשר להבדיל בין ניסיון חוזר של קריאת REST, עם כוונה ליצור בקשה אחת, לבין שתי בקשות נפרדות. מזהי הזמנות הרלוונטיים של UpdateBooking
עוזרים לזהות אותם באופן ייחודי, ולכן לא נכלל אסימון אידמפוטנטיות בבקשות שלהם.
הנה כמה דוגמאות לאופן שבו שרתי ההזמנות מטפלים באידמפוטנטיות:
תשובת HTTP מוצלחת של
CreateBooking
כוללת את ההזמנה שנוצרה. במקרים מסוימים, התשלום מתבצע כחלק מתהליך ההזמנה. אם מתקבל אותוCreateBookingRequest
בפעם השנייה עם אותוidempotency_token
, צריך להחזיר את אותוCreateBookingResponse
. לא נוצרת הזמנה שנייה, ואם רלוונטי, המשתמש מחויב בדיוק פעם אחת.
הדרישה לאידמפוטנטיות חלה על כל השיטות שמשנות את המצב.