openapi: 3.0.0 info: title: Webex Admin Address Book Hybrid Connectors 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: Hybrid Connectors paths: /hybrid/connectors: get: responses: '200': description: OK headers: {} content: application/json: schema: $ref: '#/components/schemas/ConnectorCollection' example: items: - id: Y2lZY76123 orgId: Y2lzY29zcGFyazovL3 hybridClusterId: Y2lZY76123abbb hostname: foo.example.org status: operational created: '2017-09-15T15:53:00Z' type: calendar version: 1.9_foo_zz alarms: - id: Y2lZY76123af234bbYY created: '2017-09-15T15:53:00Z' severity: warning title: Something is wrong description: More detail about something being wrong hybridConnectorId: Y2lZY76123af234bb '400': description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.' '401': description: 'Unauthorized: Authentication credentials were missing or incorrect.' '403': description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.' '404': description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.' '405': description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.' '409': description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.' '410': description: 'Gone: The requested resource is no longer available.' '415': description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.' '423': description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.' '428': description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.' '429': description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.' '500': description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).' '502': description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.' '503': description: 'Service Unavailable: Server is overloaded with requests. Try again later.' '504': description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.' summary: List Hybrid Connectors operationId: List Hybrid Connectors description: 'List hybrid connectors for an organization. If no `orgId` is specified, the default is the organization of the authenticated user. Only an admin auth token with the `spark-admin:hybrid_connectors_read` scope can list connectors.' tags: - Hybrid Connectors parameters: - name: orgId in: query description: List hybrid connectors in this organization. If an organization is not specified, the organization of the caller will be used. example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE schema: type: string /hybrid/connectors/{connectorId}: get: responses: '200': description: OK headers: {} content: application/json: schema: $ref: '#/components/schemas/Connector' example: id: Y2lZY76123 orgId: Y2lzY29zcGFyazovL3 hybridClusterId: Y2lZY76123abbb hostname: foo.example.org status: operational created: '2017-09-15T15:53:00Z' type: calendar version: 1.9_foo_zz alarms: - id: Y2lZY76123af234bbYY created: '2017-09-15T15:53:00Z' severity: warning title: Something is wrong description: More detail about something being wrong hybridConnectorId: Y2lZY76123af234bb '400': description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.' '401': description: 'Unauthorized: Authentication credentials were missing or incorrect.' '403': description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.' '404': description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.' '405': description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.' '409': description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.' '410': description: 'Gone: The requested resource is no longer available.' '415': description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.' '423': description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.' '428': description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.' '429': description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.' '500': description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).' '502': description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.' '503': description: 'Service Unavailable: Server is overloaded with requests. Try again later.' '504': description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.' summary: Get Hybrid Connector Details operationId: Get Hybrid Connector Details description: 'Shows details for a hybrid connector, by ID. Only an admin auth token with the `spark-admin:hybrid_connectors_read` scope can see connector details.' tags: - Hybrid Connectors parameters: - name: connectorId in: path description: The ID of the connector. required: true example: Y2lZY76123 schema: type: string components: schemas: ConnectorCollection: type: object properties: items: type: array items: $ref: '#/components/schemas/Connector' description: An array of hybrid connector objects. Alarm: type: object properties: id: type: string example: Y2lZY76123af234bbYY description: A unique identifier for the alarm. created: type: string example: '2017-09-15T15:53:00Z' description: The date and time the alarm was raised. severity: $ref: '#/components/schemas/AlarmSeverity' description: 'The severity level of the alarm: - `critical` - `error` - `warning` - `alert`' title: type: string example: Something is wrong description: The title of the alarm. description: type: string example: More detail about something being wrong description: A description of the alarm. hybridConnectorId: type: string example: Y2lZY76123af234bb description: The ID of the connector the alarm is raised on. Connector: type: object properties: id: type: string example: Y2lZY76123 description: A unique identifier for the connector. orgId: type: string example: Y2lzY29zcGFyazovL3 description: The ID of the organization to which this hybrid connector belongs. hybridClusterId: type: string example: Y2lZY76123abbb description: The ID of the cluster this connector belongs to. hostname: type: string example: foo.example.org description: The hostname of the system the connector is running on. status: $ref: '#/components/schemas/ConnectorStatus' description: 'The status of the connector: - `operational` indicates that the connector is working as it should. - `impaired` indicates that the connector has problems with one or more dependent components. - `outage` indicates that the connector is completely non-functional. - `maintenanceMode` reports the current maintenance mode state of the connector.' created: type: string example: '2017-09-15T15:53:00Z' description: The date and time the connector was created. type: $ref: '#/components/schemas/ConnectorType' description: The type of connector. version: type: string example: 1.9_foo_zz description: The version of the software installed. alarms: type: array items: $ref: '#/components/schemas/Alarm' description: A list of alarms raised on the connector. AlarmSeverity: type: string enum: - critical - warning - alert - error ConnectorStatus: type: string enum: - operational - impaired - outage - maintenanceMode ConnectorType: type: string enum: - expresswayManagement - calendar - call - message - expresswayServiceability - ecpServiceability - videoMesh - dataSecurity - care - careManagement 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