Traveloka 3.3 Booking - Issue API

The 3.3 Booking - Issue API from Traveloka — 1 operation(s) for 3.3 booking - issue.

Operations 1

POST /issue Issue a booking #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/traveloka-3-3-booking-issue-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

traveloka-3-3-booking-issue-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Traveloka Atlas 3.3 Booking - Issue API
  version: ''
  description: "Traveloka Specification API for Accommodation Provider\n\n**General Notes**\n* Please ensure that the endpoint is configured to connect using **HTTPS via port 443.**\n* For fields with type \"String\", if there's no value, do not return empty string (e.g. \"\"), instead do not return the field at all\n\nThis API uses custom Basic Authentication.\n\nHow to get a token:\n- Combine username and password using a colon: [username:password]\n- Encode that using Base64\n- Example:\n  ```\n  echo -n 'user:pass' | base64\n  -> dXNlcjpwYXNz\n  ```\n\nThen use:\n```\nAuthorization: Basic dXNlcjpwYXNz\n```\n"
servers:
- url: http://localhost:8080
  description: Generated server url
security: []
tags:
- name: 3.3 Booking - Issue
paths:
  /issue:
    post:
      tags:
      - 3.3 Booking - Issue
      summary: Issue a booking
      description: This operation is for Traveloka to request to proceed to issue.
      operationId: issue
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IssueRequest'
            examples:
              Single room issue with special request:
                summary: Issue a single room booking with a special request.
                description: Single room issue with special request
                value:
                  requestId: c2a50648-abb7-45b0-af10-9af4e5bbcfee
                  hotelBooking:
                    bookingToken: DHB170816104137188
                    uniqueId: '20170816367483811'
                    providerHotelId: '1058'
                    hotelRatePlanType: RETAIL
                    rooms:
                    - providerHotelRoomId: '123'
                      availabilityToken: ROOM12345
                      perRoomBookedRate:
                        currency: USD
                        fees: 20
                        taxes: 10
                        totalFare: 150
                      guestInfo:
                        numAdults: 1
                        numChildren: 0
                      guests:
                      - firstName: John
                  specialRequest: 1 Large Bed
                  creditCardInfo:
                    id: 123456
                    ccNum: '2234567811234423'
                    ccType: VISA
                    securityCode: '335561'
                    validMonth: 12
                    validYear: 2019
                    creditCardHolderName:
                      firstName: SHANNI
                      lastName: ZHAO
                  locale: en_ID
              Multiple room issue:
                summary: Issue a booking for multiple rooms.
                description: Multiple room issue
                value:
                  requestId: c2a50648-abb7-45b0-af10-9af4e5bbcfee
                  hotelBooking:
                    bookingToken: DHB170816104137188
                    uniqueId: '20170816367483811'
                    providerHotelId: '1058'
                    hotelRatePlanType: RETAIL
                    rooms:
                    - providerHotelRoomId: '123'
                      availabilityToken: ROOM12345
                      perRoomBookedRate:
                        currency: USD
                        fees: 20
                        taxes: 10
                        totalFare: 150
                      guestInfo:
                        numAdults: 1
                        numChildren: 0
                      guests:
                      - firstName: John
                    - providerHotelRoomId: '123'
                      availabilityToken: ROOM12345
                      perRoomBookedRate:
                        currency: USD
                        fees: 20
                        taxes: 10
                        totalFare: 150
                      guestInfo:
                        numAdults: 1
                        numChildren: 0
                      guests:
                      - firstName: John
                  creditCardInfo:
                    id: 123456
                    ccNum: '2234567811234423'
                    ccType: VISA
                    securityCode: '335561'
                    validMonth: 12
                    validYear: 2019
                    creditCardHolderName:
                      firstName: SHANNI
                      lastName: ZHAO
                  locale: en_ID
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueResponse'
              examples:
                Success:
                  summary: Issue created success
                  description: Success
                  value:
                    requestId: c2a50648-abb7-45b0-af10-9af4e5bbcfee
                    booking:
                      issuanceId: DHB170816104137188
                      uniqueId: 21323112-0
                      sourceProvider: Travel Travel
                      providerHotelId: '123123123'
                      hotelRatePlanType: RETAIL
                      rooms:
                      - providerHotelRoomId: '1234567890'
                        availabilityToken: ROOM12345
                        hotelRoomBookingId: string
                        numOfRemainingRooms: 2
                        refundable: true
                        mealPlan:
                          code: RO
                          pax:
                            adults: 2
                            children: 1
                        cancellationPolicy:
                          cancellationPolicyDescription: string
                          providerCancellationPolicyInfoList:
                          - cancelDateTime: '2018-08-27T00:00:00.000+08:00'
                            cancellationFee: 120
                            currency: USD
                            nightCount: 0
                        noShowPolicy:
                          noShowDateTime: '2018-08-27T00:00:00.000+08:00'
                          noShowFee: 120
                          currency: USD
                          nightCount: 1
                        ccGuaranteeRequirement:
                          ccRequired: true
                          cvvRequired: true
                          addressRequired: true
                          csTokenRequired: false
                          supportedCCTypes:
                          - VISA
                        perRoomBookedRate:
                          currency: IDR
                          totalFare: 1000000
                          taxes: 100000
                          fees: 50000
                        perRoomBookedRateInfo:
                          fees:
                          - description: string
                            amount: 0.1
                          taxes:
                          - description: string
                            amount: 0.1
                          surcharges:
                          - description: string
                            amount: 0.1
                        additionalFees:
                          mandatoryFee: 5
                          mandatoryTax: 5
                          resortFee: 5
                          countryTaxFee: 5
                        guestInfo:
                          numAdults: 2
                          numChildren: 1
                          childrenAges:
                          - 5
                          - 8
                        promoIds:
                        - string
                        promoDescription: string
                    status: OK
                    failureReason: UNKNOWN
                    hotelContact:
                      phones:
                      - '+62123456789'
                      - '+628123456789'
                      faxes:
                      - '+62123456789'
                      - '+628123456789'
                      emails:
                      - hotel@traveloka.com
                      - hotel_operation@traveloka.com
                    errors: []
                Failed Issuance:
                  summary: Failed to issue a booking
                  description: Failed Issuance
                  value:
                    requestId: c2a50648-abb7-45b0-af10-9af4e5bbcfee
                    status: FAILED
                    error:
                      errorId: DUPLICATE_BOOKING
                      errorMessage: Booking is duplicated
                    booking:
                      issuanceId: DHB170816104137188
                      uniqueId: 21323112-0
                      sourceProvider: Travel Travel
                      providerHotelId: '123123123'
                      hotelRatePlanType: RETAIL
                      rooms:
                      - providerHotelRoomId: '1234567890'
                        availabilityToken: ROOM12345
                        hotelRoomBookingId: string
                        numOfRemainingRooms: 2
                        refundable: true
                        mealPlan:
                          code: RO
                          pax:
                            adults: 2
                            children: 1
                        cancellationPolicy:
                          cancellationPolicyDescription: string
                          providerCancellationPolicyInfoList:
                          - cancelDateTime: '2018-08-27T00:00:00.000+08:00'
                            cancellationFee: 120
                            currency: USD
                            nightCount: 0
                        noShowPolicy:
                          noShowDateTime: '2018-08-27T00:00:00.000+08:00'
                          noShowFee: 120
                          currency: USD
                          nightCount: 1
                        ccGuaranteeRequirement:
                          ccRequired: true
                          cvvRequired: true
                          addressRequired: true
                          csTokenRequired: false
                          supportedCCTypes:
                          - VISA
                        perRoomBookedRate:
                          currency: IDR
                          totalFare: 1000000
                          taxes: 100000
                          fees: 50000
                        perRoomBookedRateInfo:
                          fees:
                          - description: string
                            amount: 0.1
                          taxes:
                          - description: string
                            amount: 0.1
                          surcharges:
                          - description: string
                            amount: 0.1
                        additionalFees:
                          mandatoryFee: 5
                          mandatoryTax: 5
                          resortFee: 5
                          countryTaxFee: 5
                        guestInfo:
                          numAdults: 2
                          numChildren: 1
                          childrenAges:
                          - 5
                          - 8
                        promoIds:
                        - string
                        promoDescription: string
                    failureReason: PROCESS_FAIL
                    hotelContact:
                      phones:
                      - '+62123456789'
                      - '+628123456789'
                      faxes:
                      - '+62123456789'
                      - '+628123456789'
                      emails:
                      - hotel@traveloka.com
                      - hotel_operation@traveloka.com
                    errors:
                    - errorId: '3000'
                      errorSeverity: HIGH
                      errorMessage: UNEXPECTED_ERROR
                      timeStamp: '1763621523000'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueErrorResponse'
              examples:
                Error 400 example:
                  summary: This example is using INVALID_REQUEST_FIELD error
                  description: Error 400 example
                  value:
                    requestId: requestId
                    status: FAILED
                    error:
                      errorId: INVALID_REQUEST_FIELD
                      errorMessage: Invalid request field
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueErrorResponse'
              examples:
                Error 401 example:
                  summary: This example is using AUTHENTICATION_FAILED error
                  description: Error 401 example
                  value:
                    requestId: requestId
                    status: FAILED
                    error:
                      errorId: AUTHENTICATION_FAILED
                      errorMessage: Authentication failed
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueErrorResponse'
              examples:
                Error 429 example:
                  summary: This example is using TOO_MANY_REQUESTS error
                  description: Error 429 example
                  value:
                    requestId: requestId
                    status: FAILED
                    error:
                      errorId: TOO_MANY_REQUESTS
                      errorMessage: Too many requests
        '500':
          description: Something went wrong
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueErrorResponse'
              examples:
                Error 500 example:
                  summary: This example is using UNKNOWN_SERVER_ERROR error
                  description: Error 500 example
                  value:
                    requestId: requestId
                    status: FAILED
                    error:
                      errorId: UNKNOWN_SERVER_ERROR
                      errorMessage: Unknown server error
      servers:
      - url: http://localhost:8080
        description: Generated server url
components:
  schemas:
    ProviderError:
      required:
      - errorId
      - errorMessage
      type: object
      properties:
        errorId:
          type: string
          description: "    MANDATORY if has error(s).\n    The values for errorId and the message are:\n    3017 -> BOOKING_ALREADY_ISSUED\n    3018 -> BOOKING_CANCELED\n    3006 -> BOOKING_EXPIRED\n    3016 -> FAILED_TO_CONFIRM_BOOKING\n    3003 -> INCORRECT_BOOKING_ID\n    3001 -> INCORRECT_BOOKING_INFORMATION\n    3020 -> PENDING_BOOKING\n    3000 -> UNEXPECTED_ERROR\n"
        errorSeverity:
          type: string
          description: 'Should be one of these:

            LOW, HIGH, HIGHEST

            '
          enum:
          - LOW
          - HIGH
          - HIGHEST
        errorMessage:
          type: string
          description: "    MANDATORY if has error(s).\n    The values for errorId and the message are:\n    3017 -> BOOKING_ALREADY_ISSUED\n    3018 -> BOOKING_CANCELED\n    3006 -> BOOKING_EXPIRED\n    3016 -> FAILED_TO_CONFIRM_BOOKING\n    3003 -> INCORRECT_BOOKING_ID\n    3001 -> INCORRECT_BOOKING_INFORMATION\n    3020 -> PENDING_BOOKING\n    3000 -> UNEXPECTED_ERROR\n"
        timestamp:
          type: string
          description: Timestamp of the error occurrence in unix milliseconds time format
      deprecated: true
    IssueResponse:
      required:
      - booking
      - status
      type: object
      properties:
        requestId:
          type: string
          description: Request ID
          example: c2a50648-abb7-45b0-af10-9af4e5bbcfee
        booking:
          allOf:
          - $ref: '#/components/schemas/HotelBookingResponse'
          - description: Booking details
        status:
          type: string
          description: "    Should be one of these:\n\n    OK -> return OK to indicate a successful issue request\n\n    FAILED -> return FAILED if there's an error during processing the request\n\n    ALREADY_ISSUED -> return ALREADY_ISSUED if the unique ID already issued and the payment has already been processed\n\n    PENDING -> return PENDING if you are unable to confirm that the process will be completed within one minute. We will retry the Issue Check API call\n\n    PRICE_CHANGED -> return PRICE_CHANGED if there has been a change in the room rate, whether it has increased or decreased. We will retry the Issue Check API call\n"
          enum:
          - OK
          - FAILED
          - ALREADY_ISSUED
          - PRICE_CHANGED
          - PENDING
        failureReason:
          type: string
          description: MANDATORY if issueRS status = FAILED.
          deprecated: true
          enum:
          - PROCESS_FAIL
          - CREDIT_CARD_FAIL
          - SOLD_OUT
          - INTERNAL_ERROR
          - INCORRECT_BOOKING_DATA
          - UNKNOWN
        hotelContact:
          $ref: '#/components/schemas/IssueHotelContact'
        error:
          allOf:
          - $ref: '#/components/schemas/Error'
          - description: For complete error enums, please check on FAQ > Error Object
        errors:
          type: array
          description: Mandatory if status = FAILED.
          deprecated: true
          items:
            $ref: '#/components/schemas/ProviderError'
    IssueRequest:
      required:
      - hotelBooking
      type: object
      properties:
        requestId:
          type: string
          description: Request ID
          example: c2a50648-abb7-45b0-af10-9af4e5bbcfee
        hotelBooking:
          allOf:
          - $ref: '#/components/schemas/HotelBookingRequest'
          - description: Booking details
        creditCardInfo:
          allOf:
          - $ref: '#/components/schemas/CreditCardInfo'
          - description: Credit card information
        locale:
          type: string
          description: Locale
          example: en_ID
    MealPlan:
      required:
      - code
      - pax
      type: object
      properties:
        code:
          type: string
          description: Mealplan codes. See FAQ - Mealplan for all available enums.
          example: RO
          enum:
          - RO
          - BF
          - LU
          - DI
          - HB
          - HB_BF_LU
          - HB_BF_DI
          - HB_LU_DI
          - FB
          - AI
        pax:
          $ref: '#/components/schemas/PiMealPlanPax'
      description: Meal plan for this room, e.g. if the booking is for 2 rooms 3 night, the mealPlan should cover for 1 room 1 night
    PayAtPropertyNoShowPolicy:
      type: object
      properties:
        noShowDateTime:
          type: string
          description: "  Time to considered as no show.\n  The allowed format is YYYY-MM-DDThh:mm:ss.nnnZ.\n"
          example: '1970-01-01T00:00:00.000Z'
        noShowFee:
          type: number
          description: No show fee.
          format: double
          example: 120
        currency:
          type: string
          description: Currency info
          example: USD
        nightCount:
          type: integer
          description: 'No show fee in room night.

            Example: nightCount = 1 means cancellation fee is one room night.

            This field is not mandatory if @noShowFee already filled in.

            But if @nightCount is filled in, @noShowFee MUST also be filled in.'
          format: int32
          example: 1
    HotelCancellationPolicy:
      type: object
      properties:
        cancellationPolicyDescription:
          type: string
          description: Description for cancellation policy
        providerCancellationPolicyInfoList:
          type: array
          description: List of cancellation policy information
          items:
            $ref: '#/components/schemas/HotelCancellationPolicyInfo'
    HotelBookingResponse:
      required:
      - issuanceId
      - providerHotelId
      - rooms
      - sourceProvider
      - uniqueId
      type: object
      properties:
        issuanceId:
          type: string
          description: Id to identify this issuance, generated by provider (itinerary ID)
          example: DHB170816104137188
        uniqueId:
          type: string
          description: The Traveloka id that is associated with this booking
          example: 21323112-0
        sourceProvider:
          type: string
          description: This is will be printed on voucher which will be read by the hotel receptionist/ops
          example: Travel Travel
        providerHotelId:
          type: string
          description: Hotel Id
          example: '123123123'
        hotelRatePlanType:
          type: string
          description: Rate plan type
          enum:
          - RETAIL
          - MOBILE
          - PRIVATESALE
          - LAST_MINUTE
          - BUDGET_ROOMS
          - PACKAGE
          - CAMPAIGN
          - CROSS_SELL
          - CORPORATE
          - STATIC
          - GROWTH_MARKET
        rooms:
          type: array
          description: List of rooms in the booking
          items:
            $ref: '#/components/schemas/HotelBookingRoomResponse'
    CreditCardHolderAddress:
      type: object
      properties:
        address:
          type: string
        countryCode:
          type: string
        city:
          type: string
        postalCode:
          type: string
    HotelBookingGuest:
      required:
      - firstName
      type: object
      properties:
        firstName:
          type: string
          description: First name of the guest
          example: John
        lastName:
          type: string
          description: Last name of the guest
          example: Doe
        title:
          type: string
          description: Title of the guest
          enum:
          - MR
          - MRS
          - MISS
          - OTHERS
        passportNo:
          type: string
          description: Passport number of the guest
          example: A12345678
        passportCountryCode:
          type: string
          description: Country code of the passport
          example: ID
      description: 'In the guest node, the following information must be included: firstName, lastName.'
    AdditionalFees:
      type: object
      properties:
        mandatoryFee:
          allOf:
          - $ref: '#/components/schemas/ChargeItem'
          - description: Mandatory fees are collected by the property at check-in or check-out.
        mandatoryTax:
          allOf:
          - $ref: '#/components/schemas/ChargeItem'
          - description: Mandatory taxes are collected by the property at check-in or check-out.
        resortFee:
          allOf:
          - $ref: '#/components/schemas/ChargeItem'
          - description: Resort fees are charged for amenities and extras and collected by the property at check-in or check-out.
        countryTaxFee:
          allOf:
          - $ref: '#/components/schemas/ChargeItem'
          - description: Country tax fee is collected by the property at check-in or check-out.
    ChargeItem:
      required:
      - amount
      - currency
      type: object
      properties:
        currency:
          type: string
          description: Currency of the charge item, e.g., USD, IDR
          example: USD
        amount:
          type: number
          description: Amount of the charge item
          format: double
          example: 100
    HotelBookingRequest:
      required:
      - bookingToken
      - providerHotelId
      - rooms
      - uniqueId
      type: object
      properties:
        bookingToken:
          type: string
          description: Token returned in book response
          example: DHB170816104137188
        uniqueId:
          type: string
          description: The Traveloka id that is associated with this booking
          example: 21323112-0
        providerHotelId:
          type: string
          description: Hotel Id
          example: '123123123'
        hotelRatePlanType:
          type: string
          description: Rate plan type
          enum:
          - RETAIL
          - MOBILE
          - PRIVATESALE
          - LAST_MINUTE
          - BUDGET_ROOMS
          - PACKAGE
          - CAMPAIGN
          - CROSS_SELL
          - CORPORATE
          - STATIC
          - GROWTH_MARKET
        specialRequest:
          type: string
          description: Special Request (if any)
          example: Late check-in
        rooms:
          type: array
          description: List of rooms in the booking
          items:
            $ref: '#/components/schemas/HotelBookingRoomRequest'
    HotelRoomRate:
      required:
      - currency
      - fees
      - taxes
      - totalFare
      type: object
      properties:
        currency:
          type: string
          description: Currency code, e.g. IDR, USD
          example: IDR
        totalFare:
          type: number
          description: Total fare (including taxes, fees, and commission). If two rooms are requested in the specs, this totalFare will be for two rooms.
          format: double
          example: 1000000
        taxes:
          type: number
          description: Total taxes amount
          format: double
          example: 100000
        fees:
          type: number
          description: Total fees amount
          format: double
          example: 50000
    HotelRoomCCGuaranteeRequirementInfo:
      required:
      - addressRequired
      - ccRequired
      - cvvRequired
      type: object
      properties:
        ccRequired:
          type: boolean
          description: Indicates if credit card information is required for guarantee
          example: true
        cvvRequired:
          type: boolean
          description: Indicates if CVV is required for the credit card
          example: true
        addressRequired:
          type: boolean
          description: Indicates if address is required for the credit card
          example: true
        csTokenRequired:
          type: boolean
          description: Indicates if a Cybersource token is required, meaning raw credit card data is not needed
          example: false
        supportedCCTypes:
          type: array
          description: List of supported credit card types
          items:
            type: string
            description: List of supported credit card types
            enum:
            - VISA
            - MASTER_CARD
            - AMERICAN_EXPRESS
            - JAPAN_CREDIT_BUREAU
            - BC_CARD
            - DISCOVER
            - MAESTRO
            - DINERS_CLUB
            - CARTA_SI
            - CARTE_BLEUE
            - VISA_ELECTRON
            - CHINA_UNION_PAY
      description: Credit card guarantee requirement for this room
    HotelRoomRateInfo:
      type: object
      properties:
        fees:
          type: array
          description: List of fees associated with the hotel rate
          items:
            $ref: '#/components/schemas/HotelFee'
        taxes:
          type: array
          description: List of taxes associated with the hotel rate
          items:
            $ref: '#/components/schemas/HotelFee'
        surcharges:
          type: array
          description: List of surcharges associated with the hotel rate
          items:
            $ref: '#/components/schemas/HotelFee'
    CreditCardHolderName:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
    CreditCardInfo:
      type: object
      properties:
        id:
          type: integer
          format: int64
        ccNum:
          type: string
        securityCode:
          type: string
        ccType:
          type: string
          enum:
          - VISA
          - MASTER_CARD
          - AMERICAN_EXPRESS
          - JAPAN_CREDIT_BUREAU
          - BC_CARD
          - DISCOVER
          - MAESTRO
          - DINERS_CLUB
          - CARTA_SI
          - CARTE_BLEUE
          - VISA_ELECTRON
          - CHINA_UNION_PAY
        validMonth:
          type: integer
          format: int32
        validYear:
          type: integer
          format: int32
        creditCardHolderName:
          $ref: '#/components/schemas/CreditCardHolderName'
        ccHolderAddress:
          $ref: '#/components/schemas/CreditCardHolderAddress'
        phoneNum:
          type: string
        desc:
          type: string
        fulfillmentPaymentId:
          type: string
        additionalData:
          type: object
          additionalProperties:
            type: string
    HotelBookingRoomRequest:
      required:
      - availabilityToken
      - guestInfo
      - guests
      - perRoomBookedRate
      - providerHotelRoomId
      type: object
      properties:
        providerHotelRoomId:
          type: string
          description: Provider hotel room id
          example: '1234567890'
        availabilityToken:
          type: string
          description: "Token/ID for this room type/price. This is passed from room list search request. \nAvailability token does not depend on the number of rooms"
          example: DHB170816104137188
        ccGuaranteeRequirement:
          allOf:
          - $ref: '#/components/schemas/HotelRoomCCGuaranteeRequirementInfo'
          - description: Credit card guarantee requirement for this room
        perRoomBookedRate:
          allOf:
          - $ref: '#/components/schemas/HotelRoomRate'
          - description: Per room booked rate
        perRoomBookedRateInfo:
          allOf:
          - $ref: '#/components/schemas/HotelRoomRateInfo'
          - description: Per room booked rate info
        guestInfo:
          allOf:
          - $ref: '#/components/schemas/HotelGuestInfo'
          - description: Guest information for this booking
        guests:
          type: array
          description: 'In the guest node, the following information must be included: firstName, lastName.'
          items:
            $ref: '#/components/schemas/HotelBookingGuest'
        promoIds:
          type: array
          description: Promotion id
          items:
            type: string
            description: Promotion id
        promoDescription:
          type: string
          description: Promotion description
    HotelGuestInfo:
      required:
      - numAdults
      - numChildren
      type: object
      properties:
        numAdults:
          type: integer
          description: Number of adults (total adults per booking, not total adult per room)
          format: int32
          example: 2
        numChildren:
          type: integer
          description: Number of children (per booking, not per room)
          format: int32
          example: 1
        childrenAges:
          type: array
          description: Mandatory if numChildren > 0
          example:
          - 5
          - 8
          items:
            type: integer
            description: Mandatory if numChildren > 0
            format: int32
      description: Guest information for this booking
    IssueErrorResponse:
      required:
      - error
      - failureReason
      - status
      type: object
      properties:
        requestId:
          type: string
          description: Request ID
          example: c2a50648-abb7-45b0-af10-9af4e5bbcfee
        status:
          type: string
          description: "    Should be one of these:\n\n    FAILED -> return FAILED if there's an error during processing the request\n"
          example: FAILED
          enum:
          - FAILED
        failureReason:
          type: string
          description: MANDATORY if issueRS status = FAILED.
          deprecated: true
          enum:
          - PROCESS_FAIL
          - CREDIT_CARD_FAIL
          - SOLD_OUT
          - INTERNAL_ERROR
          - INCORRECT_BOOKING_DATA
          - UNKNOWN
        error:
          allOf:
          - $ref: '#/components/schemas/Error'
          - description: For complete error enums, please check on FAQ > Error Object
        errors:
          type: array
          description: MANDATORY if the issuance has error(s).
          deprecated: true
          items:
            $ref: '#/components/schemas/ProviderError'
    IssueHot

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/traveloka/refs/heads/main/openapi/traveloka-3-3-booking-issue-api-openapi.yml