openapi: 3.0.0 info: title: Webex Admin Address Book Licenses API version: 1.0.0 description: The Webex Admin APIs provide comprehensive programmatic access to administrative functions for managing Webex organizations, users, licenses, and settings. These APIs enable automation of user provisioning, license assignment, compliance management, and audit event retrieval. Administrators can integrate with enterprise identity systems, enforce security policies, monitor usage, and streamline onboarding/offboarding processes. The APIs support granular control over organizational resources, making them ideal for large-scale deployments and custom admin tooling. tags: - name: Licenses paths: /licenses: get: responses: '200': description: OK headers: {} content: application/json: schema: $ref: '#/components/schemas/LicenseCollectionResponse' example: items: - id: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh name: Meeting - Webex Meeting Center totalUnits: 50 consumedUnits: 5 consumedByUsers: 5 consumedByWorkspaces: 0 subscriptionId: Sub-hydraOct26a siteUrl: site1-example.webex.com siteType: Control Hub managed site '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 Licenses operationId: List_Licenses description: 'List all licenses for a given organization. If no `orgId` is specified, the default is the organization of the authenticated user. Response properties that are not applicable to the license will not be present in the response.' tags: - Licenses parameters: - name: orgId in: query description: List licenses for this organization. example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE schema: type: string /licenses/{licenseId}: get: responses: '200': description: OK headers: Link: schema: type: string content: application/json: schema: $ref: '#/components/schemas/LicensewithUsers' example: id: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh name: Meeting - Webex Meeting Center totalUnits: 50 consumedUnits: 5 consumedByUsers: 5 consumedByWorkspaces: 0 subscriptionId: Sub-hydraOct26a siteUrl: site1-example.webex.com siteType: Control Hub managed site users: - id: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY type: INTERNAL displayName: John Andersen email: john.andersen@example.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 License Details operationId: Get_License_Details description: 'Shows details for a license, by ID. Specify the license ID in the `licenseId` parameter in the URI. Use the optional query parameter `includeAssignedTo` to get a list of all objects that are assigned with the license. The objects include but not limited to, users including external users. Long result sets will be split into [pages](/docs/basics#pagination). Response properties that are not applicable to the license will not be present in the response.' tags: - Licenses parameters: - name: licenseId in: path description: The unique identifier for the license. required: true example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh schema: type: string - name: includeAssignedTo in: query description: The type of object to whom the license is assigned to. example: user schema: type: string enum: - user - name: next in: query description: List the next set of users. Applicable only if `includeAssignedTo` is populated. example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0VfVVNFUl9QQUdJTkcvT1RaaFltTXlZV0V0TTJSall5MHhNV1UxTFdFeE5USXRabVV6TkRneE9XTmtZemxo schema: type: string - name: limit in: query description: A limit on the number of users to be returned in the response. Applicable only if `includeAssignedTo` is populated. limit cannot be more than 300. example: 0 schema: type: number default: 300 /licenses/users: patch: responses: '200': description: OK headers: {} content: application/json: schema: $ref: '#/components/schemas/UserLicensesResponse' example: orgId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE personId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY email: john.andersen@example.com licenses: - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LTIzNDItMGY0NTU2YWRlZXJm siteUrls: - siteUrl: mysite.webex.com accountType: attendee - siteUrl: myhostsite.webex.com accountType: host '206': description: 'Partial Content: Some licenses were successfully assigned, but others could not be assigned due to various constraints or errors. Compare the returned licenses with the requested licenses to determine which ones failed.' headers: {} content: application/json: schema: $ref: '#/components/schemas/UserLicensesResponse' example: orgId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE personId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY email: john.andersen@example.com licenses: - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh siteUrls: - siteUrl: mysite.webex.com accountType: attendee '400': description: 'Bad Request: The request was invalid or cannot be otherwise served. Specific error codes indicate license assignment issues.' content: application/json: schema: $ref: '#/components/schemas/LicenseError' examples: locationNotFound: summary: Location not found value: message: Unable to find location errors: - errorCode: 400 description: Unable to find location. trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f licenseNotRecognized: summary: License not recognized value: message: License not recognized errors: - errorCode: 400000 description: License not recognized {licenses} trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f callingLicenseDowngrade: summary: Webex Calling license downgrade not allowed value: message: License assignment failed errors: - errorCode: 400112 description: 'Changing a user''s Webex Calling license from Professional to Standard is not allowed. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f messengerLicenseManagement: summary: Messenger license management not supported value: message: License management not supported errors: - errorCode: 400118 description: User management of Messenger license {licenses} is not supported trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f invalidSiteUrl: summary: Invalid attendee site URLs value: message: Invalid site URL errors: - errorCode: 400216 description: 'Request contains invalid attendee siteUrls: {siteUrl}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f conflictingCallingLicenses: summary: Conflicting Webex Calling licenses value: message: License conflict errors: - errorCode: 400404 description: 'User cannot have both Webex Calling Professional and Standard License together. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f callingStandardAttendantConflict: summary: Webex Calling Standard and Attendant Console conflict value: message: License conflict errors: - errorCode: 400406 description: 'User cannot have both Webex Calling Standard and Webex Attendant Console licenses together. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f callingStandardCXEssentialConflict: summary: Webex Calling Standard and CX Essential conflict value: message: License conflict errors: - errorCode: 400407 description: 'User cannot have both Webex Calling Standard and CX Essential licenses together. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f attendantConsolePrerequisite: summary: Webex Attendant Console prerequisite missing value: message: License prerequisite missing errors: - errorCode: 400408 description: 'User needs Webex Calling Professional license to be assigned before assigning Webex Attendant Console: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f cxEssentialDowngrade: summary: CX Essential to Webex Calling Standard downgrade not allowed value: message: License downgrade not allowed errors: - errorCode: 400410 description: 'Changing a user''s license from CX Essential to Webex Calling Standard is not allowed. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f missingCallingProperties: summary: Missing calling properties value: message: License properties missing errors: - errorCode: 400411 description: 'Each Webex Calling license should contain its own calling properties. The following license(s) do not have properties: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f exclusiveLicenseConflict: summary: Exclusive license conflict value: message: License conflict errors: - errorCode: 400413 description: 'Could not apply the following license(s): {licenses} as the user can be assigned only one of licenses with the offer code from the list:' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f freeMessagingPrerequisite: summary: Free teams messaging prerequisite for paid messaging value: message: License prerequisite missing errors: - errorCode: 700003 description: 'Free teams messaging mandatory for paid teams messaging license. The following license could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f freeMeetingPrerequisite: summary: Free teams meeting prerequisite for paid meeting value: message: License prerequisite missing errors: - errorCode: 700004 description: 'Free teams meeting mandatory for paid teams meeting license. The following license could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f messagingPrerequisiteForMeeting: summary: Free teams messaging prerequisite for meeting value: message: License prerequisite missing errors: - errorCode: 700005 description: 'Free teams messaging mandatory for teams meeting license. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f screenShareImplicit: summary: Screen Share license cannot be removed value: message: License removal not allowed errors: - errorCode: 700006 description: Screen Share {licenses} is implicitly assigned and cannot be removed trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f '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: Assign Licenses to Users operationId: Assign_Licenses_to_Users description: 'Assign licenses and attendee `siteUrls` to existing users. Only an admin can assign licenses. Only existing users can be assigned a license. Assign meeting licenses to users outside your organization (Status will be pending until the user accepts the invite) At least one of the following body parameters is required to assign license to the user: `email`, `personId`. For Calling license assignment, properties `phoneNumber` or `extension` are required. If `phoneNumber` is not provided then `locationId` is mandatory. When assigning licenses and attendee siteUrls to a user who does not belong to the organization, the licenses and siteUrls remain in pending state until the user accepts them. The `pendingLicenses` and `pendingSiteUrls` are part of the response.' tags: - Licenses parameters: [] requestBody: content: application/json: example: email: john.andersen@example.com personId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY orgId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE licenses: - id: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh operation: add properties: locationId: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1 phoneNumber: '+14085267209' extension: '133' - id: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LTU2eTctMGY0NTU2YWRleWhu operation: remove - id: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LTIzNDItMGY0NTU2YWRlZXJm operation: add siteUrls: - siteUrl: mysite.webex.com accountType: attendee operation: add schema: $ref: '#/components/schemas/PatchUserLicenses' components: schemas: UserLicensesResponse: type: object properties: orgId: type: string example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE description: The ID of the organization to which this user belongs. personId: type: string example: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY description: A unique identifier for the user. email: type: string example: john.andersen@example.com description: The email address of this user. licenses: type: array items: type: string example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LTIzNDItMGY0NTU2YWRlZXJm description: An array of license strings that are assigned to this user. siteUrls: type: array items: $ref: '#/components/schemas/SiteResponse' description: An array of `siteUrls` and their `accountType` that are assigned to this user. pendingLicenses: type: array items: type: string example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYWJj,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWFiY2Rl description: An array of license strings that are in pending state. This is only applicable to users outside the organization. pendingSiteUrls: type: array items: $ref: '#/components/schemas/SiteResponse' description: An array of `siteUrls` and their `accountType` that are in pending state. This is only applicable to users outside the organization. Users: type: object properties: id: type: string example: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY description: A unique identifier for the user. type: type: string enum: - INTERNAL - EXTERNAL description: "Indicates if the user is internal or external to the organization.\n * `INTERNAL` - User resides in the license-owned organization.\n * `EXTERNAL` - User resides outside the license-owned organization.\n" displayName: type: string example: John Andersen description: The full name of the user. email: type: string example: john.andersen@example.com description: Email address of the user. SiteResponse: type: object properties: siteUrl: type: string example: mysite.webex.com description: '`siteUrl` assigned to the user.' accountType: type: string enum: - attendee - host description: "Account Type of the site.\n * `attendee` - Attendee account on the site.\n * `host` - Host account on the site.\n" License: type: object properties: id: type: string example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh description: A unique identifier for the license. name: type: string example: Meeting - Webex Meeting Center description: Name of the licensed feature. totalUnits: type: number example: 50 description: Total number of license units allocated. consumedUnits: type: number example: 5 description: Total number of license units consumed. consumedByUsers: type: number example: 5 description: Total number of license units consumed by users. consumedByWorkspaces: type: number description: Total number of license units consumed by workspaces. subscriptionId: type: string example: Sub-hydraOct26a description: The subscription ID associated with this license. This ID is used in other systems, such as Webex Control Hub. siteUrl: type: string example: site1-example.webex.com description: The Webex Meetings site associated with this license. siteType: type: string enum: - Control Hub managed site - Linked site - Site Admin managed site description: "The type of site associated with this license.\n * `Control Hub managed site` - The site is managed by Webex Control Hub.\n * `Linked site` - The site is a linked site.\n * `Site Admin managed site` - The site is managed by Site Administration.\n" LicenseCollectionResponse: type: object properties: items: type: array items: $ref: '#/components/schemas/License' ErrorResponse: type: object properties: message: type: string description: A human readable description of the error. errors: type: array items: $ref: '#/components/schemas/ErrorDetail' description: An array of error details. trackingId: type: string description: A unique identifier to help with debugging. LicensewithUsers: type: object properties: id: type: string example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh description: A unique identifier for the license. name: type: string example: Meeting - Webex Meeting Center description: Name of the licensed feature. totalUnits: type: number example: 50 description: Total number of license units allocated. consumedUnits: type: number example: 5 description: Total number of license units consumed. consumedByUsers: type: number example: 5 description: Total number of license units consumed by users. consumedByWorkspaces: type: number description: Total number of license units consumed by workspaces. subscriptionId: type: string example: Sub-hydraOct26a description: The subscription ID associated with this license. This ID is used in other systems, such as Webex Control Hub. siteUrl: type: string example: site1-example.webex.com description: The Webex Meetings site associated with this license. siteType: type: string enum: - Control Hub managed site - Linked site - Site Admin managed site description: "The type of site associated with this license.\n * `Control Hub managed site` - The site is managed by Webex Control Hub.\n * `Linked site` - The site is a linked site.\n * `Site Admin managed site` - The site is managed by Site Administration.\n" users: type: array items: $ref: '#/components/schemas/Users' description: A list of users to whom the license is assigned to. LicenseError: allOf: - $ref: '#/components/schemas/ErrorResponse' example: message: License assignment failed errors: - errorCode: 400112 description: 'Changing a user''s Webex Calling license from Professional to Standard is not allowed. The following license(s) could not be applied as requested: {licenses}' trackingId: NA_88b8b4ce-6338-4d3a-8d6c-22b37e62354f LicenseRequest: type: object required: - id properties: id: type: string example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh description: A unique identifier for the license. operation: type: string enum: - remove - add description: "Operation type. The default operation is `add` if no operation is specified.\n * `remove` - Remove the license from the user\n * `add` - Assign the license to the user\n" properties: $ref: '#/components/schemas/LicenseProperties' LicenseProperties: type: object properties: locationId: type: string example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1 description: The ID of the location for this user. Applicable to Webex Calling license. phoneNumber: type: string example: '14085267209' description: Work phone number for the user. Applicable to Webex Calling license. extension: type: string example: '133' description: Webex Calling extension of the user. Applicable to Webex Calling license. ErrorDetail: type: object properties: errorCode: type: integer description: A specific error code identifying the type of error. enum: - 400 - 400000 - 400112 - 400118 - 400216 - 400404 - 400406 - 400407 - 400408 - 400410 - 400411 - 400413 - 700003 - 700004 - 700005 - 700006 description: type: string description: 'A detailed description of the specific error. Error descriptions by code: * 400: Unable to find location. * 400000: License not recognized {licenses} * 400112: Changing a user''s Webex Calling license from Professional to Standard is not allowed. The following license(s) could not be applied as requested: {licenses} * 400118: User management of Messenger license {licenses} is not supported * 400216: Request contains invalid attendee siteUrls: {siteUrl} * 400404: User cannot have both Webex Calling Professional and Standard License together. The following license(s) could not be applied as requested: {licenses} * 400406: User cannot have both Webex Calling Standard and Webex Attendant Console licenses together. The following license(s) could not be applied as requested: {licenses} * 400407: User cannot have both Webex Calling Standard and CX Essential licenses together. The following license(s) could not be applied as requested: {licenses} * 400408: User needs Webex Calling Professional license to be assigned before assigning Webex Attendant Console: {licenses} * 400410: Changing a user''s license from CX Essential to Webex Calling Standard is not allowed. The following license(s) could not be applied as requested: {licenses} * 400411: Each Webex Calling license should contain its own calling properties. The following license(s) do not have properties: {licenses} * 400413: Could not apply the following license(s): {licenses} as the user can be assigned only one of licenses with the offer code from the list: * 700003: Free teams messaging mandatory for paid teams messaging license. The following license could not be applied as requested: {licenses} * 700004: Free teams meeting mandatory for paid teams meeting license. The following license could not be applied as requested: {licenses} * 700005: Free teams messaging mandatory for teams meeting license. The following license(s) could not be applied as requested: {licenses} * 700006: Screen Share {licenses} is implicitly assigned and cannot be removed' PatchUserLicenses: type: object properties: email: type: string example: john.andersen@example.com description: Email address of the user. personId: type: string example: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY description: A unique identifier for the user. orgId: type: string example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE description: The ID of the organization to which the licenses and siteUrls belong. If not specified, the organization ID from the OAuth token is used. licenses: type: array items: $ref: '#/components/schemas/LicenseRequest' description: An array of licenses to be assigned to the user. siteUrls: type: array items: $ref: '#/components/schemas/SiteUrlsRequest' description: An array of siteUrls to be assigned to the user. SiteUrlsRequest: type: object required: - siteUrl - accountType properties: siteUrl: type: string example: mysite.webex.com description: Attendee access on the site. accountType: type: string enum: - attendee description: "Account type. Only `attendee` type is supported. For host account, remove attendee and assign the license on that site.\n * `attendee` - Attendee role on the siteUrl\n" operation: type: string enum: - remove - add description: "Operation type. The default operation is `add` if no operation is specified.\n * `remove` - Remove the attendee role from the user.\n * `add` - Add the attendee role to the user.\n" securitySchemes: oauth2: flows: authorizationCode: authorizationUrl: / scopes: {} tokenUrl: / type: oauth2 bearer-key: type: http description: e.g. Bearer YOUR_AUTHORIZATION_TOKEN scheme: bearer bearerFormat: JWT bearerAuth: type: oauth2 description: OAuth 2.0 Bearer token authentication flows: authorizationCode: authorizationUrl: https://webexapis.com/v1/authorize tokenUrl: https://webexapis.com/v1/access_token scopes: spark:applications_token: Create access tokens for Service Apps