openapi: 3.2.0
info:
title: Webex Tracking Codes API
version: 1.0.0
description: 'Operations tagged Tracking Codes across 2 of this provider''s published API definitions: webex-meeting-openapi.json,
webex-tracking-codes-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-meeting-openapi.json, the provider's source document. Operations and schemas are the
provider's, unmodified; only the partition is ours.
derived_from: webex-meeting-openapi.json
operation_coverage: 7/7
x-evidence:
- type: source
url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-meeting.json
- type: raw
url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-meeting.json
tags:
- name: Tracking Codes
paths:
/admin/meeting/config/trackingCodes:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrackingCodesObject'
example:
items:
- id: '1'
name: Department
siteUrl: example.webex.com
inputMode: select
options:
- value: Engineering
defaultValue: false
- value: Design
defaultValue: true
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: required
- service: EventCenter
type: optional
- service: TrainingCenter
type: notUsed
- service: SupportCenter
type: notUsed
- id: '2'
name: Division
siteUrl: example.webex.com
inputMode: editableSelect
options:
- value: Full-time
defaultValue: false
- value: Part-time
defaultValue: false
- value: Intern
defaultValue: true
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: optional
- service: EventCenter
type: required
- service: TrainingCenter
type: optional
- service: SupportCenter
type: notUsed
'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
headers: {}
content: {}
'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 Tracking Codes
operationId: List Tracking Codes
description: 'Lists tracking codes on a site by an admin user.
* If `siteUrl` is specified, tracking codes of the specified site will be listed; otherwise, tracking codes of the
user''s preferred site will be listed. All available Webex sites and the preferred sites of a user can be retrieved
by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
* Admins can switch any Control Hub managed site from using classic tracking codes to mapped tracking codes in Control
Hub. This is a one-time irreversible operation. Once the tracking codes are mapped to custom or user profile attributes,
the response returns the mapped tracking codes.'
tags:
- Tracking Codes
parameters:
- name: siteUrl
in: query
description: URL of the Webex site which the API retrieves the tracking code from. If not specified, the API retrieves
the tracking code from the user's preferred site. All available Webex sites and preferred sites of a user can be
retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
example: example.webex.com
schema:
type: string
post:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrackingCodeObject'
example:
id: '1'
name: Department
siteUrl: example.webex.com
inputMode: select
options:
- value: Engineering
defaultValue: false
- value: Design
defaultValue: true
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: required
- service: EventCenter
type: optional
- service: TrainingCenter
type: notUsed
- service: SupportCenter
type: notUsed
'400':
description: Bad Request
headers: {}
content:
application/json;charset=UTF-8:
schema:
type: object
properties:
message:
type: string
errors:
type: array
items:
type: object
properties:
description:
type: string
trackingId:
type: string
example:
message: The request could not be understood by the server due to malformed syntax. See 'errors' for more
details.
errors:
- description: '''siteUrl'' cannot be empty'
trackingId: 92B0280B23E64C249456513AC7409D56_1661400232754
'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 Tracking Code
operationId: Create a Tracking Code
description: 'Create a new tracking code by an admin user.
* The `siteUrl` is required. The operation creates a tracking code for the specified site. All or a user''s available
Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
* The `inputMode` of `hostProfileSelect` is only available for a host profile and sign-up pages and does not apply
to the meeting scheduler page or the meeting start page. The value for `scheduleStartCodes` must be `null` or the
value for all services must be `notUsed` when the `inputMode` is `hostProfileSelect`.
* The `hostProfileCode` of `required` is only allowed for a Site Admin managed site, and not for a Control Hub managed
site.
* When the `hostProfileCode` is `adminSet`, only `adminSet`, `notUsed`, and `notApplicable` are available for the
types of `scheduleStartCodes`. When the `hostProfileCode` is not `adminSet`, only `optional`, `required`, `notUsed`,
and `notApplicable` are available for `scheduleStartCodes`.
* If the type of the `All` service has a value other than `notApplicable`, and another service, e.g. `EventCenter`,
is missing from the `scheduleStartCodes`, then the type of this missing `EventCenter` service shares the same type
as the `All` service. If the type of `All` service has a value other than `notApplicable`, and another service, e.g.
`EventCenter`, has a type, then the type specified should be the same as the `All` service.
* If the `All` service is missing from the `scheduleStartCodes`, any of the other four services, e.g. `EventCenter`,
have a default type of `notUsed` if it is also missing from the `scheduleStartCodes`.
* Admins can switch any Control Hub managed site from using classic tracking codes to mapped tracking codes in Control
Hub, this is a one-time irreversible operation. Once the tracking codes are mapped to custom or user profile attributes,
they cannot create tracking codes when the mapping process is in progress or the mapping process is completed.'
tags:
- Tracking Codes
parameters: []
requestBody:
content:
application/json:
example:
name: Department
siteUrl: example.webex.com
inputMode: select
options:
- value: Engineering
defaultValue: false
- value: Design
defaultValue: true
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: required
- service: EventCenter
type: optional
- service: TrainingCenter
type: notUsed
- service: SupportCenter
type: notUsed
schema:
$ref: '#/components/schemas/CreateOrUpdateTrackingCodeObject'
/admin/meeting/config/trackingCodes/{trackingCodeId}:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrackingCodeObject'
example:
id: '1'
name: Department
siteUrl: example.webex.com
inputMode: select
options:
- value: Engineering
defaultValue: false
- value: Design
defaultValue: true
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: required
- service: EventCenter
type: optional
- service: TrainingCenter
type: notUsed
- service: SupportCenter
type: notUsed
'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
headers: {}
content: {}
'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 a Tracking Code
operationId: Get a Tracking Code
description: 'Retrieves details for a tracking code by an admin user.
* If `siteUrl` is specified, the tracking code is retrieved from the specified site; otherwise, the tracking code
is retrieved from the user''s preferred site. All available Webex sites and the preferred sites of a user can be retrieved
by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
* Admins can switch any Control Hub managed site from using classic tracking codes to mapped tracking codes in Control
Hub, this is a one-time irreversible operation. Once the tracking codes are mapped to custom or user profile attributes,
the response returns details for a mapped tracking code.'
tags:
- Tracking Codes
parameters:
- name: trackingCodeId
in: path
description: Unique identifier for the tracking code whose details are being requested.
required: true
example: '1'
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site which the API retrieves the tracking code from. If not specified, the API retrieves
the tracking code from the user's preferred site. All available Webex sites and the preferred sites of a user can
be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
example: example.webex.com
schema:
type: string
put:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrackingCodeObject'
example:
id: '1'
name: Department
siteUrl: example.webex.com
inputMode: editableSelect
options:
- value: Engineering
defaultValue: true
- value: Design
defaultValue: false
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: optional
- service: EventCenter
type: notUsed
- service: TrainingCenter
type: required
- service: SupportCenter
type: notUsed
'400':
description: Bad Request
headers: {}
content:
application/json:
schema:
type: object
properties:
message:
type: string
errors:
type: array
items:
type: object
properties:
description:
type: string
trackingId:
type: string
example:
message: The requested resource could not be found.
errors:
- description: Tracking code ID '10001' is invalid.
trackingId: 1050C347DF0B47AF9B0355866BC7BE7E_1661397671636
'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 Tracking Code
operationId: Update a Tracking Code
description: 'Updates details for a tracking code by an admin user.
* The `siteUrl` is required. The operation updates a tracking code for the specified site. All of a user''s available
Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
* The `inputMode` of `hostProfileSelect` is only available for the host profile and sign-up pages and it doesn''t
apply to the meeting scheduler page or meeting start page. Therefore, `scheduleStartCodes` must be `null` or type
of all services must be `notUsed` when the `inputMode` is `hostProfileSelect`.
* Currently, the `hostProfileCode` of `required` is only allowed for a Site Admin managed site, and not allowed for
a Control Hub managed site.
* When the `hostProfileCode` is `adminSet`, only `adminSet`, `notUsed` and `notApplicable` are available for the types
of `scheduleStartCodes`. When the `hostProfileCode` is not `adminSet`, only `optional`, `required`, `notUsed` and
`notApplicable` are available for types of `scheduleStartCodes`.
* If the type of the `All` service has a value other than `notApplicable`, and another service, e.g. `EventCenter`,
is missing from the `scheduleStartCodes`, then the type of this missing `EventCenter` service shares the same type
as the `All` service silently. If the type of `All` service has a value other than `notApplicable`, and another service,
e.g. `EventCenter`, has a type, then the type specified should be the same as the `All` service.
* If the `All` service is missing from the `scheduleStartCodes`, any of the other four services, e.g. `EventCenter`,
has a default type of `notUsed` if that service is also missing from the `scheduleStartCodes`.
* Admins can switch any Control Hub managed site from using classic tracking codes to mapped tracking codes in Control
Hub, this is a one-time irreversible operation. Once the tracking codes are mapped to custom or user profile attributes,
they cannot update tracking codes when the mapping process is in progress or the mapping process is completed.'
tags:
- Tracking Codes
parameters: []
requestBody:
content:
application/json:
example:
name: Department
siteUrl: example.webex.com
inputMode: editableSelect
options:
- value: Engineering
defaultValue: true
- value: Design
defaultValue: false
- value: Sales
defaultValue: false
hostProfileCode: optional
scheduleStartCodes:
- service: All
type: notApplicable
- service: MeetingCenter
type: optional
- service: EventCenter
type: notUsed
- service: TrainingCenter
type: required
- service: SupportCenter
type: notUsed
schema:
$ref: '#/components/schemas/CreateOrUpdateTrackingCodeObject'
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
headers: {}
content: {}
'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 Tracking Code
operationId: Delete a Tracking Code
description: 'Deletes a tracking code by an admin user.
* The `siteUrl` is required. The operation deletes a tracking code for the specified site. All of a user''s available
Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
* Admins can switch any Control Hub managed site from using classic tracking codes to mapped tracking codes in Control
Hub, this is a one-time irreversible operation. Once the tracking codes are mapped to custom or user profile attributes,
they cannot delete tracking codes when the mapping process is in progress or the mapping process is completed.'
tags:
- Tracking Codes
parameters:
- name: trackingCodeId
in: path
description: Unique identifier for the tracking code to be deleted.
required: true
example: '1'
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site from which the API deletes the tracking code. All available Webex sites and preferred
sites of a user can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.
required: true
example: example.webex.com
schema:
type: string
/admin/meeting/userconfig/trackingCodes:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrackingCodeForUserObject'
example:
personId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOGJiOWNjMC0zMWM2LTQ3MzYtYmE4OC0wMDk5ZmQzNDNmODE
email: john.andersen@example.com
siteUrl: example.webex.com
trackingCodes:
- id: '1'
name: Department
value: Engineering
- id: '2'
name: Division
value: Full-time
'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
headers: {}
content: {}
'405':
description: 'Method Not Allowed
# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webex/refs/heads/main/openapi/webex-tracking-codes-api-openapi.yml