Die Erstellung von Leases wird optional unterstützt. Sie ist für Partner verfügbar, die diese Funktion implementieren möchten. Wende dich an das Actions Center, um die Voraussetzungen abzuklären, bevor du beginnst.
Wenn du eine Buchung mit Lease-Unterstützung erstellen möchtest, musst du zuerst eine Lease erstellen. Das Back-End des Partners prüft, ob der angeforderte Slot gültig und verfügbar ist. Intern erstellt der Partner eine temporäre Reservierung für den angeforderten Slot, der automatisch um "lease_expiration_time" abläuft. Das Back-End darf „lease_expiration_time“ ändern, z.B. wenn die angeforderte Zeit für die Lease zu lang ist. Die erstellte Lease wird an den Client zurückgegeben. Anschließend fordert der Client die Erstellung einer Buchung für die Lease an.
Kann die Lease aufgrund eines Fehlers in der Geschäftslogik nicht erstellt werden, muss der Fehler in der Antwort angegeben werden. Weitere Informationen findest du hier.
Anfrage
CreateLeaseRequest
Rückgabewert
CreateLeaseResponse
Voraussetzungen:
- „lease_id“ muss vom Back-End des Partners erstellt und in „CreateLeaseResponse“ festgelegt werden.
- "lease_expiration_time" muss in "CreateLeaseResponse" festgelegt werden.
- Wenn das Ressourcenfeld in "CreateLeaseRequest" angegeben ist, muss es in "CreateLeaseResponse" festgelegt werden und mit "CreateLeaseRequest" übereinstimmen.
- Alle anderen Felder in "CreateLeaseResponse" müssen festgelegt sein und mit "CreateLeaseRequest" übereinstimmen.
Kanonische gRPC-Fehlercodes
INVALID_ARGUMENT
(ungültige Händler-ID, Dienstleistungs-ID oder Zeitangabe für den Slot)
// Request to create a [ext.maps.booking.partner.v2.Lease] for a slot in the // inventory. The expiration time in the returned Lease may be modified by the // backend, e.g. if the requested lease period is too long. message CreateLeaseRequest { // The lease to be created with information about the appointment slot // (required) Lease lease = 1; } // Response for the [ext.maps.booking.partner.v2.CreateLease] RPC with the // created [ext.maps.booking.partner.v2.Lease] message CreateLeaseResponse { // The created [ext.maps.booking.partner.v2.Lease] (required) Lease lease = 1; // If creating a lease fails, this field should reflect the business logic // error (e.g., slot has become unavailable) and lease field is expected to be // unset. (required if failure occurs) BookingFailure booking_failure = 2; }