Webex Realtime API

The Realtime API from Webex — 1 operation(s) for realtime.

OpenAPI Specification

webex-realtime-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Webex Admin Address Book Realtime API
  version: 1.0.0
  description: The Webex Admin APIs provide comprehensive programmatic access to administrative functions for managing Webex organizations, users, licenses, and settings. These APIs enable automation of user provisioning, license assignment, compliance management, and audit event retrieval. Administrators can integrate with enterprise identity systems, enforce security policies, monitor usage, and streamline onboarding/offboarding processes. The APIs support granular control over organizational resources, making them ideal for large-scale deployments and custom admin tooling.
tags:
- name: Realtime
paths:
  /v1/realtime/subscribe:
    post:
      tags:
      - Realtime
      summary: Subscribe Realtime Notification
      description: Access this endpoint when the user has to register for a WebSocket Session to receive realtime events. Requires 'cjp:user' scope or roles 'id_full_admin', 'id_readonly_admin', 'atlas-portal.partner.salesadmin', 'atlas-portal.partner.helpdesk', 'cjp.supervisor', 'cjp.admin', 'atlas-portal.partner.provision_admin' for authorization
      operationId: subscribeRealtimeRoute
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RealtimeRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RealtimeResponse'
          description: OK
        '401':
          description: Unauthorized, Token is Invalid
        '403':
          description: Forbidden Request
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
components:
  schemas:
    RealtimeRequest:
      properties:
        isKeepAliveEnabled:
          description: This represents that a json message {\"keepalive\":\"true\"} is expected over the websocket connection from Client. This should be sent periodically (usually 4s). If there are no keep-alive messages from the client for a period of 15 seconds, the server will drop the websocket.
          example: true
          default: true
          type: boolean
        clientType:
          description: ClientType is used to identify a web application differently from other web applications. It is used to group connections together for a specific user coming from that specific web application.
          example: ExtensiveSupervisoryDesktop
          default: DefaultClient
          type: string
          maxLength: 64
          minLength: 4
        allowMultiLogin:
          description: This cannot be used without providing \"clientType\". When set to true, it informs the server to allow multiple logins for this user coming from the same clientType. Upto 10 multiple logins will be allowed.
          example: false
          default: false
          maxLength: 64
          minLength: 4
          type: boolean
        force:
          description: When true, will drop a random connection and then subscribes if connections for a user exceed maximum limit. When allowMultiLogin is false and a multi-login is attempted, if set to true will drop all connections for that user of that clientType & then subscribes.
          example: false
          default: false
          maxLength: 64
          minLength: 4
          type: boolean
      type: object
    RealtimeResponse:
      properties:
        webSocketUrl:
          description: Url used by the client to setup websocket.
          example: wss://api.wxcc-us1.cisco.com/v1/realtime/subscription/ExtensiveSupervisoryDesktop-ffffffac0f-39fa-4122-80d8-f2c2266e6391
          type: string
        subscriptionId:
          description: Id used by client to subscribe to interested events.
          example: ExtensiveSupervisoryDesktop-ffffffac0f-39fa-4122-80d8-f2c2266e6391
          format: uuid
      required:
      - webSocketUrl
      - subscriptionId
      type: object
  securitySchemes:
    oauth2:
      flows:
        authorizationCode:
          authorizationUrl: /
          scopes: {}
          tokenUrl: /
      type: oauth2
    bearer-key:
      type: http
      description: e.g. Bearer YOUR_AUTHORIZATION_TOKEN
      scheme: bearer
      bearerFormat: JWT
    bearerAuth:
      type: oauth2
      description: OAuth 2.0 Bearer token authentication
      flows:
        authorizationCode:
          authorizationUrl: https://webexapis.com/v1/authorize
          tokenUrl: https://webexapis.com/v1/access_token
          scopes:
            spark:applications_token: Create access tokens for Service Apps