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" }