CreateBooking Ready

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 CreateBooking in Sandbox con una percentuale di successo pari o superiore al 90%.
  • 3 richieste CreateBooking in 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:

  • CreateBooking
  • UpdateBooking

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 CreateBooking include la prenotazione creata. In alcuni casi, il pagamento viene elaborato nell'ambito del flusso di prenotazione. Se la stessa CreateBookingRequest viene ricevuta una seconda volta con lo stesso idempotency_token, deve essere restituita la stessa CreateBookingResponse. 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.