Cvent Event Cloud Travel Suppliers API

The Travel Supplier APIs provide access to Cvent data related to hotels, apartments, and other travel providers. This includes information related to properties, and sleeping rooms.

Operations 8

GET /travel-suppliers/brands List Supplier Brands #
GET /travel-suppliers/brands/{brandId} Get Supplier Brand #
GET /travel-suppliers/chains List Supplier Chains #
GET /travel-suppliers/chains/{chainId} Get Supplier Chain #
GET /travel-suppliers/properties List Supplier Properties #
GET /travel-suppliers/properties/{propertyId} Get Supplier Property #
GET /travel-suppliers/property-rooms List Supplier Property Rooms #
GET /travel-suppliers/property-rooms/{roomId} Get Supplier Property Room #

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/cvent-event-cloud-travel-suppliers-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

cvent-event-cloud-travel-suppliers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cvent REST Travel Suppliers API
  description: "# Introduction\nThe Cvent API Platform is built around REST. We aim to provide intuitive endpoints that can be easily\ndiscovered to help leverage the Cvent platform for your event needs. The RESTful APIs outlined here\nuse JSON-encoded request and response format, along with HTTP codes, to convey processing status of\nrequests received. The Cvent resources are protected using OAuth2.\n\n# Getting Started\n\nIf you're new to the Cvent API Platform, start by reading our\n[Developer Quickstart](https://developers.cvent.com/docs/rest-api/tutorials/developer-quickstart) guide. This will\ngive you an overview of how to authenticate and make requests using our APIs.\n\n## Authentication\n\nThe Cvent REST API uses [OAuth2](https://oauth.net/2/) to authorize requests to the platform. The client\ncredentials authorization flow is supported.\n\n<a name=\"oauth2-auth-code-planner-admin\"></a>\n\nAuthorization code flow is only supported for planner users with the administrator role in Cvent. Developer users\ncannot use authorization code flow.\n\n<!-- ReDoc-Inject: <security-definitions> -->\n\nHere's an example of using client credential flow to authorize. You'll supply your application's id and secret to\nmake a [Token](#operation/oauth2Token) request.\n\n```bash\ncurl --location --request POST '{hostName}/{version}/oauth2/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--header 'Authorization: Basic {api_credentials}' \\\n--data-urlencode 'grant_type=client_credentials' \\\n--data-urlencode 'client_id={client_id}'\n```\n\n| Key               | Description                                          | Value                                                                                                        |\n| :---------------- | :--------------------------------------------------- | :----------------------------------------------------------------------------------------------------------- |\n| {hostName}        | https://api-platform.cvent.com                       | Location if your account is in the North American datacenter.                                                |\n|                   | https://api-platform-eur.cvent.com                   | Location if your account is in the European data center.                                                     |\n| {version}         | ea                                                   | The version of the API you're using. Only `ea` is currently supported.                                       |\n| {api_credentials} | {client_id}:{client_secret} in base64 encoded format | Supply your client id & client credentials in a base 64 encoded format.                                      |\n| {client_id}       | Retrieved from your application                      | Your application's client id.                                                                                |\n| {client_secret}   | Retrieved from your application                      | Your application's client secret.                                                                            |\n\nOn a successful call, you'll receive the following response:\n\n```json\n{\n  \"access_token\": \"{accessToken}\",\n  \"expires_in\": 3600,\n  \"token_type\": \"Bearer\"\n}\n```\n\nThis bearer token is valid for 3600 seconds (60 minutes) and must be used in subsequent calls.\n\n## Endpoints\n\nEndpoints start with `hostName` and `version`.\n\nThe `hostname` will depend on the region that your Cvent account is hosted in. Please see the table\nbelow to identify which hostname you should be using.\n\n| Region        |\tHostname                           |\n|:--------------|:-----------------------------------|\n| North America\t| https://api-platform.cvent.com     |\n| Europe        | https://api-platform-eur.cvent.com |\n\nThe current `version` of the Cvent API is `ea`.\n\n## Rate Limits\n\nCvent APIs enforce rate limits to ensure platform stability. Your limits depend on your tier: Free,\nStandard, or Premium.\n\n<br />\n\n### Usage Tiers\n\n| Tier     | Daily Calls | Calls per Second | Max Burst |\n| -------- | ----------- | ---------------- | --------- |\n| Free     | 1,000       | 2                | 1         |\n| Standard | 15,000      | 10               | 10        |\n| Premium  | 500,000     | 25               | 25        |\n\n- **Daily calls** define how many requests you can make in a 24-hour period. Quota\n  resets at 12 midnight (+0 GMT).\n- **Calls per second** define how many requests you can make in a 1-second window.\n- **Max Burst** defines how many requests you can make at once.\n\nIf you are unsure what usage tier applies to your account, you can check via\n[Get Current Usage Tier](#operation/getUsageTier).\n\nPlease note that these limits may change as the Cvent API Platform evolves.\n\n<br />\n\n### Handling Rate Limits\n\nSometimes, you may exceed your rate limits. When this happens, the API will return a `429 Too Many Requests`. See\n[handling rate limits](https://developers.cvent.com/docs/rest-api/guides/handling-rate-limits) for best practices on how to handle this.\n\n## Pagination\n\nSome APIs use pagination to manage records. Each page of records has a token associated to identify it.\n\nIf an API uses pagination, you’ll find up to three tokens in the response:\n- **currentToken**: Describes the token of the current page.\n- **nextToken**: Provides a token for the next page of records, if one exists.\n- **previousToken**: Provides a token for the previous page of records, if one exists. Not all APIs will return\n  this token.\n\nYou specify which page of records to view via the `token` parameter in your API call. To navigate through pages,\ntake the `nextToken` or `previousToken` value and pass it to your next call’s `token` parameter to get the\nrespective page of records. For example, if you made this request:\n\n```bash\ncurl -X GET {hostname}/{version}/contacts?limit=100 \\\n-H 'Accept: application/json' \\\n-H 'Authorization: Bearer {accessToken}'\n```\n\nThe response contains a paging array where you'll find the token information.\n\n```json\n{\n  \"paging\": {\n    \"currentToken\": \"90c5f062-76ad-4ea4-aa53-00eb698d9262\",\n    \"nextToken\": \"3b2359a7-4583-40ed-8afd-67e5f15373d3\",\n    \"limit\": 100,\n    \"totalCount\": 102,\n    \"_links\": {...}\n  },\n  \"data\": [...]\n}\n```\n\nTake the `nextToken` and use it in the `token` parameter on your subsequent call.\n\n```bash\ncurl -X GET {hostname}/{version}/contacts?limit=100&token=3b2359a7-4583-40ed-8afd-67e5f15373d3 \\\n-H 'Accept: application/json' \\\n-H 'Authorization: Bearer {accessToken}'\n```\n\nWhen the response doesn’t contain a `nextToken` field, you’ve reached the last page. Occasionally, you might\nencounter an empty page at the end of results. This typically happens when the results were evenly divisible.\nEnsure your client code handles the possibility of receiving an empty data array when using the `nextToken`.\n\n## Filtering\n\nUse filters to narrow down results. The filter follows the pattern\n`filter='field' comparisonType 'value'`. The value can be enclosed with single\nquotes (') or double quotes (\").\n\n```bash\nGET {hostName}/{version}/contacts?filter=lastName eq 'Smith'\n````\n\nTo correctly pass a single quote in the filter's value, use double quotes around\nthe string.\n\n```bash\nGET {hostName}/{version}/contacts?filter=lastName eq \"O'Keenan\"\n```\n\nTo correctly pass a double quote in the filter's value, use double quotes around\nthe string and add an escape character `\\` to each quote that is part of the\nstring.\n\n```bash\nGET {hostName}/{version}/events?filter=eventName eq \"\\\"Yearly\\\" Conference\"\n```\n\n## Versioning\n\nChange is inevitable in API development. Planning for it is crucial. We track\nboth backward-compatible and backward-incompatible changes.\n\n<br />\n\n### Backward Compatible Changes\n\nBackward compatible changes will be made often and are intended to avoid\nany adverse impact on our customers. It is highly advisable that when reading\nJSON payloads from Cvent, you are able to handle \"unknown\" attributes that\ncan be added over time. We consider the following changes backward-compatible:\n\n- Adding new resources\n- Adding new optional request parameters to existing operations\n- Adding new attributes to requests or responses\n- Changing the length or format (not type) of resource identifiers. For example, an ID can change from\n  \"1234/1234\" to \"1234::1234\".\n- Increasing the length of string fields\n\n<br />\n\n### Backward Incompatible Changes\n\nBackward-incompatible changes are made infrequently, however, they can be\ndisruptive to consumers. Due to this, our APIs are versioned to avoid\ndisruptions to customers. We leverage a URI-based versioning scheme,\nwhich means that a version value is included in the Cvent API URL.\nWhen breaking changes occur, a new version of the API is made available\nwhile the existing version is deprecated but remains available for a\nlimited period of time. We consider the following backward-incompatible changes:\n\n- Adding a new required parameter (query string param or payload attribute)\n- Deleting API resources\n- Deleting any attribute from API responses\n- Changing the data type on any parameter or attribute\n\n## Standards\nAs you begin working with our APIs, it's essential to be aware of standards around\ncountry codes, time formats, and other important details that ensure smooth integration.\nLearn more about our [API Standards](https://developers.cvent.com/docs/rest-api/reference/api-standards)\n"
  contact:
    name: Cvent Development Platform
    url: https://developers.cvent.com/
  version: ea
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
tags:
- name: Travel Suppliers
  description: The Travel Supplier APIs provide access to Cvent data related to hotels, apartments, and other travel providers. This includes information related to properties, and sleeping rooms.
paths:
  /travel-suppliers/brands:
    parameters: []
    get:
      description: Gets a paginated list of supplier brands.
      tags:
      - Travel Suppliers
      operationId: PropertyApiListBrands
      summary: List Supplier Brands
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-brands:read
      parameters:
      - $ref: '#/components/parameters/after'
      - $ref: '#/components/parameters/before'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      - $ref: '#/components/parameters/brand-filter'
      responses:
        '200':
          description: Successfully retrieved a paginated list of supplier brands.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/brand-paginated-response'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/brands/{brandId}:
    parameters:
    - $ref: '#/components/parameters/brandId'
    get:
      description: Get a supplier brand by brand code.
      tags:
      - Travel Suppliers
      operationId: PropertyApiGetBrand
      summary: Get Supplier Brand
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-brands:read
      parameters: []
      responses:
        '200':
          description: Successfully retrieved a brand.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/brand'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/chains:
    parameters: []
    get:
      description: Gets a paginated list of supplier chains.
      tags:
      - Travel Suppliers
      operationId: PropertyApiListChains
      summary: List Supplier Chains
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-chains:read
      parameters:
      - $ref: '#/components/parameters/after'
      - $ref: '#/components/parameters/before'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      - $ref: '#/components/parameters/chain-filter'
      responses:
        '200':
          description: Successfully retrieved a paginated list of chains.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chain-paginated-response'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/chains/{chainId}:
    parameters:
    - $ref: '#/components/parameters/chainId'
    get:
      description: Get a supplier chain by chain ID.
      tags:
      - Travel Suppliers
      operationId: PropertyApiGetChain
      summary: Get Supplier Chain
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-chains:read
      parameters: []
      responses:
        '200':
          description: Successfully retrieved a chain.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chain'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/properties:
    parameters: []
    get:
      description: Gets a paginated list of supplier properties.
      tags:
      - Travel Suppliers
      operationId: PropertyApiListProperties
      summary: List Supplier Properties
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-properties:read
      parameters:
      - $ref: '#/components/parameters/after'
      - $ref: '#/components/parameters/before'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      - $ref: '#/components/parameters/property-filter'
      responses:
        '200':
          description: Successfully retrieved a paginated list of supplier properties.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/property-paginated-response'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/properties/{propertyId}:
    parameters:
    - $ref: '#/components/parameters/propertyId1'
    get:
      description: Get a supplier property by ID.
      tags:
      - Travel Suppliers
      operationId: PropertyApiGetProperty
      summary: Get Supplier Property
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-properties:read
      parameters: []
      responses:
        '200':
          description: Successfully retrieved a property.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/property'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/property-rooms:
    parameters: []
    get:
      description: Gets a paginated list of supplier property rooms.
      tags:
      - Travel Suppliers
      operationId: BtApiGetPropertyRooms
      summary: List Supplier Property Rooms
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-property-rooms:read
      parameters:
      - $ref: '#/components/parameters/after'
      - $ref: '#/components/parameters/before'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      - $ref: '#/components/parameters/property-room-filter'
      responses:
        '200':
          description: Successfully retrieved a paginated list of property rooms.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/property-room-paginated-response'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
  /travel-suppliers/property-rooms/{roomId}:
    parameters:
    - $ref: '#/components/parameters/roomId'
    get:
      description: Read supplier property room data by room ID.
      tags:
      - Travel Suppliers
      operationId: PropertyApiGetPropertyRoom
      summary: Get Supplier Property Room
      security:
      - OAuth2.clientCredentials:
        - business-transient/supplier-property-rooms:read
      parameters: []
      responses:
        '200':
          description: Successfully retrieved a property room.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/property-room'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
components:
  schemas:
    external-code-type.json:
      title: External Code Type
      enum:
      - amadeus_gds
      - worldspan_gds
      - galileo_gds
      - sabre_gds
      - crs
      type: string
      description: Type of the external Code.
      example: amadeus
    brand-paginated-response:
      title: Brand paginated response
      description: A list of brands.
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/paging.json'
        data:
          type: array
          items:
            $ref: '#/components/schemas/brand'
          description: Collection of brands and their related details.
    brand:
      title: Brand
      description: Brand details.
      type: object
      allOf:
      - $ref: '#/components/schemas/property/allOf/0'
      properties:
        id:
          type: string
          maxLength: 16
          description: The ID of the travel supplier brand.
          example: NorthernHotels
        name:
          type: string
          description: The name of the travel supplier brand.
          maxLength: 50
          example: Northern Hotel Group
        address:
          $ref: '#/components/schemas/address.json1'
        deleted:
          type: boolean
          description: True indicates the brand is deleted.
          default: false
          example: false
          readOnly: false
    link.json:
      title: Link
      required:
      - href
      type: object
      description: Represents a link to a related resource.
      properties:
        href:
          type: string
          description: A url provided that can be followed for linking
          example: ?token=90c5f062-76ad-4ea4-aa53-00eb698d9262
    property:
      title: property
      description: Details of the property
      type: object
      allOf:
      - title: Audit
        description: Audit information
        type: object
        properties:
          created:
            type: string
            format: date-time
            description: The ISO 8601 zoned date time when this record was created.
            readOnly: true
            example: '2017-01-02T02:00:00Z'
          createdBy:
            type: string
            description: The identifier of the user that created this record.
            readOnly: true
            example: hporter
          lastModified:
            type: string
            format: date-time
            description: The ISO 8601 zoned date time when this record was updated.
            readOnly: true
            example: '2019-02-12T03:00:00Z'
          lastModifiedBy:
            type: string
            description: The identifier of the user that last updated this record.
            readOnly: true
            example: hporter
      properties:
        id:
          title: Property ID
          description: The ID of the property.
          type: string
          format: uuid
          example: 04ca6ae2-0dc3-487b-953e-86d6abbdf7d3
        name:
          type: string
          maxLength: 50
          example: The Grand Property
          description: The name of the property.
        chain:
          description: The chain that the property belongs to.
          type: object
          properties:
            id:
              title: Chain ID
              description: The ID of the chain.
              type: string
              format: uuid
              example: 415079ab-4bee-491e-84ad-c2379f840379
        brand:
          description: The brand that the property belongs to.
          type: object
          properties:
            id:
              title: Brand ID
              description: The ID of the brand.
              type: string
              example: NorthernHotels
        code:
          type: string
          maxLength: 15
          example: GH101
          description: The property code for the property.
        deleted:
          type: boolean
          description: True indicates that the property is deleted.
          default: false
          example: false
          readOnly: true
        currencyCode:
          type: string
          minLength: 3
          maxLength: 3
          default: USD
          example: USD
          description: The ISO 4217 standard format currency code specified for the property.
        address:
          $ref: '#/components/schemas/address.json1'
        externalCodes:
          type: array
          items:
            $ref: '#/components/schemas/property-external-code.json'
          description: Collection of external codes for a property. This includes GDS nd other codes used to identify a property in external systems.
          maxItems: 5
    property-room:
      title: Property Room
      description: Property room details.
      type: object
      allOf:
      - $ref: '#/components/schemas/property/allOf/0'
      properties:
        id:
          title: Property Room ID
          description: The ID of the property room.
          type: string
          format: uuid
          example: 04ca6ae2-0dc3-487b-953e-86d6abbdf7d3
        name:
          type: string
          description: The name of the property room.
          maxLength: 30
          example: Standard
        code:
          type: string
          maxLength: 6
          description: Room code of the property room.
          example: std
        property:
          description: The property that the room belongs to.
          type: object
          properties:
            id:
              title: property ID
              description: The ID of the property.
              type: string
              format: uuid
              example: 04ca6ae2-0dc3-487b-953e-86d6abbdf7d3
        deleted:
          type: boolean
          description: True indicates the property room is deleted.
          default: false
          example: false
          readOnly: true
        bedTypeCode:
          $ref: '#/components/schemas/room-bed-type.json'
        numberOfBeds:
          type: integer
          description: The number of beds in the room.
          example: 2
        capacity:
          type: integer
          description: Maximum capacity of people that can sleep in the room.
          example: 6
        description:
          type: string
          maxLength: 2000
          description: A description of the room.
          example: A standard room with two queen beds.
        externalCodes:
          type: array
          items:
            $ref: '#/components/schemas/property-room-external-code.json'
          description: Collection of external codes for the room. This includes GDS and other codes used to identify a room in external systems.
          maxItems: 5
    property-external-code.json:
      title: Property External Codes
      description: The external chain and property codes for the property
      type: object
      properties:
        type:
          $ref: '#/components/schemas/external-code-type.json'
        chainCode:
          type: string
          maxLength: 6
          example: NH
          description: The code identifying the property's chain in the given external system.
        propertyCode:
          type: string
          maxLength: 15
          example: GH1
          description: The code identifying a property in the given external system.
    property-paginated-response:
      title: Property paginated response
      description: A list of properties.
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/paging.json'
        data:
          type: array
          items:
            $ref: '#/components/schemas/property'
          description: Collection of properties and their related details.
    address.json1:
      title: Address
      description: A physical address.
      type: object
      properties:
        address1:
          description: Address line 1.
          type: string
          maxLength: 45
          example: 717 N Harwood St
        address2:
          description: Address line 2.
          type: string
          maxLength: 45
          example: Suite 2800
        city:
          description: City name.
          type: string
          maxLength: 50
          example: Dallas
        region:
          description: Region name.
          type: string
          maxLength: 50
          example: Texas
        regionCode:
          description: Region code.
          type: string
          maxLength: 3
          example: TX
        postalCode:
          description: Postal code.
          type: string
          maxLength: 16
          example: '75201'
        country:
          description: Country name.
          type: string
          maxLength: 50
          example: United States
        countryCode:
          description: ISO 3166 alpha-2 country code.
          type: string
          maxLength: 2
          minLength: 2
          example: US
    ErrorResponse:
      title: ErrorResponse
      description: Represents an error response with additional details of cascading error messages.
      allOf:
      - $ref: '#/components/schemas/ErrorResponseBase'
      type: object
      required:
      - code
      - message
      properties:
        details:
          type: array
          items:
            $ref: '#/components/schemas/ErrorResponseBase'
          description: Additional details of cascading error messages.
    property-room-external-code.json:
      title: Property Room External Code
      description: The external room codes for the room
      type: object
      properties:
        type:
          $ref: '#/components/schemas/external-code-type.json'
        roomCode:
          type: string
          maxLength: 10
          example: std887
          description: The code identifying the room in the given external system.
    chain-paginated-response:
      title: Chain paginated response
      description: A list of chains.
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/paging.json'
        data:
          type: array
          items:
            $ref: '#/components/schemas/chain'
          description: Collection of chains and their related details.
    paging.json:
      title: Paging
      required:
      - _links
      type: object
      description: Represents pagination information for a collection of resources.
      properties:
        previousToken:
          type: string
          description: The pagination token for the previous page, if one exists. You can use this token to navigate to the previous page of data.
          example: 1a2b3c4d5e6f7g8h9i10j11k
        nextToken:
          type: string
          description: The pagination token for the next page. If this value is present in the response, there is another page of data you can fetch.
          example: 1a2b3c4d5e6f7g8h9i10j11k
        currentToken:
          type: string
          description: The pagination token for the current page.
          example: 1a2b3c4d5e6f7g8h9i10j11k
        limit:
          type: integer
          description: The number of records to return on the page. Not to exceed 200.
          example: 100
        totalCount:
          type: integer
          description: The total number of records available. This field may return blank, even if there are more records. To confirm if there are more records, check the `nextToken` field.
          example: 2
        _links:
          $ref: '#/components/schemas/pagination-links.json'
    property-room-paginated-response:
      title: Property room paginated response
      description: A list of property sleeping rooms.
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/paging.json'
        data:
          type: array
          items:
            $ref: '#/components/schemas/property-room'
          description: Collection of property rooms and related details.
    room-bed-type.json:
      title: Room bed type
      enum:
      - sofa_bed
      - double
      - full
      - king
      - murphy
      - queen
      - run_of_house
      - single
      - twin
      type: string
      description: Code representing the bed type.
      example: queen
    ErrorResponseBase:
      title: ErrorResponseBase
      type: object
      description: Represents an error response with no additional details.
      required:
      - code
      - message
      properties:
        code:
          type: integer
          description: The HTTP status code representing the error.
          example: 400
        message:
          type: string
          description: A brief description of the error.
          example: Bad Request
        target:
          type: string
          description: The target resource of the error.
          example: example target
    chain:
      title: Chain
      description: Chain details.
      type: object
      allOf:
      - $ref: '#/components/schemas/property/allOf/0'
      properties:
        id:
          title: Chain ID
          description: The ID of the chain.
          type: string
          format: uuid
          example: 415079ab-4bee-491e-84ad-c2379f840379
        name:
          type: string
          description: The name of the travel supplier chain.
          maxLength: 50
          example: Northern Hotels
        code:
          type: string
          maxLength: 6
          description: The code identifying the travel supplier chain.
          example: NH
        brand:
          description: The brand that the chain belongs to.
          type: object
          properties:
            id:
              title: Brand ID
              description: The ID of the brand that the chain belongs to.
              type: string
              example: NorthernHotels
        address:
          $ref: '#/components/schemas/address.json1'
        deleted:
          type: boolean
          description: True indicates the chain is deleted.
          default: false
          example: false
          readOnly: true
    pagination-links.json:
      title: PaginationLinks


# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cvent-event-cloud/refs/heads/main/openapi/cvent-event-cloud-travel-suppliers-api-openapi.yml