Per completare l'attività del traguardo Pronto per CreateBooking, devi creare e pubblicare correttamente il metodo CreateBooking. Questo metodo viene chiamato quando un utente tenta di creare una prenotazione. Se la prenotazione va a buon fine, la risposta include un booking_id univoco a cui fare riferimento per richieste o aggiornamenti futuri.
Requisiti dell'attività CreateBooking
- 10 richieste
CreateBookingin Sandbox con una percentuale di successo pari o superiore al 90%. - 3 richieste
CreateBookingin produzione con una percentuale di successo pari o superiore al 90%.
Nozioni di base su CreateBooking
Quando un utente avvia una prenotazione, viene inviata una richiesta CreateBooking al server di prenotazione del partner. La risposta alla richiesta indica se la prenotazione è andata a buon fine o meno. In caso di errore di prenotazione, la risposta deve includere l'errore di logica di business. Ad esempio, lo slot non è più disponibile o è già stato prenotato dallo stesso utente.
Quando un utente crea una prenotazione, Google ti invia il nome, il cognome, il numero di telefono e l'indirizzo email dell'utente. Per ulteriori informazioni, consulta la policy di creazione e corrispondenza degli account .
Idempotenza
La comunicazione sulla rete non è sempre affidabile e Google può riprovare a inviare le richieste HTTP se non riceve una risposta. Per questo motivo, tutti i metodi che modificano lo stato devono essere idempotenti:
CreateBookingUpdateBooking
Per ogni messaggio di richiesta, ad eccezione di UpdateBooking, vengono inclusi token di idempotenza per identificare in modo univoco la richiesta. In questo modo puoi distinguere tra una chiamata REST riprovata, con l'intento di creare una singola richiesta, e due richieste separate. I rispettivi ID delle voci di prenotazione di UpdateBooking aiutano a identificarli in modo univoco, quindi non viene incluso alcun token di idempotenza nelle relative richieste.
Di seguito sono riportati alcuni esempi di come i server di prenotazione gestiscono l'idempotenza:
Una risposta HTTP riuscita
CreateBookinginclude la prenotazione creata. In alcuni casi, il pagamento viene elaborato nell'ambito del flusso di prenotazione. Se la stessaCreateBookingRequestviene ricevuta una seconda volta con lo stessoidempotency_token, deve essere restituita la stessaCreateBookingResponse. Non viene creata una seconda prenotazione e, se applicabile, all'utente viene addebitato l'importo una sola volta.
Il requisito di idempotenza si applica a tutti i metodi che modificano lo stato.