Method: notification.partners.bookings.patch

Updates an existing Booking.

HTTP request

PATCH https://mapsbooking.googleapis.com/v1alpha/notification/{booking.name=partners/*/bookings/*}

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
booking.name

string

Resource name of the booking: partners/{partner ID}/bookings/{booking ID}

Query parameters

Parameters
updateMask

string (FieldMask format)

Field mask of all booking fields to be updated

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

bookingFailure

object (BookingFailure)

If processing of an asynchronously confirmed booking request fails and the booking's status is being updated to FAILED, this field should reflect the business logic error (e.g., user has an existing reservation too close to this time). This field should only be set when updating the booking status to FAILED and will be ignored otherwise.

Request body

The request body contains an instance of Booking.

Response body

If successful, the response body contains an instance of Booking.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/mapsbooking

BookingFailure

Status data that conveys why processing of a booking failed asynchronously. BookingFailure is intended to primarily capture business logic errors.

JSON representation
{
  "cause": enum (Cause),
  "rejectedCardType": enum (CreditCardType),
  "description": string,
  "paymentFailure": {
    object (PaymentFailureInformation)
  }
}
Fields
cause

enum (Cause)

The reason why the booking failed. (required)

rejectedCardType

enum (CreditCardType)

(required only if cause is PAYMENT_ERROR_CARD_TYPE_REJECTED)

description

string

This optional field is used for the partner to include additional information for debugging purpose only. (optional)

paymentFailure

object (PaymentFailureInformation)

Information about payment failures.

Cause

Enumeration of failure causes.

Enums
CAUSE_UNSPECIFIED Default value: Don't use; amounts to an "unknown error"
SLOT_UNAVAILABLE The referenced availability slot is not available any longer.
SLOT_ALREADY_BOOKED_BY_USER The user has already booked an appointment for the referenced availability slot.
LEASE_EXPIRED The lease (if provided) has expired and cannot be used any longer to complete the requested booking.
OUTSIDE_CANCELLATION_WINDOW The requested cancellation cannot be performed at the current time due to time restrictions in the merchant's cancellation policy.
PAYMENT_ERROR_CARD_TYPE_REJECTED An error was encountered while processing the payment because the provided credit card type was not accepted by the merchant. The credit card type must be supplied in rejectedCardType.
PAYMENT_ERROR_CARD_DECLINED An error was encountered while processing the payment because the provided credit card was declined.
PAYMENT_OPTION_NOT_VALID An error was encountered with the pack/membership used to pay for the booking. There could be no valid uses left, it could have expired, etc.
PAYMENT_ERROR An error was encountered while processing the payment for this booking. Use this value to indicate a general payment related error, only if the error does not match to a specific payment error above.
USER_CANNOT_USE_PAYMENT_OPTION User cannot use the given payment option (e.g. user trying to use a first time price for the second time).
BOOKING_ALREADY_CANCELLED A booking that the user tried to cancel has already been cancelled.
BOOKING_NOT_CANCELLABLE A booking that the user tried to cancel is not cancellable.
OVERLAPPING_RESERVATION User has an existing reservation too close to this time.
USER_OVER_BOOKING_LIMIT Booking failed due to the user being over the aggregator's per-user bookings limit.
PAYMENT_REQUIRES_3DS1

Set when payment is rejected because you are requesting that the transaction be tried again, but this time after undergoing 3DS1 challenge/response. Note that the current transaction's failure state will stay failed. The retry will be completely separate.

When this is the failure reason, paymentFailure.3DS1_parameters MUST be set. If it is not, then the current cause will be treated as if it were PAYMENT_ERROR.

PaymentFailureInformation

Information about payment failures.

JSON representation
{
  "threeds1Parameters": {
    object (ThreeDS1Parameters)
  }
}
Fields
threeds1Parameters

object (ThreeDS1Parameters)

Parameters used by a RwG aggregator to initiate a 3DS1 authentication protocol with the user. Will be ignored unless BookingFailure.cause is set to PAYMENT_REQUIRES_3DS1.

ThreeDS1Parameters

Parameters requesting that RwG perform a 3DS1 challenge.

The parameters are set by EMVCo's description of the 3DS1 protocol.

JSON representation
{
  "acsUrl": string,
  "paReq": string,
  "transactionId": string,
  "mdMerchantData": string
}
Fields
acsUrl

string

The URL from which to load a form to present to the User for authentication.

paReq

string

A PaymentAuthentication Request. To be posted to the ACSUrl form if supplied.

transactionId

string

An identifier used by the ACS provider. To be posted to the ACSUrl form if supplied.

mdMerchantData

string

Merchant data. To be posted to the ACSUrl form if supplied.