openapi: 3.2.0
info:
title: Webex Preferences API
version: 1.0.0
description: 'Operations tagged Preferences across 2 of this provider''s published API definitions: webex-meeting-openapi.json,
webex-preferences-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: 14/14
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: Preferences
paths:
/meetingPreferences:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/MeetingPreferenceObject'
example:
audio:
defaultAudioType: webexAudio
otherTeleconferenceDescription: Example Description
enabledGlobalCallIn: true
enabledTollFree: false
enabledAutoConnection: false
audioPin: '1314'
officeNumber:
countryCode: '123'
number: '123456'
enabledCallInAuthentication: false
enabledCallMe: false
mobileNumber:
countryCode: '1'
number: '123456789'
enabledCallInAuthentication: false
enabledCallMe: true
video:
videoDevices:
- deviceName: device1
deviceAddress: device1@example.com
isDefault: false
- deviceName: device2
deviceAddress: device2@example.com
isDefault: true
schedulingOptions:
enabledJoinBeforeHost: false
joinBeforeHostMinutes: 0
enabledAutoShareRecording: false
enabledWebexAssistantByDefault: false
delegateEmails:
- marcus.hoffmann@example.com
- brenda.song@example.com
sites:
- siteUrl: site1-example.webex.com
default: false
- siteUrl: site2-example.webex.com
default: false
- siteUrl: site3-example.webex.com
default: false
- siteUrl: site4-example.webex.com
default: true
personalMeetingRoom:
topic: John's PMR
hostPin: '4325'
enabledAutoLock: false
autoLockMinutes: 10
enabledNotifyHost: true
supportCoHost: true
supportAnyoneAsCoHost: false
allowFirstUserToBeCoHost: false
allowAuthenticatedDevices: false
coHosts:
- email: john.andersen@example.com
displayName: John Andersen
personalMeetingRoomLink: https://site4-example.webex.com/meet/john
sipAddress: john.andersen@example.com
dialInIpAddress: 192.168.100.100
telephony:
accessCode: '1234567890'
callInNumbers:
- label: US Toll
callInNumber: '123456789'
tollType: toll
links:
- rel: globalCallinNumbers
href: /v1/meetings/0fc6ec1109e0d9b6c94e1f6caccda976/globalCallinNumbers
method: GET
'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
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 server understood the request, but refused to fulfill it because the access token is missing
required scopes or the user is missing required roles or licenses.
errors:
- description: Not permitted to view or change other user's preferences.
trackingId: B4A8FB611CFE4BF697CC49B345730269_1572666125876
'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 Meeting Preference Details
operationId: Get Meeting Preference Details
description: Retrieves meeting preferences for the authenticated user.
tags:
- Preferences
parameters:
- name: userEmail
in: query
description: Email address for the user. This parameter is only used if the user or application calling the API has
the required [admin-level scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the
admin may specify the email of a user in a site they manage and the API will return details of the meeting preferences
for that user.
example: john.andersen@example.com
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site to query. For individual use, if `siteUrl` is not specified, the query will use
the default site of the user. For admin use, if `siteUrl` is not specified, the query will use the default site
for the admin's authorization token used to make the call. In the case where the user belongs to a site different
than the admin’s default site, the admin can set the site to query using the `siteUrl` parameter. All available
Webex sites and default site of a user can be retrieved from [/meetingPreferences/sites](/docs/api/v1/meeting-preferences/get-site-list).
example: site4-example.webex.com
schema:
type: string
/meetingPreferences/personalMeetingRoom:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/PMRObject'
example:
topic: John's PMR
hostPin: '4325'
enabledAutoLock: false
autoLockMinutes: 10
enabledNotifyHost: true
supportCoHost: true
supportAnyoneAsCoHost: false
allowFirstUserToBeCoHost: false
allowAuthenticatedDevices: false
coHosts:
- email: john.andersen@example.com
displayName: John Andersen
personalMeetingRoomLink: https://site4-example.webex.com/meet/john
sipAddress: john.andersen@example.com
dialInIpAddress: 192.168.100.100
telephony:
accessCode: '1234567890'
callInNumbers:
- label: US Toll
callInNumber: '123456789'
tollType: toll
links:
- rel: globalCallinNumbers
href: /v1/meetings/0fc6ec1109e0d9b6c94e1f6caccda976/globalCallinNumbers
method: GET
'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
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: Not permitted to view or change other user's preferences
errors:
- description: Not permitted to view or change other user's preferences
trackingId: C385085C959545C8813E51803297E132_1562293603899
'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 Personal Meeting Room Options
operationId: Get Personal Meeting Room Options
description: Retrieves the Personal Meeting Room options for the authenticated user.
tags:
- Preferences
parameters:
- name: userEmail
in: query
description: Email address for the user. This parameter is only used if the user or application calling the API has
the [admin-level scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may
specify the email of a user in a site they manage and the API will return details of the Personal Meeting Room options
for that user.
example: john.andersen@example.com
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site to query. For individual use, if `siteUrl` is not specified, the query will use
the default site of the user. For admin use, if `siteUrl` is not specified, the query will use the default site
for the admin's authorization token used to make the call. In the case where the user belongs to a site different
than the admin’s default site, the admin can set the site to query using the `siteUrl` parameter. All available
Webex sites and default site of a user can be retrieved from [/meetingPreferences/sites](/docs/api/v1/meeting-preferences/get-site-list).
example: site4-example.webex.com
schema:
type: string
put:
responses:
'200':
description: OK
headers: {}
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/PMRObject'
example:
topic: John's PMR
hostPin: '4325'
enabledAutoLock: false
autoLockMinutes: 10
enabledNotifyHost: true
supportCoHost: true
supportAnyoneAsCoHost: false
allowFirstUserToBeCoHost: false
allowAuthenticatedDevices: false
coHosts:
- email: john.andersen@example.com
displayName: John Andersen
personalMeetingRoomLink: https://site4-example.webex.com/meet/john
sipAddress: john.andersen@example.com
dialInIpAddress: 192.168.100.100
telephony:
accessCode: '1234567890'
callInNumbers:
- label: US Toll
callInNumber: '123456789'
tollType: toll
links:
- rel: globalCallinNumbers
href: /v1/meetings/0fc6ec1109e0d9b6c94e1f6caccda976/globalCallinNumbers
method: GET
'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
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 server understood the request, but refused to fulfill it because the access token is missing
required scopes or the user is missing required roles or licenses.
errors:
- description: Not permitted to view or change other user's preferences.
trackingId: 4A78EB66D02E4C78B9955AA504ECFC3D_1572666592909
'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 Personal Meeting Room Options
operationId: Update Personal Meeting Room Options
description: Updates Personal Meeting Room options for the authenticated user.
tags:
- Preferences
parameters:
- name: userEmail
in: query
description: Email address for the user. This parameter is only used if the user or application calling the API has
the [admin-level scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may
specify the email of a user in a site they manage and the API will update Personal Meeting Room options for that
user.
example: john.andersen@example.com
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site to query. For individual use, if `siteUrl` is not specified, the query will use
the default site of the user. For admin use, if `siteUrl` is not specified, the query will use the default site
for the admin's authorization token used to make the call. In the case where the user belongs to a site different
than the admin’s default site, the admin can set the site to query using the `siteUrl` parameter. All available
Webex sites and default site of a user can be retrieved from [/meetingPreferences/sites](/docs/api/v1/meeting-preferences/get-site-list).
example: site4-example.webex.com
schema:
type: string
requestBody:
content:
application/json:
example:
topic: John's PMR
hostPin: '4325'
enabledAutoLock: false
autoLockMinutes: 10
enabledNotifyHost: true
supportCoHost: true
supportAnyoneAsCoHost: false
allowFirstUserToBeCoHost: false
allowAuthenticatedDevices: false
coHosts:
- email: john.andersen@example.com
displayName: John Andersen
schema:
$ref: '#/components/schemas/UpdatePMRObject'
/meetingPreferences/audio:
get:
responses:
'200':
description: OK
headers: {}
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/AudioObject'
example:
defaultAudioType: webexAudio
otherTeleconferenceDescription: Example Description
enabledGlobalCallIn: true
enabledTollFree: false
enabledAutoConnection: false
audioPin: '1314'
officeNumber:
countryCode: '123'
number: '123456'
enabledCallInAuthentication: false
enabledCallMe: false
mobileNumber:
countryCode: '1'
number: '123456789'
enabledCallInAuthentication: false
enabledCallMe: 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
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 server understood the request, but refused to fulfill it because the access token is missing
required scopes or the user is missing required roles or licenses.
errors:
- description: Not permitted to view or change other user's preferences.
trackingId: 4A78EB66D02E4C78B9955AA504ECFC3D_1572666592909
'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 Audio Options
operationId: Get Audio Options
description: Retrieves audio options for the authenticated user.
tags:
- Preferences
parameters:
- name: userEmail
in: query
description: Email address for the user. This parameter is only used if the user or application calling the API has
the [admin-level scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may
specify the email of a user in a site they manage and the API will return details of the audio options for that
user.
example: john.andersen@example.com
schema:
type: string
- name: siteUrl
in: query
description: URL of the Webex site to query. For individual use, if `siteUrl` is not specified, the query will use
the default site of the user. For admin use, if `siteUrl` is not specified, the query will use the default site
for the admin's authorization token used to make the call. In the case where the user belongs to a site different
than the admin’s default site, the admin can set the site to query using the `siteUrl` parameter. All available
Webex sites and default site of a user can be retrieved from [/meetingPreferences/sites](/docs/api/v1/meeting-preferences/get-site-list).
example: site4-example.webex.com
schema:
type: string
put:
responses:
'200':
description: OK
headers: {}
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/AudioObject'
example:
defaultAudioType: webexAudio
otherTeleconferenceDescription: Example Description
enabledGlobalCallIn: true
enabledTollFree: false
enabledAutoConnection: false
audioPin: '1314'
officeNumber:
countryCode: '123'
number: '123456'
enabledCallInAuthentication: false
enabledCallMe: false
mobileNumber:
countryCode: '1'
number: '123456789'
enabledCallInAuthentication: false
enabledCallMe: 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
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 server understood the request, but refused to fulfill it because the access token is missing
required scopes or the user is missing required roles or licenses.
errors:
- description: Not permitted to view or change other user's preferences.
trackingId: 4A78EB66D02E4C78B9955AA504ECFC3D_1572666592909
'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 upst
# --- truncated at 32 KB (131 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webex/refs/heads/main/openapi/webex-preferences-api-openapi.yml