{
"openapi": "3.0.0",
"info": {
"title": "Webex Admin",
"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": "Service Apps",
"description": "Operations for managing Service App access tokens"
}
],
"paths": {
"/adminAudit/events": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {
"Content-Disposition": {
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuditEventCollectionResponse"
},
"example": {
"items": [
{
"data": {
"actorOrgName": "Acme Inc.",
"targetName": "Acme Inc.",
"eventDescription": "An Admin logged in",
"actorName": "Joe Smith",
"actorEmail": "joe@example.com",
"adminRoles": [
"User"
],
"trackingId": "ATLAS_6f23a878-bcd4-c204-a4db-e701b42b0e5c_0",
"targetType": "TargetResourceType.ORG",
"targetId": "NWIzZTBiZDgtZjg4Ni00MjViLWIzMTgtYWNlYjliN2EwZGFj",
"eventCategory": "EventCategory.LOGINS",
"actorUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
"actorIp": "128.107.241.191",
"targetOrgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE",
"actionText": "Joe Smith logged into organization Acme Inc.",
"targetOrgName": "Acme Inc."
},
"created": "2019-01-02T16:58:36.845Z",
"actorOrgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE",
"id": "MjQ0ODhiZTYtY2FiMS00ZGRkLTk0NWQtZDFlYjkzOGQ4NGUy",
"actorId": "MjQ4Njg2OTYtYWMwZC00ODY4LWJkMjEtZGUxZDc4MzhjOTdm"
}
]
}
}
}
},
"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 Admin Audit Events",
"operationId": "List Admin Audit Events",
"description": "List admin audit events in your organization. Several query parameters are available to filter the response.\n\nLong result sets will be split into [pages](/docs/basics#pagination).\n\n**NOTE**: A maximum of one year of audit events can be returned per request.",
"tags": [
"Admin Audit Events"
],
"parameters": [
{
"name": "orgId",
"in": "query",
"description": "List events in this organization, by ID.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE",
"schema": {
"type": "string"
}
},
{
"name": "from",
"in": "query",
"description": "List events which occurred after a specific date and time.",
"required": true,
"example": "2018-01-01T13:12:11.789Z",
"schema": {
"type": "string"
}
},
{
"name": "to",
"in": "query",
"description": "List events which occurred before a specific date and time.",
"required": true,
"example": "2018-01-01T14:12:11.789Z",
"schema": {
"type": "string"
}
},
{
"name": "actorId",
"in": "query",
"description": "List events performed by this person, by ID.",
"example": "ZWUzNDNmYjEtNGQzNS00ZjNmLWE2ZDctMzZkNzVlYjk0ZWVm",
"schema": {
"type": "string"
}
},
{
"name": "max",
"in": "query",
"description": "Limit the maximum number of events in the response. The maximum value is `200`.",
"example": "100",
"schema": {
"type": "number",
"default": 100
}
},
{
"name": "offset",
"in": "query",
"description": "Offset from the first result that you want to fetch.",
"example": "0",
"schema": {
"type": "number"
}
},
{
"name": "eventCategories",
"in": "query",
"description": "List events, by event categories.",
"example": "LOGINS,LOGOUT",
"schema": {
"type": "array",
"items": {
"type": "string",
"example": "LOGINS,LOGOUT"
},
"description": "List events, by event categories."
}
}
]
}
},
"/adminAudit/eventCategories": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuditEventCategoryCollectionResponse"
},
"example": {
"eventCategories": []
}
}
}
},
"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 Admin Audit Event Categories",
"operationId": "List Admin Audit Event Categories",
"description": "Get the list of all admin event categories.",
"tags": [
"Admin Audit Events"
],
"parameters": []
}
},
"/authorizations": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListAuthorizations"
},
"example": {
"items": [
{
"id": "Y2lzY29zcGFyazovL3VzL0FVVEhPUklaQVRJT04vZjI3MDM0ZTMtMDA5ZS00ODA4LTk5MDQtNTNkMDQ0OGJlNDVk",
"applicationId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL0NmMzkyNWU5NDFmMzhhYTc0M2Y0MmFiNzcwZmZhZjFhNTIyMjcxZDI5OTQ4NDhjNjk2YWMwYTEwN2Q2YTg5MjI3",
"applicationName": "Developer Portal",
"personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lYjIyYjNiZC03NGNiLTRjMjktYjA3Zi1lYWQwMmU1NjgyZDI",
"clientId": "C80fb9c7096bd8474627317ee1d7a817eff372ca9c9cee3ce43c3ea3e8d1511ec",
"created": "2015-10-18T14:26:16+00:00",
"type": "refresh"
}
]
}
}
}
},
"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 authorizations for a user",
"operationId": "listAuthorizationsForUser",
"description": "Lists all authorizations for a user. Either `personId` or `personEmail` must be provided. This API does not support pagination.",
"tags": [
"Authorizations"
],
"parameters": [
{
"name": "personId",
"in": "query",
"description": "List authorizations for this user id.",
"example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"schema": {
"type": "string"
}
},
{
"name": "personEmail",
"in": "query",
"description": "List authorizations for this user email.",
"example": "john.anderson@example.com",
"schema": {
"type": "string"
}
}
]
},
"delete": {
"responses": {
"204": {
"description": "No Content",
"headers": {},
"content": {}
},
"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": "Delete authorization of org and client ID",
"operationId": "Delete authorization of org and client ID",
"description": "Deletes an authorization by org ID and client ID.",
"tags": [
"Authorizations"
],
"parameters": [
{
"name": "clientId",
"in": "query",
"description": "The unique oAuth client id.",
"required": true,
"example": "C80fb9c7096bd8474627317ee1d7a817eff372ca9c9cee3ce43c3ea3e8d1511ec",
"schema": {
"type": "string"
}
},
{
"name": "orgId",
"in": "query",
"description": "The ID of the organization to which this person belongs. If no orgId is specified, use orgId from the OAuth token.",
"example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE",
"schema": {
"type": "string"
}
}
]
}
},
"/authorizations/{authorizationId}": {
"delete": {
"responses": {
"204": {
"description": "No Content",
"headers": {},
"content": {}
},
"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": "Delete authorization",
"operationId": "Delete authorization",
"description": "Deletes an authorization by authorization ID.\n\nSpecify the authorization Id in the `authorizationId` parameter in the URI, which was listed in the list resource.",
"tags": [
"Authorizations"
],
"parameters": [
{
"name": "authorizationId",
"in": "path",
"description": "The unique identifier for the message.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL0FVVEhPUklaQVRJT04vZjI3MDM0ZTMtMDA5ZS00ODA4LTk5MDQtNTNkMDQ0OGJlNDVk",
"schema": {
"type": "string"
}
}
]
}
},
"/authorizations/tokenExpiry": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"exp": {
"type": "number",
"description": "Epoch time in milliseconds at which the current token will expire."
}
},
"required": [
"exp"
]
},
"example": {
"exp": 1768630439322
}
}
}
},
"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 expiration status for a token",
"operationId": "getTokenExpirationStatus",
"description": "Epoch-based expiration time for the token.",
"tags": [
"Authorizations"
]
}
},
"/classifications": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrganizationsSpaceClassificationCollectionResponse"
},
"example": {
"items": [
{
"id": "Y2lzY29zcGFyazovL3VzL0NMQVNTSUZJQ0FUSU9OL2YyMDUyZTgyLTU0ZjgtMTFlYS1hMmUzLTJlNzI4Y2U4ODEyNQ",
"rank": 0,
"title": "Public",
"enabled": true,
"description": "Does not contain private information",
"lastModified": "2020-02-22T00:06:42.438Z",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE"
}
]
}
}
}
},
"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 classifications",
"operationId": "List classifications",
"description": "List all the space classifications configured in your org.",
"tags": [
"Classifications"
],
"parameters": []
}
},
"/dataSources": {
"post": {
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"audience": "MedDocVirtualAgent",
"errorMessage": "down for maintenance",
"id": "f29bb291-5db0-411b-834a-e64f8dee0658",
"nonce": "jeieu38udue83u398",
"schemaId": "78efc775-dccb-45ca-9acf-989a4a59f788",
"status": "active",
"subject": "callAudioData",
"tokenLifetimeMinutes": 60,
"url": "https://www.byods.com/service1"
}
}
},
"schema": {
"properties": {
"audience": {
"description": "The audience field in the JWT token. Usually, the DAPs app name.",
"type": "string"
},
"errorMessage": {
"description": "Error Message shown in Control Hub when status is set to `disabled`.",
"type": "string"
},
"id": {
"description": "The Data Source Id.",
"type": "string"
},
"nonce": {
"description": "Unique nonce used in the encryption of the JWT token.",
"type": "string"
},
"schemaId": {
"description": "The schema id used for the data exchange.",
"type": "string"
},
"status": {
"description": "The status of the Data Source; `active` or `disabled`",
"type": "string"
},
"subject": {
"description": "Rhe subject field in the JWT token. Usually, an indication of the app's function",
"type": "string"
},
"tokenLifetimeMinutes": {
"description": "The validity of the created token in minutes. Before the token expiration time, a new token must be provided, or Webex will stop delivering data after the token expiration",
"type": "number"
},
"url": {
"description": "The URL of the endpoint where Webex will send the data.",
"type": "string"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Register your data source to the Webex BYODS system. Authentication must happen via a Service App with the scope `spark-admin:datasource_write`.\nThe schema IDs determine what data types are sent from Webex to the DAP and the expected responses. The schemas can be inspected on developer.webex.com.",
"operationId": "Register a Data Source",
"requestBody": {
"content": {
"application/json": {
"schema": {
"example": {
"audience": "MedDocVirtualAgent",
"nonce": "jeieu38udue83u398",
"schemaId": "78efc775-dccb-45ca-9acf-989a4a59f788",
"subject": "callAudioData",
"tokenLifetimeMinutes": 60,
"url": "https://www.byods.com/service1"
},
"properties": {
"audience": {
"description": "The audience field in the JWT token. Usually, the DAPs app name.",
"type": "string"
},
"nonce": {
"description": "Unique nonce used in the encryption of the JWT token.",
"type": "string"
},
"schemaId": {
"description": "The schema id used for the data exchange.",
"type": "string"
},
"subject": {
"description": "Rhe subject field in the JWT token. Usually, an indication of the app's function",
"type": "string"
},
"tokenLifetimeMinutes": {
"description": "The validity of the created token in minutes. Before the token expiration time, a new token must be provided, or Webex will stop delivering data after the token expiration. Must be equal or less to 1440.",
"type": "number"
},
"url": {
"description": "The URL of the endpoint where Webex will send the data.",
"type": "string"
}
},
"type": "object"
}
}
}
},
"summary": "Register a Data Source"
}
},
"/dataSources/": {
"get": {
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"items": [
{
"DataSource": "",
"applicationId": "Cf2e954e018f2de8c1403e2618323551df65",
"createdAt": "2022-01-01T00:00:00Z",
"createdBy": "3e4d3b27-1bf1-4916-8d0c-d27fd765fa52",
"jwsToken": "eyJraWQiOiIxOWFmMzYxYS0zYWI0LTU0NzEtYTViMC03MmQxODQyOTRjMmYiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiJNeUFwcDIiLCJzdWIiOiJNeUFwcHNQdXJwb3NlMiIsImlzcyI6Imh0dHBzOlwvXC9pZGJyb2tlci53ZWJleC5jb21cL2lkYiIsImV4cCI6MTcyOTIyMDUxNSwiY29tLmNpc2NvLmRhdGFzb3VyY2UudXJsIjoiaHR0cHM6XC9cL3NjaGlmZmVydC5tZVwvZHMyIiwiY29tLmNpc2NvLmRhdGFzb3VyY2Uuc2NoZW1hLnV1aWQiOiI3OGVmYzc3NS1kY2NiLTQ1Y2EtOWFjZi05ODlhNGE1OWY3ODgiLCJpYXQiOjE3MjkyMTMzMTUsImNvbS5jaXNjby5vcmcudXVpZCI6ImNlODYxZmJhLTZlMmYtNDlmOS05YTg0LWIzNTQwMDhmYWM5ZSIsImp0aSI6IjEyMzQ1NiJ9.QxWYQCXOTLTNBx1Mr8qtd1rpx5uqHYcow1l_oiqMQ_2LorPor3wnEW9_dmMFUs-yAizpayTB4XJpU0ga9E-GY3XaiXz4CGW0G5f3566j3AvmfviMVCFgQFnMd0LpwgPIHhQGX-z2Y6KgzjTCLqm76WpSylAomOPEpgs8dqChfuC9aVHyuB2FfV77J265q-pLp8RSJa_EoSZ_05tpQHxxrDrB-qnn-WQoCFFlb88f3kKdyzPqQhvdWQuouyaP4YyMd_C8a6N_F1dk3cBUjSOtnHDm9WoGwYd8wUcjtZVk5g-z7coc656OooRvDQ0-JRdh7TVUfkzdQS79d4UfmRAhYQ",
"orgId": "63b02f90-9cc6-43b8-aa6d-cad425ac554c"
}
]
}
}
},
"schema": {
"properties": {
"items": {
"items": {},
"type": "array"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Show all data sources registered for this Service App with the scope `spark-admin:datasource_read`.",
"operationId": "Retrieve All Data Sources",
"summary": "Retrieve All Data Sources"
}
},
"/dataSources/schemas": {
"get": {
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"items": [
{
"appType": "serviceApp",
"createdAt": "2024-09-05T01:35:04.772Z",
"id": "78efc775-dccb-45ca-9acf-989a4a59f788",
"protocol": "gRPC",
"serviceType": "webService",
"url": "/path/to/definition/file3"
}
]
}
}
},
"schema": {
"properties": {
"items": {
"items": {},
"type": "array"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Show available schemas. No specific scope is needed to retrieve the dataSource schemas, but a valid API token should be presented.",
"operationId": "Retrieve Data Source Schemas",
"summary": "Retrieve Data Source Schemas"
}
},
"/dataSources/schemas/{schemaId}": {
"get": {
"parameters": [
{
"description": "The unique identifier for the schema.",
"example": "78efc775-dccb-45ca-9acf-989a4a59f788",
"in": "path",
"name": "schemaId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"appType": "serviceApp",
"createdAt": "2024-09-05T01:35:04.772Z",
"id": "78efc775-dccb-45ca-9acf-989a4a59f788",
"protocol": "gRPC",
"serviceType": "webService",
"url": "/path/to/definition/file3"
}
}
},
"schema": {
"properties": {
"appType": {
"description": "The app type used for this schema",
"type": "string"
},
"createdAt": {
"description": "datetime when the schema was created",
"type": "string"
},
"id": {
"description": "The Schema Id",
"type": "string"
},
"protocol": {
"description": "The connection protocol for this schema",
"type": "string"
},
"serviceType": {
"description": "The service type web or contact center",
"type": "string"
},
"url": {
"description": "the URL location where this schema can be inspected",
"type": "string"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Retrieve details of a specific data source schema by schema id. No specific scope is needed to retrieve the dataSource schemas, but a valid API token should be presented.",
"operationId": "Retrieve Details of a Specific Data Source Schema",
"summary": "Retrieve Details of a Specific Data Source Schema"
}
},
"/dataSources/{dataSourceId}": {
"delete": {
"parameters": [
{
"description": "The unique identifier for the dataSource.",
"example": "f29bb291-5db0-411b-834a-e64f8dee0658",
"in": "path",
"name": "dataSourceId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No Content",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Delete a Data Source, by Data Source ID.\n\nSpecify the Data Source ID in the `dataSourceId` parameter in the URI.",
"operationId": "Delete a Data Source",
"summary": "Delete a Data Source"
},
"get": {
"parameters": [
{
"description": "The unique identifier for the dataSource.",
"example": "f29bb291-5db0-411b-834a-e64f8dee0658",
"in": "path",
"name": "dataSourceId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"audience": "MedDocVirtualAgent",
"errorMessage": "down for maintenance",
"id": "f29bb291-5db0-411b-834a-e64f8dee0658",
"nonce": "jeieu38udue83u398",
"schemaId": "78efc775-dccb-45ca-9acf-989a4a59f788",
"status": "active",
"subject": "callAudioData",
"tokenLifetimeMinutes": 60,
"url": "https://www.byods.com/service1"
}
}
},
"schema": {
"properties": {
"audience": {
"description": "The audience field in the JWT token. Usually, the DAPs app name.",
"type": "string"
},
"errorMessage": {
"description": "Error Message shown in Control Hub when status is set to `disabled`.",
"type": "string"
},
"id": {
"description": "The Data Source Id.",
"type": "string"
},
"nonce": {
"description": "Unique nonce used in the encryption of the JWT token.",
"type": "string"
},
"schemaId": {
"description": "The schema id used for the data exchange.",
"type": "string"
},
"status": {
"description": "The status of the Data Source; `active` or `disabled`",
"type": "string"
},
"subject": {
"description": "Rhe subject field in the JWT token. Usually, an indication of the app's function",
"type": "string"
},
"tokenLifetimeMinutes": {
"description": "The validity of the created token in minutes. Before the token expiration time, a new token must be provided, or Webex will stop delivering data after the token expiration",
"type": "number"
},
"url": {
"description": "The URL of the endpoint where Webex will send the data.",
"type": "string"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Show details for a data source, by dataSource id.\nTo see details for a data source, use the Service App token with the `spark-admin:datasource_read` scope.",
"operationId": "Retrieve Data Source Details",
"summary": "Retrieve Data Source Details"
},
"put": {
"parameters": [
{
"description": "The unique identifier for the data source.",
"example": "f29bb291-5db0-411b-834a-e64f8dee0658",
"in": "path",
"name": "dataSourceId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"examples": {
"response": {
"value": {
"audience": "MedDocVirtualAgent",
"errorMessage": "down for maintenance",
"id": "f29bb291-5db0-411b-834a-e64f8dee0658",
"nonce": "jeieu38udue83u398",
"schemaId": "78efc775-dccb-45ca-9acf-989a4a59f788",
"status": "active",
"subject": "callAudioData",
"tokenLifetimeMinutes": 60,
"url": "https://www.byods.com/service1"
}
}
},
"schema": {
"properties": {
"audience": {
"description": "The audience field in the JWT token. Usually, the DAPs app name.",
"type": "string"
},
"errorMessage": {
"description": "Error Message shown in Control Hub when status is set to `disabled`.",
"type": "string"
},
"id": {
"description": "The Data Source Id.",
"type": "string"
},
"nonce": {
"description": "Unique nonce used in the encryption of the JWT token.",
"type": "string"
},
"schemaId": {
"description": "The schema id used for the data exchange.",
"type": "string"
},
"status": {
"description": "The status of the Data Source; `active` or `disabled`",
"type": "string"
},
"subject": {
"description": "Rhe subject field in the JWT token. Usually, an indication of the app's function",
"type": "string"
},
"tokenLifetimeMinutes": {
"description": "The validity of the created token in minutes. Before the token expiration time, a new token must be provided, or Webex will stop delivering data after the token expiration",
"type": "number"
},
"url": {
"description": "The URL of the endpoint where Webex will send the data.",
"type": "string"
}
},
"type": "object"
}
}
},
"description": "OK",
"headers": {}
},
"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."
}
},
"tags": [
"Data Sources"
],
"description": "Updates a Data Source. The updateable fields are the `audience,` `subject,` `nonce,` `url` and `tokenLifetimeMinutes.`\nYou can update the `status` from `active` to `disabled` only when providing an `errorMessage` that may be shown to the customer admin in Control Hub. \nTokens must be regularly updated before their expiration to maintain system uptime.",
"operationId": "Update a Data Source",
"requestBody": {
"content": {
"application/json": {
"schema": {
"properties": {
"audience": {
"description": "The audience field in the JWT token. Usually, the DAPs app name.",
"example": "MedDocVirtualAgent",
"type": "string"
},
"errorMessage": {
"description": "Error Message shown in Control Hub when status is set to `disabled`.",
"example": "down for maintenance",
"type": "string"
},
"nonce": {
"description": "Unique nonce used in the encryption of the JWT token.",
"example": "jeieu38udue83u398",
"type": "string"
},
"schemaId": {
"description": "The schema id used for the data exchange.",
"example": "78efc775-dccb-45ca-9acf-989a4a59f788",
"type": "string"
},
"status": {
"description": "The status of the Data Source; `active` or `disabled`.",
"example": "active",
"type": "string"
},
"subject": {
"description": "The subject field in the JWT token. Usually, an indication of the app's function",
"example": "callAudioData",
"type": "string"
},
"tokenLifetimeMinutes": {
"description": "The validity of the created token in minutes. Before the token expiration time, a new token must be provided, or Webex will stop delivering data after the token expiration. Must be equal or less to 1440.",
"example": 60,
"type": "number"
},
"url": {
"description": "The URL of the endpoint where Webex will send the data.",
"example": "https://www.byods.com/service1",
"type": "string"
}
},
"type": "object"
}
}
}
},
"summary": "Update a Data Source"
}
},
"/identity/organizations/{orgId}/v1/ArchivedUser/{useruuid}": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ArchiveUser"
},
"example": {
"schemas": [
"urn:scim:schemas:core:1.0",
"urn:scim:schemas:extension:cisco:commonidentity:1.0"
],
"userName": "test_user2@example.com",
"emails": [
{
"primary": true,
"type": "work",
"value": "test_user2@example.com"
}
],
"name": {
"givenName": "Mike",
"familyName": "Tang"
},
"organization": "410139c6-3bff-4404-9782-09a456ba2cae",
"id": "b96936c9-5b86-4a01-8969-e945c91b62f6",
"meta": {
"created": "2019-01-25T00:53:13.000Z",
"lastModified": "2019-01-25T00:53:13.000Z",
"location": "https://webexapis.com/identity/scim/410139c6-3bff-4404-9782-09a456ba2cae/v1/UserArchives/b96936c9-5b86-4a01-8969-e945c91b62f6",
"deleted": "2019-01-25T00:53:13.001Z"
},
"displayName": "Mike Tang"
}
}
}
},
"400": {
"description": "Bad Request: The request was invalid or cannot be processed. An accompanying error message explains the issue."
},
"401": {
"description": "Unauthorized: Authentication credentials were missing or invalid."
},
"403": {
"description": "Forbidden: The request was understood but access is denied."
},
"404": {
"description": "Not Found: The requested URI is invalid, or the resource (such as a user) does not exist. Also returned when the requested format is not supported for the method."
},
"405": {
"description": "Method Not Allowed: The request was made using an unsupported HTTP method."
},
"409": {
"description": "Conflict: The request could not be processed because it conflicts with an existing system rule. 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 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 indicate how many seconds to wait before retrying."
},
"428": {
"description": "Precondition Required: File(s) cannot be scanned for malware and must be force-downloaded."
},
"429": {
"description": "Too Many Requests: Too many requests have been sent in a given time and the request has been rate limited. A Retry-After header indicates how many seconds to wait before retrying."
},
"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. Try again later."
},
"503": {
"description": "Service Unavailable: The 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 Archive User",
"operationId": "getArchiveUser",
"description": "The `useruuid` is the unique identifier of a user in the system. It is assigned when the user is created and can be retrieved through **GET Users** API.
\n\n**Authorization**\n\nOAuth token issued by the Identity Broker.\n\nOne of the following OAuth scopes is required:\n\n- `identity:people_rw`.\n- `identity:people_read`.\n\nThe following administrators can use this API:\n\n- `Account in the specified organization with one of the following roles: id_full_admin, id_user_admin, id_readonly_admin`.\n- `Proxy account managing the specified organization with one of the following roles: id_full_admin, id_user_admin, id_readonly_admin`.\n\n
",
"tags": [
"Archive Users"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "The unique identifier for the organization.",
"required": true,
"example": "410139c6-3bff-4404-9782-09a456ba2cae",
"schema": {
"type": "string"
}
},
{
"name": "useruuid",
"in": "path",
"description": "The unique identifier for the user.",
"required": true,
"example": "b96936c9-5b86-4a01-8969-e945c91b62f6",
"schema": {
"type": "string"
}
}
]
}
},
"/identity/organizations/{orgId}/actions/getDomainVerificationToken": {
"post": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DomainVerificationToken"
},
"example": {
"domain": "cisco.com",
"token": "f5014515-6559-4a30-9d68-0deb028f27b7",
"verificationMethod": "DNS_TXT",
"url": "https://identity.webex.com/organization/bf732c85-68ca-4867-94e4-937286ad2fd4/v1/actions/DomainVerification/GetToken/invoke"
}
}
}
},
"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 Domain Verification Token",
"operationId": "Get Domain Verification Token",
"description": "This endpoint helps generate a token for a given domain within the specified organization. The user needs to add this token as a 'TXT' record to the DNS server.\n\n**Possible Error:**\n\n- 409: The request encountered a resource conflict. This error occurs if the domain is either claimed by another organization or by the same organization.\n\n**Authorization:**\n\nAn 'OAuth' token issued by the 'Identity Broker' is required to access this endpoint. The token must include one of the following scopes:\n\n- `Identity:Organization`\n\n- `identity:organizations_rw`\n\n**Administrator Roles:**\n\nThe following administrators can use this API:\n\n- `id_full_admin`",
"tags": [
"API - Domain Management"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "The Webex Identity-assigned organization identifier for a user's organization.",
"required": true,
"example": "bf732c85-68ca-4867-94e4-937286ad2fd4",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"domain": "cisco.com"
},
"schema": {
"$ref": "#/components/schemas/PostDomainVerificationToken"
}
}
}
}
}
},
"/identity/organizations/{orgId}/actions/verifyDomain": {
"post": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DomainVerification"
},
"example": {
"verifiedDomains": [
"cisco.com",
"webex.com"
],
"claimedDomains": [
"cisco.com",
"webex.com"
],
"url": "https://identity.webex.com/organization/bf732c85-68ca-4867-94e4-937286ad2fd4/v1/actions/DomainVerification/Verify/invoke"
}
}
}
},
"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": "Verify Domain",
"operationId": "Verify Domain",
"description": "This endpoint helps verify a given domain within the specified organization. This API verifies domain ownership by looking up and validating the 'TXT' record for the domain.\nOnce verified, domain enforcement will be applied to the organization. Any users in the organization whose email domain doesn't match one of the verified domains will be marked as transient.\n\nIf you want to verify and claim the domain, just set the 'claimDomain' parameter to true. By default, it's set to false, which will only verify the domain.\n\n**Possible Errors:**\n\n- 400: The request was a Bad Request. The domain can't be verified. This error happens if the user didn't request a token before trying to verify the domain.\n\n- 409: The request resulted in a resource conflict. This error occurs if the domain has already been claimed by another organization.\n\n**Authorization:**\n\nAn 'OAuth' token issued by the 'Identity Broker' is required to access this endpoint. The token must include one of the following scopes:\n\n- `Identity:Organization`\n\n- `identity:organizations_rw`\n\n**Administrator Roles:**\n\nThe following administrators can use this API:\n\n- `id_full_admin`",
"tags": [
"API - Domain Management"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "The Webex Identity-assigned organization identifier for a user's organization.",
"required": true,
"example": "bf732c85-68ca-4867-94e4-937286ad2fd4",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"domain": "cisco.com",
"claimDomain": false,
"reserveDomain": false
},
"schema": {
"$ref": "#/components/schemas/PostDomainVerification"
}
}
}
}
}
},
"/identity/organizations/{orgId}/actions/claimDomain": {
"post": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ClaimDomain"
}
}
}
},
"example": {
"data": [
{
"domain": "cisco.com",
"url": "https://identity.webex.com/organizations/bf732c85-68ca-4867-94e4-937286ad2fd4/v1/domains/ZXhhbXBsZTMuY29t"
}
]
}
}
}
},
"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": "Claim Domain",
"operationId": "Claim Domain",
"description": "This endpoint helps claim the given domain within the specified organization. The domain needs to be verified before it can be claimed.\n\n**Note**\n
\n\n**Authorization**\n\nOAuth token rendered by identity broker.\n\n
\n\nOne of the following OAuth scopes is required:\n\n- `identity:organizations_rw`\n\n- `identity:organizations_read`\n\n
",
"tags": [
"Identity Organization"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "Webex Identity assigned organization identifier.",
"required": true,
"example": "82adacf4-453f-4e2b-a406-2939fddcaad2",
"schema": {
"type": "string"
}
}
]
},
"patch": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetOrgResponse"
},
"example": {
"schemas": [
"urn:cisco:codev:identity:organization:core:1.0"
],
"id": "82adacf4-453f-4e2b-a406-2939fddcaad2",
"displayName": "Acme_New, Inc.",
"preferredLanguage": "en_US",
"meta": {
"created": "2021-05-13T15:51:09.736Z",
"lastModified": "2024-05-20T12:25:16.739Z",
"version": "W/\"67863100894\""
}
}
}
}
},
"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": "Update an organization",
"operationId": "Update an organization",
"description": "
\n\n**Authorization**\n\nOAuth token rendered by identity broker.\n\n
\n\nOne of the following OAuth scopes is required:\n\n- `identity:organizations_rw`\n\n
\n\nThe following administrators can use this API:\n\n- `id_full_admin`\n\n
\n\n**Usage**:\n\n1. Input JSON must contain schema: \"urn:cisco:codev:identity:organization:core:1.0\".",
"tags": [
"Identity Organization"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "Webex Identity assigned organization identifier.",
"required": true,
"example": "82adacf4-453f-4e2b-a406-2939fddcaad2",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"schemas": [
"urn:cisco:codev:identity:organization:core:1.0"
],
"displayName": "Acme_New, Inc.",
"preferredLanguage": "en_US"
},
"schema": {
"$ref": "#/components/schemas/updateOrgObject"
}
}
}
}
}
},
"/identity/organizations/{orgId}/users/{userId}/actions/generateOtp": {
"post": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GenerateOtp"
},
"example": {
"oneTimePassword": "283489",
"expiresIn": 604800
}
}
}
},
"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": "Generate OTP",
"operationId": "Generate OTP",
"description": "This API allows an admin to generate a One-Time Password (OTP) for user accounts with `userNameType` set as `partner-upn`. The OTP is used by users to log in to any Webex application, whereupon they are asked to change their password.\nThe OTP generated by this API has a default length of 6 digits and expires in 7 days.\n\nSeveral OTPs can be active for the same user. When the user successfully uses an OTP, all other OTPs are automatically revoked.\n\nThe creation of OTPs is logged in the [Admin Audit Events](https://developer.webex.com/docs/api/v1/admin-audit-events).\n\n**Possible Error:**\n\n- 403: The request was forbidden. OTP generation is restricted to users with a `userNameType` of `partner-upn`. This error occurs if the user does not meet the required criteria for OTP generation.\n\n**Authorization:**\n\nAn OAuth token issued by the Identity Broker is required to access this endpoint. The token must include one of the following scopes:\n\n- `Identity:one_time_password`\nor\n\n- `Identity:Config`\n\n**Administrator Roles:**\n\nThe following administrators have permission to use this API:\n\n- `Org Full Admin`: Can generate OTPs for non-email-type users in their organization.\n\n- `Partner Full Admin`: Can generate OTPs for User/Machine Accounts in Customer Orgs.\n\n- `Org User Admin`: Can generate OTPs for User/Machine Accounts within their organization.",
"tags": [
"Identity Organization"
],
"parameters": [
{
"name": "orgId",
"in": "path",
"description": "The Webex Identity-assigned organization identifier for a user's organization.",
"required": true,
"example": "bf732c85-68ca-4867-94e4-937286ad2fd4",
"schema": {
"type": "string"
}
},
{
"name": "userId",
"in": "path",
"description": "The Common Identity-assigned user identifier for an existing user (`entryUUID`).",
"required": true,
"example": "73e0e4f2-66f6-417a-b074-d473ed537f58",
"schema": {
"type": "string"
}
}
]
}
},
"/events": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {
"Link": {
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EventCollectionResponse"
},
"example": {
"items": [
{
"id": "Y2lzY29zcGFyazovL3VzL0VWRU5UL2JiY2ViMWFkLTQzZjEtM2I1OC05MTQ3LWYxNGJiMGM0ZDE1NAo",
"resource": "messages",
"type": "created",
"appId": "null",
"actorId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"orgId": "OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh",
"created": "2016-05-16T21:34:59.324Z",
"data": {
"id": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvOTJkYjNiZTAtNDNiZC0xMWU2LThhZTktZGQ1YjNkZmM1NjVk",
"roomId": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0",
"roomType": "group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jZTg2MWZiYS02ZTJmLTQ5ZjktOWE4NC1iMzU0MDA4ZmFjOWU",
"text": "PROJECT UPDATE - A new project plan has been published on Box: http://box.com/s/lf5vj. The PM for this project is Mike C. and the Engineering Manager is Jane W.",
"personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"personEmail": "matt@example.com",
"meetingId": "16ce696f75844d24b2d4fab04b4419af_I_183979003076423608",
"creatorId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YWE2ZGE5OS0xYzdlLTQ4MWItODY3YS03MWY2NTIwNDk0MzM",
"transcriptionEnabled": "yes",
"recordingEnabled": "yes",
"hasPostMeetingsChat": "yes",
"corelationId": "fdda8613-d34b-424c-8c6a-44ff2e19379c",
"callType": "SIP_ENTERPRISE",
"userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZjEwMTU1NC04ZGJjLTQyMmUtOGEzZC1kYTk1YTI3NWZlNzU",
"userType": "User",
"callDirection": "ORIGINTATING",
"isCallAnswered": "true",
"callDurationSeconds": "192",
"callStartTime": "2023-02-08T06:12:43.976Z",
"callAnswerTime": "2023-02-08T06:12:47.012Z",
"callTransferTime": "2023-02-08T06:15:19.112Z",
"callingNumber": "910481234",
"callingLineId": "211",
"calledNumber": "4089671221",
"calledLineId": "219",
"dialedDigits": "123",
"callRedirectingNumber": "",
"callRedirectedReason": "",
"created": "2016-05-16T21:34:59.324Z",
"type": "direct",
"breakoutSessionId": "d66a4a90-4f50-11ef-bc94-f5c71646dc71",
"recipients": [
{
"personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lOGYwOTIwOC00ZjUxLTExZWYtOTQ4My1iYTA3NjE2MzY4NmQ",
"personEmail": "johndoe@simplistic.com",
"guestDisplayName": "John Wayne",
"guestEmail": "jwayne@mailinator.com"
}
]
}
}
]
}
}
}
},
"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 Events",
"operationId": "List Events",
"description": "List events in your organization. Several query parameters are available to filter the events returned in the response.\n\nLong result sets will be split into [pages](/docs/basics#pagination).",
"tags": [
"Events"
],
"parameters": [
{
"name": "resource",
"in": "query",
"description": "List events with a specific resource type.",
"example": "messages",
"schema": {
"type": "string",
"enum": [
"attachmentActions",
"businessTexts",
"call_records",
"convergedRecordings",
"file_transcodings",
"files",
"meetingMessages",
"meetings",
"meetingTranscripts",
"memberships",
"messages",
"rooms",
"tabs"
]
}
},
{
"name": "type",
"in": "query",
"description": "List events with a specific event type.",
"example": "created",
"schema": {
"type": "string",
"enum": [
"created",
"updated",
"deleted",
"ended"
]
}
},
{
"name": "actorId",
"in": "query",
"description": "List events performed by this person, by person ID.",
"example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80MDNlZmUwNy02Yzc3LTQyY2UtOWI4NC1lZjhjYzY1ZDA4NDI",
"schema": {
"type": "string"
}
},
{
"name": "from",
"in": "query",
"description": "List events which occurred after a specific date and time.",
"example": "2018-01-01T00:00:00.000Z",
"schema": {
"type": "string"
}
},
{
"name": "to",
"in": "query",
"description": "List events that occurred before a specific date and time. If not specified, events up to the present time will be listed. Cannot be set to a future date relative to the current time.",
"example": "2018-01-02T00:00:00.000Z",
"schema": {
"type": "string"
}
},
{
"name": "max",
"in": "query",
"description": "Limit the maximum number of events in the response. Value must be between 1 and 1000, inclusive.",
"example": "100",
"schema": {
"type": "number",
"default": 100
}
},
{
"name": "serviceType",
"in": "query",
"description": "List events for a specific service type. This parameter is only applicable and mandatory when resource is set to `convergedRecordings`.",
"example": "calling",
"schema": {
"type": "string",
"enum": [
"calling"
]
}
}
]
}
},
"/events/{eventId}": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Event"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL0VWRU5UL2JiY2ViMWFkLTQzZjEtM2I1OC05MTQ3LWYxNGJiMGM0ZDE1NAo",
"resource": "messages",
"type": "created",
"appId": "null",
"actorId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"orgId": "OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh",
"created": "2016-05-16T21:34:59.324Z",
"data": {
"id": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvOTJkYjNiZTAtNDNiZC0xMWU2LThhZTktZGQ1YjNkZmM1NjVk",
"roomId": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0",
"roomType": "group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jZTg2MWZiYS02ZTJmLTQ5ZjktOWE4NC1iMzU0MDA4ZmFjOWU",
"text": "PROJECT UPDATE - A new project plan has been published on Box: http://box.com/s/lf5vj. The PM for this project is Mike C. and the Engineering Manager is Jane W.",
"personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"personEmail": "matt@example.com",
"meetingId": "16ce696f75844d24b2d4fab04b4419af_I_183979003076423608",
"creatorId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YWE2ZGE5OS0xYzdlLTQ4MWItODY3YS03MWY2NTIwNDk0MzM",
"transcriptionEnabled": "yes",
"recordingEnabled": "yes",
"hasPostMeetingsChat": "yes",
"corelationId": "fdda8613-d34b-424c-8c6a-44ff2e19379c",
"callType": "SIP_ENTERPRISE",
"userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZjEwMTU1NC04ZGJjLTQyMmUtOGEzZC1kYTk1YTI3NWZlNzU",
"userType": "User",
"callDirection": "ORIGINTATING",
"isCallAnswered": "true",
"callDurationSeconds": "192",
"callStartTime": "2023-02-08T06:12:43.976Z",
"callAnswerTime": "2023-02-08T06:12:47.012Z",
"callTransferTime": "2023-02-08T06:15:19.112Z",
"callingNumber": "910481234",
"callingLineId": "211",
"calledNumber": "4089671221",
"calledLineId": "219",
"dialedDigits": "123",
"callRedirectingNumber": "",
"callRedirectedReason": "",
"created": "2016-05-16T21:34:59.324Z",
"type": "direct",
"breakoutSessionId": "d66a4a90-4f50-11ef-bc94-f5c71646dc71",
"recipients": [
{
"personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lOGYwOTIwOC00ZjUxLTExZWYtOTQ4My1iYTA3NjE2MzY4NmQ",
"personEmail": "johndoe@simplistic.com",
"guestDisplayName": "John Wayne",
"guestEmail": "jwayne@mailinator.com"
}
]
}
}
}
}
},
"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 Event Details",
"operationId": "Get Event Details",
"description": "Shows details for an event, by event ID.\n\nSpecify the event ID in the `eventId` parameter in the URI.",
"tags": [
"Events"
],
"parameters": [
{
"name": "eventId",
"in": "path",
"description": "The unique identifier for the event.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL0VWRU5UL2JiY2ViMWFkLTQzZjEtM2I1OC05MTQ3LWYxNGJiMGM0ZDE1NAo",
"schema": {
"type": "string"
}
}
]
}
},
"/groups": {
"post": {
"responses": {
"201": {
"description": "Created",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupResponse"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvMjUxMDRiZTAtZjg3NC00MzQzLTk2MDctZGYwMmRmMzdiNWMxOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"created": "2022-02-17T02:13:29.706Z",
"lastModified": "2022-02-17T02:13:29.706Z",
"memberSize": 1,
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"type": "user",
"displayName": "Jane Smith"
}
]
}
}
}
},
"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": "Create a Group",
"operationId": "Create a Group",
"description": "Create a new group for a given organization. The group may optionally be created with group members.",
"tags": [
"Groups"
],
"parameters": [],
"requestBody": {
"content": {
"application/json": {
"example": {
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"description": "Salas Group in San Jose",
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM"
}
]
},
"schema": {
"$ref": "#/components/schemas/PostGroup"
}
}
}
}
},
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupsCollectionResponse"
},
"example": {
"totalResults": 3,
"startIndex": 1,
"itemsPerPage": 10,
"groups": [
{
"id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvMjUxMDRiZTAtZjg3NC00MzQzLTk2MDctZGYwMmRmMzdiNWMxOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"created": "2022-02-17T02:13:29.706Z",
"lastModified": "2022-02-17T02:13:29.706Z",
"memberSize": 1,
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"type": "user",
"displayName": "Jane Smith"
}
]
}
]
}
}
}
},
"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 and Search Groups",
"operationId": "List and Search Groups",
"description": "List groups in your organization.\n\n* Set the `includeMembers` parameter to `true` to return group members. The total number of members returned is limited to 500.\n\n* Use the `startIndex` and `count` parameters to page through result set.\n\n* To search for a specific group use the `filter` parameter.\n\n* Use `sortBy` parameter to sort the responses by `id` or `displayName`.",
"tags": [
"Groups"
],
"parameters": [
{
"name": "orgId",
"in": "query",
"description": "List groups in this organization. Only admin users of another organization (such as partners) may use this parameter.",
"example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE",
"schema": {
"type": "string"
}
},
{
"name": "filter",
"in": "query",
"description": "Searches the group by `displayName` with an operator and a value. The available operators are `eq` (equal) and `sw` (starts with). Only `displayName` can be used to filter results.",
"example": "displayName eq \"Marketing Department\"",
"schema": {
"type": "string"
}
},
{
"name": "attributes",
"in": "query",
"description": "The attributes to return.",
"example": "displayName",
"schema": {
"type": "string"
}
},
{
"name": "sortBy",
"in": "query",
"description": "Sort the results based by group `displayName`.",
"example": "displayName",
"schema": {
"type": "string"
}
},
{
"name": "sortOrder",
"in": "query",
"description": "Sort results alphabetically by group display name, in ascending or descending order.",
"example": "ascending",
"schema": {
"type": "string"
}
},
{
"name": "includeMembers",
"in": "query",
"description": "Optionally return group members in the response. The maximum number of members returned is 500.",
"example": "false",
"schema": {
"type": "boolean"
}
},
{
"name": "startIndex",
"in": "query",
"description": "The index to start for group pagination.",
"example": "1",
"schema": {
"type": "number"
}
},
{
"name": "count",
"in": "query",
"description": "Specifies the desired number of search results per page.",
"example": "100",
"schema": {
"type": "number"
}
}
]
}
},
"/groups/{groupId}": {
"patch": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupResponse"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvMjUxMDRiZTAtZjg3NC00MzQzLTk2MDctZGYwMmRmMzdiNWMxOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"created": "2022-02-17T02:13:29.706Z",
"lastModified": "2022-02-17T02:13:29.706Z",
"memberSize": 1,
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"type": "user",
"displayName": "Jane Smith"
}
]
}
}
}
},
"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": "Update a Group",
"operationId": "Update a Group",
"description": "Update the group details, by ID.\n\nSpecify the group ID in the `groupId` parameter in the URI.",
"tags": [
"Groups"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "A unique identifier for the group.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvYzY1ZjdkODUtYjY5MS00MmI4LWEyMGItODUzMDY0ZTFkNThiOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"displayName": "New Sales Group",
"description": "Sales Group in LA",
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"operation": "add"
}
]
},
"schema": {
"$ref": "#/components/schemas/PatchGroup"
}
}
}
}
},
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupResponse"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvMjUxMDRiZTAtZjg3NC00MzQzLTk2MDctZGYwMmRmMzdiNWMxOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"created": "2022-02-17T02:13:29.706Z",
"lastModified": "2022-02-17T02:13:29.706Z",
"memberSize": 1,
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"type": "user",
"displayName": "Jane Smith"
}
]
}
}
}
},
"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 Group Details",
"operationId": "Get Group Details",
"description": "Get details for a group, by ID.\n\nOptionally, the members may be retrieved with this request. The maximum number of members returned is 500.",
"tags": [
"Groups"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "A unique identifier for the group.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvYzY1ZjdkODUtYjY5MS00MmI4LWEyMGItODUzMDY0ZTFkNThiOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"schema": {
"type": "string"
}
},
{
"name": "includeMembers",
"in": "query",
"description": "Include the members as part of the response.",
"example": "true",
"schema": {
"type": "boolean",
"default": "false"
}
}
]
},
"delete": {
"responses": {
"204": {
"description": "No Content",
"headers": {},
"content": {}
},
"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": "Delete a Group",
"operationId": "Delete a Group",
"description": "Remove a group from the system.\n\nSpecify the group ID in the `groupId` parameter in the URI.",
"tags": [
"Groups"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "A unique identifier for the group.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
"schema": {
"type": "string"
}
}
]
}
},
"/groups/{groupId}/members": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupResponse"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvMjUxMDRiZTAtZjg3NC00MzQzLTk2MDctZGYwMmRmMzdiNWMxOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"displayName": "Sales Group",
"orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDhhZGI4MS0yOGY5LTRhYjUtYjJkNi1lOWI0OTRlNzJhMDY",
"created": "2022-02-17T02:13:29.706Z",
"lastModified": "2022-02-17T02:13:29.706Z",
"memberSize": 1,
"members": [
{
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOTUzOTdhMi03MTU5LTRjNTgtYTBiOC00NmQ2ZWZlZTdkMTM",
"type": "user",
"displayName": "Jane Smith"
}
]
}
}
}
},
"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 Group Members",
"operationId": "Get Group Members",
"description": "Gets the members of a group.\n\n* The default maximum members returned is 500.\n\n* Control parameters is available to page through the members and to control the size of the results.",
"tags": [
"Groups"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "A unique identifier for the group.",
"required": true,
"example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvYzY1ZjdkODUtYjY5MS00MmI4LWEyMGItODUzMDY0ZTFkNThiOjM0OGFkYjgxLTI4ZjktNGFiNS1iMmQ2LWU5YjQ5NGU3MmEwNg",
"schema": {
"type": "string"
}
},
{
"name": "startIndex",
"in": "query",
"description": "The index to start for group pagination.",
"example": "1",
"schema": {
"type": "number"
}
},
{
"name": "count",
"in": "query",
"description": "Non-negative integer that specifies the desired number of search results per page. Maximum value for the count is 500.",
"example": "100",
"schema": {
"type": "number"
}
}
]
}
},
"/guests/token": {
"post": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Guest"
},
"example": {
"id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zNzlhNWQ4ZC1hNTE4LTQ3NmQtYmY1NC1mZmE5MWQ3OWM4MTI",
"subject": "PersonNo#1",
"displayName": "Person of Interest",
"email": "1ad14c30-59a6-31a7-b345-963e3d167e10@appid.ciscospark.com",
"accessToken": "eyJhbGciOiJSUzI1NiJ9.eyJkw1zx5iIDv7FL3cWQ_JEjehqtPVRmFf572q7RZwSIZgQRziAw",
"expiresIn": 64799
}
}
}
},
"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": "Create a Guest",
"operationId": "Create a Guest",
"description": "Create a new token for a single guest user. The Service App that creates the guest must have the scope `guest-issuer:write`.\n\nGuests are implicitly created by retrieving the guest access token.\n\nRepeated calls to this API with the same `subject` will create additional tokens without invalidating previous ones. Tokens are valid until the `expiresIn`.\n\nGuests can be renamed by supplying the same `subject` and changing the `displayName.`\n\nTo retrieve a new token for an existing guest, please provide the existing guest's `subject`. Tokens are valid until `expiresIn`.",
"tags": [
"Guest Management"
],
"parameters": [],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"subject",
"displayName"
],
"properties": {
"subject": {
"type": "string",
"example": "ExternalGuestIdentifier",
"description": "The unique and external identifier of the guest."
},
"displayName": {
"type": "string",
"example": "John Doe",
"description": "The display name shown in the Webex application."
}
}
}
}
}
}
}
},
"/guests/count": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"text/plain": {
"schema": {
"type": "object",
"properties": {
"112": {
"type": "number",
"description": "the number of guests"
}
}
}
}
}
},
"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 Guest Count",
"operationId": "Get Guest Count",
"description": "To retrieve the number of guests, the scopes `guest-issuer:read` or `guest-issuer:write` are needed.",
"tags": [
"Guest Management"
],
"parameters": []
}
},
"/v1/analytics/messagingMetrics/dailyTotals": {
"get": {
"responses": {
"200": {
"description": "OK",
"headers": {},
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"startDate": {
"type": "string",
"example": "2020-08-01",
"description": "UTC start date of the data set."
},
"endDate": {
"type": "string",
"example": "2020-08-03",
"description": "UTC end date of the data set."
},
"metrics": {
"type": "object",
"properties": {
"dates": {
"type": "string",
"example": "['2020-08-01','2020-08-02']",
"description": "An Array containing the UTC dates for which the data is returned."
},
"dailyActiveUsers": {
"type": "string",
"example": "[200, 300]",
"description": "An array containing the aggregated values for each day for which the data is returned."
},
"totalMessagesSent": {
"type": "string",
"example": "[2000, 3000]"
},
"deskTopMessagesSent": {
"type": "string",
"example": "[289, 456]"
},
"mobileMessagesSent": {
"type": "string",
"example": "[122, 233]"
},
"totalActiveSpaces": {
"type": "string",
"example": "[2,3]"
},
"groupActiveSpaces": {
"type": "string",
"example": "[3,4]"
},
"one2oneActiveSpaces": {
"type": "string",
"example": "[5,6]"
},
"video": {
"type": "string"
},
"sharing": {
"type": "object",
"properties": {
"totalFilesShared": {
"type": "string",
"example": "[1,2]"
},
"fileShareSize": {
"type": "string",
"example": "`[6,7]` ## Bytes"
}
}
},
"recording": {
"type": "string"
},
"audio": {
"type": "string"
}
}
}
}
},
"example": {
"startDate": "2020-08-01",
"endDate": "2020-08-03",
"metrics": {
"dates": "['2020-08-01','2020-08-02']",
"dailyActiveUsers": "[200, 300]",
"totalMessagesSent": "[2000, 3000]",
"deskTopMessagesSent": "[289, 456]",
"mobileMessagesSent": "[122, 233]",
"totalActiveSpaces": "[2,3]",
"groupActiveSpaces": "[3,4]",
"one2oneActiveSpaces": "[5,6]",
"video": "",
"sharing": {
"totalFilesShared": "[1,2]",
"fileShareSize": "`[6,7]` ## Bytes"
},
"recording": "",
"audio": ""
}
}
}
}
},
"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": "Historical Data related to Messaging",
"operationId": "Historical Data related to Messaging",
"description": "Returns daily aggregates of various metrics related to Webex messaging.\n\n