openapi: 3.2.0
info:
title: Webex Device Call Settings With Device Dynamic Settings API
version: 1.0.0
description: 'Operations tagged Device Call Settings With Device Dynamic Settings across 3 of this provider''s published
API definitions: webex-cloud-calling-openapi.json, webex-device-call-settings-with-device-dynamic-settings-api-openapi.yml,
webex-device-openapi.json. 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 the provider's source document. Operations and schemas are the provider's, unmodified; only
the partition is ours.
x-evidence:
- type: source
url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-device.json
- type: raw
url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-device.json
tags:
- name: Device Call Settings With Device Dynamic Settings
paths:
/telephony/config/supportedDevices:
get:
responses:
'200':
description: OK
headers:
Link:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/supportedDevicesObject'
example:
upgradeChannelList:
- STABLE
- STABLE_DELAY
- PREVIEW
- BETA
- TESTING
devices:
- model: 2N Customer Managed
displayName: 2N Customer Managed
type: GENERIC_SIP
manufacturer: THIRD_PARTY
managedBy: CUSTOMER
supportedFor:
- PEOPLE
- PLACE
onboardingMethod:
- MAC_ADDRESS
allowConfigureLayoutEnabled: false
numberOfLinePorts: 20
kemSupportEnabled: true
kemModuleCount: 1
kemModuleType:
- KEM_20_KEYS
upgradeChannelEnabled: false
additionalPrimaryLineAppearancesEnabled: false
basicEmergencyNomadicEnabled: false
customizedBehaviorsEnabled: false
allowConfigurePortsEnabled: false
customizableLineLabelEnabled: false
supportsLinePortReorderingEnabled: false
kemLinesSupportEnabled: false
portNumberSupportEnabled: false
numberOfLineKeyButtons: 0
t38Enabled: false
callDeclinedEnabled: false
touchScreenPhone: false
deviceSettingsConfiguration: NONE
allowHotelingHostEnabled: false
supportsLogCollection: NONE
supportsApplyChangesEnabled: false
allowConfigureLinesEnabled: true
allowConfigurePhoneSettingsEnabled: false
supportsHotlineEnabled: false
- model: DMS Polycom EE400
displayName: Polycom EE400
familyDisplayName: Poly
type: GENERIC_SIP
manufacturer: THIRD_PARTY
managedBy: CISCO
supportedFor:
- PEOPLE
- PLACE
onboardingMethod:
- MAC_ADDRESS
allowConfigureLayoutEnabled: false
numberOfLinePorts: 14
kemSupportEnabled: false
upgradeChannelEnabled: false
additionalPrimaryLineAppearancesEnabled: true
basicEmergencyNomadicEnabled: false
customizedBehaviorsEnabled: true
allowConfigurePortsEnabled: false
customizableLineLabelEnabled: false
supportsLinePortReorderingEnabled: true
kemLinesSupportEnabled: false
portNumberSupportEnabled: false
numberOfLineKeyButtons: 0
touchScreenPhone: false
t38Enabled: false
callDeclinedEnabled: true
deviceSettingsConfiguration: WEBEX_CALLING_DYNAMIC_DEVICE_CONFIGURATION
allowHotelingHostEnabled: true
supportsLogCollection: NONE
supportsApplyChangesEnabled: true
allowConfigureLinesEnabled: true
allowConfigurePhoneSettingsEnabled: true
supportsHotlineEnabled: true
'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: Read the List of Supported Devices
operationId: readTheListOfSupportedDevices
description: 'Gets the list of supported devices for an organization.
Retrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
tags:
- Device Call Settings With Device Dynamic Settings
parameters:
- name: orgId
in: query
description: List supported devices for an organization.
example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
schema:
type: string
- name: allowConfigureLayoutEnabled
in: query
description: List supported devices that allow the user to configure the layout.
example: true
schema:
type: boolean
- name: type
in: query
description: List supported devices of a specific type. To excluded device types from a request or query, add `type=not:DEVICE_TYPE`.
For example, `type=not:MPP`.
example: MPP
schema:
type: string
/telephony/config/devices/dynamicSettings/settingsGroups:
get:
responses:
'200':
description: OK.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceDynamicSettingsSettingsGroupsGet'
example:
settingsGroups:
- path: Voice.Codec Preferences
friendlyName: voice.codecPref.G711Mu
tab: Poly
familyOrModelDisplayName: Poly
tags:
- tagBlock:
- '%G711U_ORDER%'
- path: Feature.Bluetooth
friendlyName: feature.bluetooth.enabled
tab: Poly
familyOrModelDisplayName: Poly
tags:
- tagBlock:
- '%ENABLE_BLUETOOTH%'
- path: User Interface.Menu
friendlyName: ui.menu.background
tab: Poly
familyOrModelDisplayName: Poly
tags:
- tagBlock:
- '%DO_UI_MENU_BACKGROUND%'
settingsTabs:
- Poly
- MPP
'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.'
operationId: getSettingsGroups
summary: Get Settings Groups
description: "This API returns the `settingsGroups` that define the structure and association of tags for device dynamic\
\ settings.\n\n The `settingsGroups` are used to organize the tags into logical groups, making it easier to manage\
\ and configure device dynamic settings."
parameters:
- name: orgId
in: query
description: Settings groups for devices in this organization.
example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
schema:
type: string
- name: familyOrModelDisplayName
in: query
description: Device family or model display name to filter the `settingsGroups`.
example: Poly
schema:
type: string
- name: includeSettingsType
in: query
description: To show groups or tabs or both. Query param is case insensitive. Default is `ALL`.
example: ALL
schema:
type: string
enum:
- TABS
- GROUPS
- ALL
tags:
- Device Call Settings With Device Dynamic Settings
/telephony/config/lists/devices/dynamicSettings/actions/getSettings/invoke:
post:
responses:
'200':
description: OK.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerDeviceDynamicSettingsListPostResponse'
example:
tags:
- familyOrModelDisplayName: Poly
tag: '%DO_MENU_ITEM_BACKGROUND%'
value: '#RRGGBB'
parentValue: '#FFFFFF'
parentLevel: ORGANIZATION
- familyOrModelDisplayName: Poly
tag: '%ENABLE_BLUETOOTH%'
value: '1'
parentValue: '0'
parentLevel: SYSTEM_DEFAULT
- familyOrModelDisplayName: Poly
tag: '%DO_MENU_TITLE_BACKGROUND%'
value: '#1A1A1A'
parentValue: '#FFFFFF'
parentLevel: REGIONAL_DEFAULT
lastUpdateTime: 1651396800000
updateInProgress: false
'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.'
operationId: getCustomerDeviceDynamicSettings
summary: Get Customer Device Dynamic Settings
description: 'Retrieve dynamic settings for specific device tags at customer level, allowing filters by `familyOrModelDisplayName`
and `tag` identifier.
This API lets you request the values of multiple `Device Settings` at once by specifying a list of `familyOrModelDisplayName`
and tag combinations.
This requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
parameters:
- name: orgId
in: query
description: List of device dynamic settings in this organization.
example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
schema:
type: string
- name: familyOrModelDisplayName
in: query
required: true
description: The family or model name for the device. If no tag is specified, all tags related to `familyOrModelDisplayName`
are returned.
example: Poly
schema:
type: string
minLength: 1
maxLength: 40
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerDeviceDynamicSettingsListPostRequest'
example:
tags:
- '%DO_MENU_ITEM_BACKGROUND%'
- '%ENABLE_BLUETOOTH%'
- '%DO_MENU_TITLE_BACKGROUND%'
description: Request body containing the list of device tags to retrieve settings for.
required: false
tags:
- Device Call Settings With Device Dynamic Settings
/telephony/config/lists/locations/{locationId}/devices/dynamicSettings/actions/getSettings/invoke:
post:
responses:
'200':
description: OK.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/LocationDeviceDynamicSettingsListPostResponse'
example:
tags:
- familyOrModelDisplayName: Poly
tag: '%G711U_ORDER%'
value: '4'
parentValue: '3'
parentLevel: ORGANIZATION
- familyOrModelDisplayName: Poly
tag: '%ENABLE_BLUETOOTH%'
value: '1'
parentValue: '0'
parentLevel: SYSTEM_DEFAULT
- familyOrModelDisplayName: Poly
tag: '%DO_UI_MENU_BACKGROUND%'
value: '#1A1A1A'
parentValue: '#FFFFFF'
parentLevel: LOCATION
lastUpdateTime: 1651396800000
updateInProgress: false
'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.'
operationId: getLocationDeviceDynamicSettings
summary: Get Location Device Dynamic Settings
description: 'Retrieve dynamic settings for specific device tags at the specified location level, allowing filters by
`familyOrModelDisplayName` and `tag` identifier.
This API lets you request the values of multiple `Device Settings` at once by specifying a list of `familyOrModelDisplayName`
and tag combinations for a specific location.
This requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
parameters:
- name: locationId
in: path
required: true
description: Unique identifier for the `location`.
example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMzZjBlZDFiLWQ1YjctNGI4Mi1iMzIzLTg4ZTFmODMzNGNmMw
schema:
type: string
- name: orgId
in: query
description: Unique identifier for the `organization` to which this location belongs.
example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
schema:
type: string
- name: familyOrModelDisplayName
in: query
required: true
description: The family or model name for the device. If no tag is specified, all tags related to `familyOrModelDisplayName`
are returned.
example: Poly
schema:
type: string
minLength: 1
maxLength: 40
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LocationDeviceDynamicSettingsListPostRequest'
example:
tags:
- '%G711U_ORDER%'
- '%ENABLE_BLUETOOTH%'
- '%DO_UI_MENU_BACKGROUND%'
description: Request body containing the list of device tags to retrieve settings for.
required: false
tags:
- Device Call Settings With Device Dynamic Settings
/telephony/config/lists/devices/{deviceId}/dynamicSettings/actions/getSettings/invoke:
post:
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceDynamicSettingsListPostResponse'
example:
tags:
- familyOrModelDisplayName: Poly
tag: '%G711U_ORDER%'
value: '4'
parentValue: '3'
parentLevel: ORGANIZATION
- familyOrModelDisplayName: Poly
tag: '%ENABLE_BLUETOOTH%'
parentValue: '0'
parentLevel: SYSTEM_DEFAULT
- familyOrModelDisplayName: Poly
tag: '%DO_UI_MENU_BACKGROUND%'
value: '#1A1A1A'
parentValue: '#FFFFFF'
parentLevel: LOCATION
lastUpdateTime: 1651396800000
'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.'
operationId: getDeviceDynamicSettings
summary: Get Device Dynamic Settings
description: 'Retrieve settings for a specified device.
This API retrieves device settings based on the specified `tags`; if the `tags` field is empty or missing, all settings
for the device are returned.
This requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
parameters:
- name: deviceId
in: path
required: true
description: Device for which to retrieve settings.
example: Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=
schema:
type: string
- name: orgId
in: query
description: Organization to which the `device` belongs.
example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceDynamicSettingsListPostRequest'
example:
tags:
- '%G711U_ORDER%'
- '%ENABLE_BLUETOOTH%'
- '%DO_UI_MENU_BACKGROUND%'
description: Request body containing the list of device tags to retrieve settings for.
required: true
tags:
- Device Call Settings With Device Dynamic Settings
/telephony/config/devices/{deviceId}/dynamicSettings:
put:
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':
# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webex/refs/heads/main/openapi/webex-device-call-settings-with-device-dynamic-settings-api-openapi.yml