Untuk menyelesaikan tugas pencapaian Siap CreateBooking, Anda harus berhasil membuat dan mengirimkan metode CreateBooking. Metode ini dipanggil saat pengguna mencoba membuat pemesanan. Jika pemesanan berhasil dibuat, respons akan menyertakan booking_id unik untuk merujuk ke pemesanan untuk permintaan atau pembaruan mendatang.
Persyaratan tugas CreateBooking
- 10 permintaan
CreateBookingdi Sandbox dengan rasio keberhasilan 90% atau lebih tinggi. - 3 permintaan
CreateBookingdi Produksi dengan rasio keberhasilan 90% atau lebih tinggi.
Dasar-dasar CreateBooking
Saat pengguna memulai pemesanan, permintaan CreateBooking akan dikirim ke Server Pemesanan partner. Respons terhadap permintaan tersebut menunjukkan pemesanan berhasil atau pemesanan gagal. Jika terjadi kegagalan pemesanan, respons harus menyertakan error logika bisnis untuk kegagalan tersebut. Misalnya, slot menjadi tidak tersedia atau slot telah dipesan oleh pengguna yang sama.
Saat pengguna membuat pemesanan, Google mengirimkan nama depan, nama belakang, nomor telepon, dan email pengguna. Untuk mengetahui informasi selengkapnya, lihat Kebijakan pencocokan dan pembuatan akun.
Idempotensi
Komunikasi melalui jaringan tidak selalu dapat diandalkan, dan Google dapat mencoba lagi permintaan HTTP jika tidak ada respons yang diterima. Karena alasan ini, semua metode yang mengubah status harus bersifat idempotent:
CreateBookingUpdateBooking
Untuk setiap pesan permintaan, kecuali UpdateBooking, token idempotency disertakan untuk mengidentifikasi permintaan secara unik. Hal ini memungkinkan Anda membedakan antara panggilan REST yang dicoba lagi, dengan maksud untuk membuat satu permintaan dan dua permintaan terpisah. ID entri pemesanan masing-masing UpdateBooking membantu mengidentifikasinya secara unik, sehingga tidak ada token idempotency yang disertakan dalam permintaannya.
Berikut adalah beberapa contoh bagaimana Server Pemesanan menangani idempotency:
Respons HTTP yang berhasil
CreateBookingmencakup pemesanan yang dibuat. Dalam beberapa kasus, pembayaran diproses sebagai bagian dari alur pemesanan. JikaCreateBookingRequestyang sama diterima untuk kedua kalinya denganidempotency_tokenyang sama,CreateBookingResponseyang sama harus ditampilkan. Pemesanan kedua tidak dibuat, dan pengguna ditagih hanya sekali, jika sesuai.
Persyaratan idempotency berlaku untuk semua metode yang mengubah status.