CreateWaitlistEntry 方法

用戶端要求建立等候名單項目。合作夥伴後端會針對要求的商家、服務、預訂人數和使用者建立等候名單項目。合作夥伴應在成功時傳回等候名單項目 ID,或在失敗時傳回商業邏輯錯誤 (例如預訂人數超過允許上限、等候名單已滿等)。非預期錯誤應使用標準 HTTP 狀態碼傳回。

要求

CreateWaitlistEntryRequest

傳回值

CreateWaitlistEntryResponse

// Request for a user to join the waitlist.
//
// Reserve with Google may retry REST HTTP requests if no response is
// received. If the exact same CreateWaitlistEntry is received a second time,
// then the same CreateWaitlistResponse must be returned. A second waitlist
// entry must not be created.
message CreateWaitlistEntryRequest {
  // Required. Partner-provided ID for the merchant.
  string merchant_id = 1;

  // Required. Partner-provided ID for the service.
  string service_id = 2;

  // Required. The party size requested for the waitlist entry.
  int32 party_size = 3;

  // Required. Personal information of the user joining the waitlist.
  UserInformation user_information = 4;

  // A string from the user which contains any special requests or additional
  // information that they would like to notify the merchant about.
  // This will be populated when the user submits an additional request to
  // Reserve with Google. The partner can disable this functionality at the
  // service level by setting supports_additional_request to false in the
  // service feed.
  string additional_request = 5;

  // Required. Used to differentiate retries from separate requests. If the
  // exact same CreateWaitlistEntry is received a second time, (including
  // idempotency_token) then the same CreateWaitlistResponse must be returned.
  string idempotency_token = 6;
}

// Response for the CreateWaitlistEntry RPC with the waitlist entry ID or any
// failing business logic information.
message CreateWaitlistEntryResponse {
  // Unique partner-provided ID for the newly created entry in the waitlist.
  // Required if the waitlist entry was created successfully. Unique for all
  // time.
  string waitlist_entry_id = 1;
  WaitlistBusinessLogicFailure waitlist_business_logic_failure = 2;
}

CreateWaitlistEntry 範例

提出要求

{
  "idempotency_token": "14620365692592881354",
  "merchant_id": "dining-1",
  "party_size": 3,
  "service_id": "reservation",
  "user_information": {
    "family_name": "John",
    "given_name": "Smith",
    "telephone": "+81 80-1111-2222",
    "user_id": "123456789"
  }
}

建立回應

{ "waitlist_entry_id": "MYS-1668739060" }