Skip to main content
POST
/
v1
/
brands
/
{brandId}
/
book-bulk
Book multiple experiences
curl --request POST \
  --url https://api.letsway.com/v1/brands/{brandId}/book-bulk \
  --header 'Content-Type: application/json' \
  --data '
{
  "data": [
    {
      "sessionTime": "<string>",
      "participants": [
        {
          "firstName": "<string>",
          "lastName": "<string>",
          "priceTierName": "<string>",
          "emailAddress": "<string>",
          "phoneNumber": "<string>",
          "customQuestionResponses": [
            {
              "questionId": "<string>",
              "answer": [
                {
                  "value": "<string>",
                  "key": "<string>"
                }
              ]
            }
          ]
        }
      ],
      "mode": "private",
      "experienceId": "<string>",
      "sessionDuration": 123,
      "couponCode": "<string>",
      "discountAmount": 123,
      "discountPercentage": 123,
      "accessCode": "<string>",
      "notes": "<string>",
      "metadata": {},
      "internalNotes": "<string>",
      "listingAddOns": [],
      "appliedCreditCodes": [
        {
          "code": "<string>",
          "appliedValue": 123,
          "sequence": 123
        }
      ],
      "intendedConfirmationCode": "<string>",
      "waitlistEntryId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "resourceGroupId": "<string>",
      "resourceQuantity": 123,
      "additionalCustomQuestionResponses": [
        {
          "questionId": "<string>",
          "answer": [
            {
              "value": "<string>",
              "key": "<string>"
            }
          ],
          "answerId": "<string>"
        }
      ]
    }
  ],
  "purchaser": {
    "firstName": "<string>",
    "lastName": "<string>",
    "emailAddress": "<string>",
    "phoneNumber": "<string>",
    "customQuestionResponses": [
      {
        "questionId": "<string>",
        "answer": [
          {
            "value": "<string>",
            "key": "<string>"
          }
        ]
      }
    ]
  },
  "loyaltyProgramData": {
    "loyaltyProgramId": "<string>",
    "memberId": "<string>"
  },
  "paymentMethod": "credit-card",
  "paymentDetail": {
    "lastName": "<string>",
    "methodNumber": "<string>",
    "pmsType": "opera",
    "reservationId": 123,
    "confirmationId": "<string>",
    "collectionDetail": "<string>"
  },
  "bookingScriptUrl": "<string>",
  "externalAnalyticsUserId": "<string>",
  "siteLanguage": "<string>",
  "deviceType": "pc",
  "cartId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "sendEmail": true
}
'
{
  "subjectId": "subject-123",
  "subjectType": "booking",
  "confirmationCode": "CONFIRM12345",
  "amount": 150.75,
  "currency": "USD",
  "clientSecret": "sk_test_4eC39Hq...",
  "metadata": {
    "transactionId": "txn-789"
  }
}

Headers

Authorization
string

Body

application/json
data
object[]
required
purchaser
object
required
loyaltyProgramData
object
paymentMethod
enum<string>
Available options:
credit-card,
room-charge,
member-number,
loyalty,
kicc,
cash,
pay-later,
pay-upon-arrival
paymentDetail
object
bookingScriptUrl
string<uri>
externalAnalyticsUserId
string
siteLanguage
string
deviceType
enum<string>
Available options:
pc,
mobile
cartId
string<uuid>
sendEmail
boolean

Response

201 - application/json

Booking details

subjectId
string
required

The unique identifier of the payment subject

Example:

"subject-123"

subjectType
string
required

The type of the subject related to the payment

Example:

"booking"

confirmationCode
string
required

Confirmation code for the payment

Example:

"CONFIRM12345"

amount
number
required

Amount charged for the payment

Example:

150.75

currency
string
required

Currency of the transaction

Example:

"USD"

clientSecret
object

Client secret for authentication

Example:

"sk_test_4eC39Hq..."

metadata
object

Additional metadata related to the payment

Example:
{ "transactionId": "txn-789" }