Cvent Event Cloud Exhibitor API

* **Exhibitor -** An exhibitor is an organization that is sponsoring or exhibiting at your event. This API allows you to get information about your exhibitors. * **Registration Pack -** Registration Pack provides capacities of different registration types allocated by the planner to a specific exhibitor. * **Exhibitor Questions -** Set of questions for an exhibitor. * **Exhibitor Answers -** Set of answers to exhibitor questions for an exhibitor. * **Exhibitor Categories -** Set of exhibitor categories for an event. Exhibitor Categories are used in Attendee Hub and Event App to differentiate exhibitors. * **Sponsorship Levels -** Sponsorship levels are defined by the planner. Use this API to get details of existing sponsorship levels defined within the event. To assign sponsorship levels to exhibitors, use the Exhibitor endpoints.

OpenAPI Specification

cvent-event-cloud-exhibitor-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cvent REST APIs — Event Cloud Exhibitor API
  description: "Event Cloud scope of the Cvent REST APIs. This document is a TAG-SCOPED SUBSET of the OpenAPI specification Cvent publishes at https://github.com/cvent/rest-sdks/blob/main/cvent-public-spec/openapi.yaml (the source of truth for Cvent's official TypeScript/.NET/Java SDKs). Venue-sourcing, RFP, housing-supplier and travel-supplier tags were removed because they belong to Cvent Hospitality Cloud; every path, operation, parameter, schema and security requirement below is verbatim from Cvent's published spec.\n\n# 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: Exhibitor
  description: '* **Exhibitor -** An exhibitor is an organization that is sponsoring or exhibiting at your event. This API allows you to get information about your exhibitors.


    * **Registration Pack -** Registration Pack provides capacities of different registration types allocated by the planner to a specific exhibitor.


    * **Exhibitor Questions -** Set of questions for an exhibitor.


    * **Exhibitor Answers -** Set of answers to exhibitor questions for an exhibitor.


    * **Exhibitor Categories -** Set of exhibitor categories for an event. Exhibitor Categories are used in Attendee Hub and Event App to differentiate exhibitors.


    * **Sponsorship Levels -** Sponsorship levels are defined by the planner. Use this API to get details of existing sponsorship levels defined within the event. To assign sponsorship levels to exhibitors, use the Exhibitor endpoints.

    '
paths:
  /events/{id}/exhibitor-categories:
    get:
      summary: List Exhibitor Categories
      description: Retrieves a paginated list of exhibitor categories associated with a single event.
      operationId: getExhibitorCategories
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:read
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:read
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      responses:
        '200':
          description: Successfully retrieved exhibitor categories.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-categories-paginated-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    post:
      summary: Create Exhibitor Category
      description: Creates a single exhibitor category entity for an event.
      operationId: createExhibitorCategory
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:write
      parameters:
      - $ref: '#/components/parameters/id6'
      requestBody:
        description: Exhibitor Category details
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/exhibitor-category-request'
      responses:
        '201':
          description: Successfully Created the exhibitor category.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-category-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitor-categories/{exhibitorCategoryId}:
    put:
      summary: Update Exhibitor Category
      description: Updates data for a single exhibitor category entity.
      operationId: updateExhibitorCategory
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:write
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorCategoryId'
      requestBody:
        description: Exhibitor Category details
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/exhibitor-category-request'
      responses:
        '200':
          description: Successfully updated the exhibitor category.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-category-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    delete:
      summary: Delete Exhibitor Category
      description: Deletes a single exhibitor Category entity.
      operationId: deleteExhibitorCategory
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:delete
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:delete
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorCategoryId'
      responses:
        '204':
          description: Successfully deleted exhibitor category.
          headers: {}
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitor-categories/{exhibitorCategoryId}/banner-files/{fileId}:
    put:
      summary: Assign Banner to Category
      description: 'Assign a banner image to an exhibitor category with a file UUID from <a href="#operation/uploadFile">file upload</a> endpoint. This will replace the current banner image if one is assigned.


        **Note:** For category banner images we recommend images that are 900x300 pixels and 5MiB or smaller. File types supported are : JPEG, JPG, PNG, GIF.

        '
      operationId: updateExhibitorCategoryBanner
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:write
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorCategoryId'
      - $ref: '#/components/parameters/fileId1'
      responses:
        '200':
          description: Successfully updated the exhibitor category banner image.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-category-banner-file'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    delete:
      summary: Delete Banner from Category
      description: Deletes an exhibitor Category banner image.
      operationId: deleteExhibitorCategoryImage
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:write
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorCategoryId'
      - $ref: '#/components/parameters/fileId1'
      responses:
        '204':
          description: Successfully deleted exhibitor category banner image.
          headers: {}
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitor-categories/{exhibitorCategoryId}/exhibitors:
    get:
      summary: List Category's Exhibitors
      description: Get a paginated list of exhibitors assigned to the provided exhibitor-category Id.
      operationId: listExhibitors
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:read
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:read
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorCategoryId'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      responses:
        '200':
          description: Successfully retrieved a Paginated list of exhibitors assigned to the exhibitor-category.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-id-list-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitor-categories/{exhibitorCategoryId}/exhibitors/{exhibitorId}:
    parameters:
    - $ref: '#/components/parameters/id6'
    - $ref: '#/components/parameters/exhibitorCategoryId'
    - $ref: '#/components/parameters/exhibitorId'
    put:
      summary: Assign Exhibitor to Category
      description: Assign an exhibitor ID to an exhibitor-category Id.
      operationId: addExhibitorToExhibitorCategory
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:write
      responses:
        '204':
          description: Successfully added an exhibitor to the exhibitor-category.
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    delete:
      summary: Delete Exhibitor from Category
      description: delete an exhibitor from an exhibitor-category
      operationId: removeExhibitorFromExhibitorCategory
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-categories:delete
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-categories:delete
      responses:
        '204':
          description: Successfully removed the exhibitor
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitor-questions:
    get:
      summary: List Exhibitor Questions
      description: Gets a list of exhibitor questions for a given event id.
      operationId: getExhibitorQuestions
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitor-questions:read
      - OAuth2.authorizationCode:
        - exhibitor/exhibitor-questions:read
      parameters:
      - $ref: '#/components/parameters/id6'
      responses:
        '200':
          description: Successfully retrieved exhibitor questions.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-questions-response'
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitors:
    get:
      summary: List Exhibitors
      description: Retrieves a paginated list of exhibitors associated with a single event.
      operationId: getExhibitors
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:read
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:read
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/token'
      - $ref: '#/components/parameters/before'
      - $ref: '#/components/parameters/after'
      - name: filter
        in: query
        required: false
        description: 'A filter query string narrows search results and supports the combination of logical and comparison operators.

          The filter adheres to the pattern filter=''field'' comparisonType ''value''.


          These are the comparison types that can be used in filter expressions:

          * equal: eq

          * includes value(s): in


          The following fields are filterable:

          * hidden (eq)

          * deleted (eq)

          * id (in)

          '
        schema:
          type: string
          example: id in ('{UUID}', '{UUID}') AND deleted eq 'true' AND hidden eq 'true'
      responses:
        '200':
          description: Successfully retrieved exhibitors.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitors-paginated-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    post:
      summary: Create Exhibitor
      description: Creates a single exhibitor entity for an event.
      operationId: createExhibitor
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:write
      parameters:
      - $ref: '#/components/parameters/id6'
      requestBody:
        description: Exhibitor details
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/exhibitor-request'
      responses:
        '201':
          description: Successfully Created the exhibitor.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitors/{exhibitorId}:
    get:
      summary: Get Exhibitor
      description: Retrieves a single exhibitor entity for an event.
      operationId: getExhibitor
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:read
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:read
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorId'
      responses:
        '200':
          description: Successfully retrieved exhibitor data.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    put:
      summary: Update Exhibitor
      description: Updates data for a single exhibitor entity.
      operationId: updateExhibitor
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:write
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorId'
      requestBody:
        description: Exhibitor details
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/exhibitor-request'
      responses:
        '200':
          description: Successfully updated the exhibitor.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-response'
        '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'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
    delete:
      summary: Delete Exhibitor
      description: Deletes a single exhibitor entity. To be deleted, exhibitors must have no tasks, registrations, or LeadCapture licenses assigned and must not be a sponsored or featured exhibitor.
      operationId: deleteExhibitor
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:delete
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:delete
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorId'
      responses:
        '204':
          description: Successfully deleted exhibitor.
          headers: {}
        '401':
          $ref: '#/components/responses/Unauthorized1'
        '403':
          $ref: '#/components/responses/Forbidden1'
        '404':
          $ref: '#/components/responses/NotFound1'
        '429':
          $ref: '#/components/responses/TooManyRequests1'
      externalDocs:
        description: More about OAuth2 authorization code support for administrators
        url: '#oauth2-auth-code-planner-admin'
  /events/{id}/exhibitors/{exhibitorId}/banner-files/{fileId}:
    put:
      summary: Assign Exhibitor Banner Image
      description: 'Assign a banner image to an exhibitor with a file UUID from <a href="#operation/uploadFile">file upload</a> endpoint. This will replace the current banner image if one is assigned.


        **Note:** For exhibitor profile banner images, we recommend images that are 1872x320 pixels or smaller images that have an aspect ratio of 5.85:1. File extensions supported: JPEG, JPG, PNG, GIF

        '
      operationId: updateExhibitorBanner
      tags:
      - Exhibitor
      security:
      - OAuth2.clientCredentials:
        - exhibitor/exhibitors:write
      - OAuth2.authorizationCode:
        - exhibitor/exhibitors:write
      parameters:
      - $ref: '#/components/parameters/id6'
      - $ref: '#/components/parameters/exhibitorId'
      - $ref: '#/components/parameters/fileId1'
      responses:
        '200':
          description: Successfully added the exhibitor banner image.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exhibitor-banner-logo-file'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: 

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