Webex Licenses API

The Licenses API from Webex — 3 operation(s) for licenses.

OpenAPI Specification

webex-licenses-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Webex Licenses API
  version: 1.0.0
  description: 'Operations tagged Licenses across 2 of this provider''s published API definitions: webex-admin-openapi.json,
    webex-licenses-api-openapi.yml. Each path carries the servers of the definition it was published in.'
  x-provenance:
    method: harvested
    authored_by: Cisco Webex
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
    derived_view: Per-tag view of webex-admin-openapi.json, the provider's source document. Operations and schemas are the
      provider's, unmodified; only the partition is ours.
    derived_from: webex-admin-openapi.json
    operation_coverage: 3/3
  x-evidence:
  - type: source
    url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-admin.json
  - type: raw
    url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-admin.json
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:
    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.
    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"
    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.
    LicenseCollectionResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/License'
    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"
    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
    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.
    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.
    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"
        

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