Webex Subscriptions API

The Subscriptions API from Webex — 6 operation(s) for subscriptions.

OpenAPI Specification

webex-subscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Webex Subscriptions API
  version: 1.0.0
  description: 'Operations tagged Subscriptions across 2 of this provider''s published API definitions: webex-contact-center-openapi.json,
    webex-subscriptions-api-openapi.yml. Each path carries the servers of the definition it was published in.'
  x-provenance:
    method: harvested
    authored_by: Cisco Webex
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
    derived_view: Per-tag view of webex-contact-center-openapi.json, the provider's source document. Operations and schemas
      are the provider's, unmodified; only the partition is ours.
    derived_from: webex-contact-center-openapi.json
    operation_coverage: 12/12
  x-evidence:
  - type: source
    url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-contact-center.json
  - type: raw
    url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-contact-center.json
tags:
- name: Subscriptions
paths:
  /v1/subscriptions:
    get:
      tags:
      - Subscriptions
      summary: List Subscriptions
      description: "Retrieve all subscriptions for a given organization. Requires `cjp:config_read` scope.\n\n\n Note: In\
        \ the response JSON, the 'data' field only contains V1 based subscriptions, while the field 'meta.subscriptionCount'\
        \ provides the total count encompassing all the created subscriptions in the organization."
      operationId: getSubscriptionByOrgId
      parameters:
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiListResponse'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    post:
      tags:
      - Subscriptions
      summary: Register Subscription
      description: Create a subscription which would allow consumers to listen to events. If creating a subscription causes
        the org-level limit to be exceeded, the subscription registration will be denied. Requires `cjp:config_write` scope.
      operationId: createSubscription
      parameters:
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCreateApiResponse'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
  /v1/subscriptions/{id}:
    get:
      tags:
      - Subscriptions
      summary: Get Subscription
      description: Retrieve a subscription for a given subscription ID. Requires `cjp:config_read` scope.
      operationId: getSubscriptionById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID by which to retrieve the subscription.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiResponse'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    delete:
      tags:
      - Subscriptions
      summary: Delete Subscription
      description: Deletes a subscription for a given subscription ID. Requires `cjp:config_write` scope.
      operationId: deleteSubscriptionById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID of the subscription to be deleted.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '204':
          description: No Content
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    patch:
      tags:
      - Subscriptions
      summary: Update Subscription
      description: Updates some of the properties in a subscription, for a given subscription ID. Requires `cjp:config_write`
        scope.
      operationId: updateSubscriptionById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID of the subscription to be updated.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequestUpdate'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiResponse'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
  /v1/event-types:
    get:
      tags:
      - Subscriptions
      summary: List Event Types
      description: Retrieve all available event types for an organization. Requires `cjp:config_read` scope.
      operationId: getAllEventTypes
      parameters:
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventTypesApiListResponse'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
  /v2/subscriptions:
    get:
      tags:
      - Subscriptions
      summary: List Subscriptions
      description: "Retrieve all subscriptions for a given organization. Requires `cjp:config_read` scope.\n\n\n Note: In\
        \ the response JSON, the 'data' field only contains V2 based subscriptions, while the field 'meta.subscriptionCount'\
        \ provides the total count encompassing all the created subscriptions in the organization."
      operationId: getSubscriptionByOrgIdV2
      parameters:
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiListResponseEnhanced'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    post:
      tags:
      - Subscriptions
      summary: Register Subscription
      description: Create a subscription which would allow consumers to listen to events. If creating a subscription causes
        the org-level limit to be exceeded, the subscription registration will be denied. Requires `cjp:config_write` scope.
      operationId: createSubscriptionWithV2
      parameters:
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequestEnhanced'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCreateApiResponseEnhanced'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
  /v2/subscriptions/{id}:
    get:
      tags:
      - Subscriptions
      summary: Get Subscription
      description: Retrieve a subscription for a given subscription ID. Requires `cjp:config_read` scope.
      operationId: getSubscriptionByIdV2
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID by which to retrieve the subscription.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiResponseEnhanced'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    delete:
      tags:
      - Subscriptions
      summary: Delete Subscription
      description: Deletes a subscription for a given subscription ID. Requires `cjp:config_write` scope.
      operationId: deleteSubscriptionByIdV2
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID of the subscription to be deleted.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '204':
          description: No Content
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
    patch:
      tags:
      - Subscriptions
      summary: Update Subscription
      description: Updates some of the properties in a subscription, for a given subscription ID. Requires `cjp:config_write`
        scope.
      operationId: updateSubscriptionByIdWithV2
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: ID of the subscription to be updated.
          format: uuid
          example: 10b4079b-5162-4526-b6a4-4472734fb69b
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequestUpdateEnhanced'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionApiResponseEnhanced'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
  /v2/event-types:
    get:
      tags:
      - Subscriptions
      summary: List Event Types
      description: 'Retrieve all available event types for an organization along with information about the currently supported
        resource versions. Requires `cjp:config_read` scope. '
      operationId: getAllEventTypesWithResourceVersionMetadata
      parameters:
      - name: orgId
        in: query
        description: Organization ID to be used for this operation. If unspecified, the Organization ID is inferred from the
          token. The token must have permissions to interact with the organization.
        required: false
        schema:
          type: string
        example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
      - name: TrackingId
        in: header
        description: Tracking ID to use for this operation, for traceability, debugging, and error reporting purposes. If
          not provided, we will generate one for you.
        required: false
        schema:
          type: string
        example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventTypesApiListResponseEnhanced'
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '401':
          description: Unauthorized Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '403':
          description: Forbidden Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
        '500':
          description: An Unexpected Error Occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResult'
components:
  schemas:
    EventTypesApiListResponse:
      required:
      - data
      - meta
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/EventTypesResponse'
        meta:
          $ref: '#/components/schemas/Meta'
    EventTypesApiListResponseEnhanced:
      required:
      - data
      - meta
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/EventTypesResponse'
        meta:
          $ref: '#/components/schemas/MetaResourceVersionInfo'
    MetaResourceVersionInfo:
      required:
      - resourceVersionList
      type: object
      properties:
        orgId:
          type: string
          description: Organization ID used for this operation.
          format: uuid
          example: 97cdbf45-ebe2-4687-8341-44d5c7abf101
        resourceVersionList:
          type: array
          description: List of all resources, and it's supported versions available to subscribe.
          items:
            $ref: '#/components/schemas/ResourceVersion'
    Error:
      required:
      - key
      type: object
      properties:
        key:
          type: integer
          description: Status code of error.
          format: int32
          example: 400
        message:
          type: array
          items:
            $ref: '#/components/schemas/FieldValidationError'
    SubscriptionApiListResponse:
      required:
      - data
      - meta
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionResponse'
        meta:
          $ref: '#/components/schemas/MetaSubInfo'
    FieldValidationError:
      required:
      - description
      type: object
      properties:
        description:
          type: string
          description: Message detailing an error discovered during request processing.
          example: Body is invalid JSON.
    ErrorResult:
      required:
      - trackingId
      type: object
      properties:
        error:
          $ref: '#/components/schemas/Error'
        trackingId:
          type: string
          description: Unique ID by which a request can be debugged, provided in request header or autogenerated. Please provide
            if opening a support case.
          example: NOTIFS_9bcdc696-57fa-4e91-b5aa-57a66a347c23
    SubscriptionCreateApiResponseEnhanced:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/MetaSubInfo'
        data:
          $ref: '#/components/schemas/SubscriptionResponseEnhanced'
    SubscriptionApiResponse:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/Meta'
        data:
          $ref: '#/components/schemas/SubscriptionResponse'
    SubscriptionResponseEnhanced:
      required:
      - createdBy
      - createdTime
      - destinationUrl
      - eventTypes
      - id
      - lastUpdatedBy
      - lastUpdatedTime
      - name
      - resourceVersion
      - status
      type: object
      properties:
        id:
          type: string
          description: Subscription ID.
          format: uuid
          example: 41e92806-331d-4802-bc12-674f92d4a6f7
        name:
          maxLength: 64
          minLength: 4
          type: string
          description: Client-defined string naming the subscription.
          example: My Integration's Subscription
        description:
          maxLength: 1024
          type: string
          description: Client-defined string describing the subscription.
          example: The subscription my integration uses to synchronize with WxCC
        eventTypes:
          maxItems: 32
          minItems: 1
          type: array
          description: Types of events to which the subscription will listen.
          example:
          - agent:login
          - agent:logout
          items:
            type: string
        destinationUrl:
          type: string
          description: URL to which webhooks will be posted. Must be HTTPS on an IANA-listed top-level domain name (e.g. .com)
            with a path (at least /). No query parameters, userinfo, non-443 ports, or fragments allowed. We do not treat
            this field as sensitive data, so do not use secrets in this URL such as tokens or API keys.
          format: uri
          example: https://www.cisco.com/
        createdTime:
          type: integer
          description: Time when subscription was created (epoch milliseconds).
          format: int64
          example: 1591702170000
        createdBy:
          type: string
          description: Email address of the user who created the subscription.
          format: email
          example: example@example.com
        status:
          type: string
          description: Status of the subscription. Can be "active" or "inactive". The system may change the status to "inactive"
            in error scenarios.
          example: active
          enum:
          - active
          - inactive
        lastUpdatedTime:
          type: integer
          description: Time when the subscription was last updated (epoch milliseconds).
          format: int64
          example: 1591702170000
        lastUpdatedBy:
          type: string
          description: Email address of the user who updated the subscription most recently.
          format: email
          example: example@example.com
        resourceVersion:
          maxLength: 50
          minLength: 1
          type: string
          description: Version of the resource.
          example: agent:1.0.0
    ResourceVersion:
      type: object
      properties:
        resource:
          type: string
          description: Resource name.
          example: agent
        version:
          type: string
          description: Version of the resource.
          example: 1.0.0
      description: List of all resources, and it's supported versions available to subscribe.
    Meta:
      type: object
      properties:
        orgId:
          type: string
          description: Organization ID to which resources belong.
          example: 3dae8fdd-06e2-411a-9035-51f3719f5b65
      description: Response metadata.
    SubscriptionRequest:
      required:
      - destinationUrl
      - eventTypes
      - name
      type: object
      properties:
        name:
          maxLength: 64
          minLength: 4
          type: string
          description: Client-defined string naming the subscription.
          example: My Integration's Subscription
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Client-defined string describing the subscription.
          example: The subscription my integration uses to synchronize with WxCC
        eventTypes:
          maxItems: 32
          minItems: 1
          type: array
          description: Types of events to which the subscription will listen.
          example:
          - agent:login
          - agent:logout
          items:
            type: string
        destinationUrl:
          pattern: ^(https?)://.*

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webex/refs/heads/main/openapi/webex-subscriptions-api-openapi.yml