{ "openapi": "3.0.0", "info": { "title": "Webex Meetings", "version": "1.0.0", "description": "The Webex Meetings APIs enable developers to schedule, manage, and retrieve information about Webex meetings, webinars, and events. They provide endpoints for meeting creation, participant management, recordings, transcripts, in-meeting features such as chat and closed captions, and post-meeting analytics. Common use cases include integrating meeting scheduling into calendar apps, automating follow-ups with recordings and transcripts, embedding meeting controls in custom portals, and extracting insights for compliance or productivity analysis. The APIs support both real-time and asynchronous workflows for seamless collaboration." }, "tags": [ { "name": "slidoSecurePremium", "description": "APIs for Slido Secure Premium integration with Webex Meetings." } ], "paths": { "/meetings/postMeetingChats": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ChatObject" }, "description": "Chat array" } } }, "example": { "items": [ { "id": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "chatTime": "2021-07-06T09:22:34Z", "text": "hi", "meetingId": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "type": "private", "sender": { "email": "john.andersen@example.com", "displayName": "John Andersen", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY=", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jMmUyMjE4Zi00ZDZhLTQwODEtYTc1MS0yOWIyZTk3MDRiZGU=" }, "receivers": [ { "email": "catherine.sinu@example.com", "displayName": "Catherine Sinu", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmEwZDRjYi02MGVkLTQzYjctYTkyNy1mZTc2MmIyZTRiODY=", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jMmUyMjE4Zi00ZDZhLTQwODEtYTc1MS0yOWIyZTk3MDRiZGU=" } ] } ] } } } }, "400": { "description": "Bad Request", "headers": {}, "content": {} }, "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 Meeting Chats", "operationId": "List Meeting Chats", "description": "Lists the meeting chats of a finished [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) specified by `meetingId`. You can set a maximum number of chats to return.\n\nUse this operation to list the chats of a finished [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) when they are ready. Please note that only **meeting instances** in state `ended` are supported for `meetingId`. **Meeting series**, **scheduled meetings** and `in-progress` **meeting instances** are not supported.", "tags": [ "Chats" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the chats belong. The meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of meeting chats in the response, up to 100.", "example": "100", "schema": { "type": "number", "default": 10 } }, { "name": "offset", "in": "query", "description": "Offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } } ] }, "delete": { "responses": { "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 Meeting Chats", "operationId": "Delete Meeting Chats", "description": "Deletes the meeting chats of a finished [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) specified by `meetingId`.\n\nUse this operation to delete the chats of a finished [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) when they are ready. Please note that only **meeting instances** in state `ended` are supported for `meetingId`. **Meeting series**, **scheduled meetings** and `in-progress` **meeting instances** are not supported.", "tags": [ "Chats" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the chats belong. Meeting IDs of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting are not supported.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/meetingClosedCaptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClosedCaptionObject" }, "description": "Closed caption array" } } }, "example": { "items": [ { "id": "195d64646ad14be2924ea50f541fd91d", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "vttDownloadLink": "http://site-example.webex.com/v1/meetingClosedCaptions/195d64646ad14be2924ea50f541fd91d/download?format=vtt", "txtDownloadLink": "http://site-example.webex.com/v1/meetingClosedCaptions/195d64646ad14be2924ea50f541fd91d/download?format=txt", "start": "2022-04-18T01:46:29Z" } ] } } } }, "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 Meeting Closed Captions", "operationId": "getMeetingClosedCaptions", "description": "Lists closed captions of a finished [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) specified by `meetingId`.\n\n* Closed captions are ready 15 minutes after the meeting is finished.\n\n* Only **meeting instances** in state `ended` are supported for `meetingId`. **Meeting series**, **scheduled meetings** and `in-progress` **meeting instances** are not supported.\n\n* Currently, a meeting may have only one closed caption associated with its `meetingId`. The response is a closed captions array, which may contain multiple values to allow for future expansion, but currently only one closed caption is included in the response.", "tags": [ "Closed Captions" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the closed captions belong to. This parameter only applies to ended meeting instances. It does not apply to meeting series, scheduled meetings or scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meetings.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/meetingClosedCaptions/{closedCaptionId}/snippets": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SnippetObject" }, "description": "Closed caption snippet array" } } }, "example": { "items": [ { "id": "195d64646ad14be2924ea50f541fd91d_00001", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "text": "Hello everyone", "personName": "John Andersen", "personEmail": "john.andersen@example.com", "peopleId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "start": "2019-11-01T12:30:05Z", "offsetMillisecond": "0", "durationMillisecond": "200", "language": "en" } ] } } } }, "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 Meeting Closed Caption Snippets", "operationId": "getMeetingClosedCaptionsSnippets", "description": "Lists snippets of a meeting closed caption specified by `closedCaptionId`.", "tags": [ "Closed Captions" ], "parameters": [ { "name": "closedCaptionId", "in": "path", "description": "Unique identifier for the meeting closed caption which the snippets belong to.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } }, { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the closed caption snippets belong to. This parameter only applies to ended meeting instances. It does not apply to meeting series, scheduled meetings or scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meetings.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/meetingClosedCaptions/{closedCaptionId}/download": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "text/vtt": { "example": "WEBVTT\n\n1\n00:00:20.904 --> 00:00:24.564\nThis is an s sample closed caption snippet.\n\n2\n00:00:31.014 --> 00:00:33.744\nTesting out download closed captions.\n" } } }, "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": "Download Meeting Closed Caption Snippets", "operationId": "downloadTranscript", "description": "Download meeting closed caption snippets from the meeting closed caption specified by `closedCaptionId` formatted either as a Video Text Track (.vtt) file or plain text (.txt) file.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.*", "tags": [ "Closed Captions" ], "parameters": [ { "name": "closedCaptionId", "in": "path", "description": "Unique identifier for the meeting closed caption.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Format for the downloaded meeting closed caption snippets.", "example": "vtt", "schema": { "type": "string", "default": "vtt", "enum": [ "vtt", "txt" ] } }, { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the closed caption snippets belong to. This parameter only applies to meeting instances in the `ended` state. It does not apply to meeting series, scheduled meetings or scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meetings.", "required": true, "example": "870f51ff287b41be84648412901e0402_I_167427437874906709", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/meetingInvitees": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/GetInviteeObject" }, "description": "Array of meeting invitees." } } }, "example": { "items": [ { "id": "870f51ff287b41be84648412901e0402_2628957", "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false, "meetingId": "870f51ff287b41be84648412901e0402" }, { "id": "870f51ff287b41be84648412901e0402_2628962", "email": "brenda.song@example.com", "displayName": "Brenda Song", "coHost": false, "panelist": false, "meetingId": "870f51ff287b41be84648412901e0402" } ] } } } }, "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 Meeting Invitees", "operationId": "List Meeting Invitees", "description": "Lists meeting invitees for a meeting with a specified `meetingId`. You can set a maximum number of invitees to return.\n\nThis operation can be used for meeting series, scheduled meetings, and ended or ongoing meeting instance objects. If the specified `meetingId` is for a meeting series, the invitees for the series will be listed; if the `meetingId` is for a scheduled meeting, the invitees for the particular scheduled meeting will be listed; if the `meetingId` is for an ended or ongoing meeting instance, the invitees for the particular meeting instance will be listed. See the [Webex Meetings](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) guide for more information about the types of meetings.\n\nThe list returned is sorted in ascending order by email address.\n\nLong result sets are split into [pages](/docs/basics#pagination).", "tags": [ "Invitees" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the meeting for which invitees are being requested. The meeting can be a meeting series, a scheduled meeting, or a meeting instance which has ended or is ongoing. The meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "870f51ff287b41be84648412901e0402", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of meeting invitees in the response, up to 100.", "example": "100", "schema": { "type": "number", "default": 10 } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return meeting invitees that are hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } }, { "name": "panelist", "in": "query", "description": "Filter invitees or attendees for webinars only. If `true`, returns invitees. If `false`, returns attendees. If `null`, returns both invitees and attendees.", "example": "true", "schema": { "type": "string" } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInviteeObject" }, "example": { "id": "870f51ff287b41be84648412901e0402_2628982", "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false, "meetingId": "870f51ff287b41be84648412901e0402" } } } }, "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", "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": "User is already a meeting invitee.", "errors": [ { "description": "User is already a meeting invitee." } ], "trackingId": "8E12317727354470B5258F5B28D93FB9_1562296858685" } } } }, "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 Meeting Invitee", "operationId": "Create a Meeting Invitee", "description": "* Invite a person to attend a meeting.\n\n* Identify the invitee in the request body, by email address.\n\n* The `sendEmail` parameter is `true` by default and the meeting emails will be sent to the invitee's `email`. Please set `sendEmail` to `false` to prevent the invitee from receiving emails.", "tags": [ "Invitees" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "email": "john.andersen@example.com", "displayName": "John Andersen", "meetingId": "870f51ff287b41be84648412901e0402", "coHost": false, "hostEmail": "brenda.song@example.com", "panelist": false, "sendEmail": true }, "schema": { "$ref": "#/components/schemas/CreateInviteeObject" } } } } } }, "/meetingInvitees/bulkInsert": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/CreateInviteesResponse" }, "example": { "items": [ { "id": "870f51ff287b41be84648412901e0402_2628962", "meetingId": "870f51ff287b41be84648412901e0402", "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false }, { "id": "870f51ff287b41be84648412901e0402_2628963", "meetingId": "870f51ff287b41be84648412901e0402", "email": "jack.andersen@example.com", "displayName": "Jack Andersen", "coHost": false, "panelist": 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", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "trackingId": { "type": "string" } } }, "example": { "message": "Some users in the list have been invited.", "trackingId": "f614eb20-8188-3641-8cc3-dd66a2ebeebb" } } } }, "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 Meeting Invitees", "operationId": "Create Meeting Invitees", "description": "* Invite people to attend a meeting in bulk.\n\n* Identify each invitee by the email address of each item in the `items` of the request body.\n\n* Each invitee should have a unique `email`.\n\n* This API limits the maximum size of `items` in the request body to 100.\n\n* The `sendEmail` parameter for each invitee is `true` by default and the meeting emails will be sent to the invitee's `email`. Please set `sendEmail` to `false` to prevent an invitee from receiving emails.", "tags": [ "Invitees" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "meetingId": "870f51ff287b41be84648412901e0402", "hostEmail": "brenda.song@example.com", "items": [ { "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false, "sendEmail": true }, { "email": "jack.andersen@example.com", "displayName": "Jack Andersen", "coHost": false, "panelist": false, "sendEmail": true } ] }, "schema": { "$ref": "#/components/schemas/CreateInviteesObject" } } } } } }, "/meetingInvitees/{meetingInviteeId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInviteeObject" }, "example": { "id": "870f51ff287b41be84648412901e0402_2628962", "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false, "meetingId": "870f51ff287b41be84648412901e0402" } } } }, "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 a Meeting Invitee", "operationId": "Get a Meeting Invitee", "description": "Retrieve details for a meeting invitee identified by a `meetingInviteeId` in the URI.", "tags": [ "Invitees" ], "parameters": [ { "name": "meetingInviteeId", "in": "path", "description": "Unique identifier for the invitee whose details are being requested.", "required": true, "example": "870f51ff287b41be84648412901e0402_2628962", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting invitee that is hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInviteeObject" }, "example": { "id": "870f51ff287b41be84648412901e0402_2628962", "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false, "meetingId": "870f51ff287b41be84648412901e0402" } } } }, "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", "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": "User is already a meeting invitee.", "errors": [ { "description": "User is already a meeting invitee." } ], "trackingId": "8E12317727354470B5258F5B28D93FB9_1562296858685" } } } }, "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 Meeting Invitee", "operationId": "Update a Meeting Invitee", "description": "Update details for a meeting invitee identified by a `meetingInviteeId` in the URI.", "tags": [ "Invitees" ], "parameters": [ { "name": "meetingInviteeId", "in": "path", "description": "Unique identifier for the invitee to be updated. This parameter only applies to an invitee to a meeting series or a scheduled meeting. It doesn't apply to an invitee to an ended or ongoing meeting instance.", "required": true, "example": "870f51ff287b41be84648412901e0402_2628962", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "hostEmail": "brenda.song@example.com", "panelist": false, "sendEmail": true }, "schema": { "$ref": "#/components/schemas/UpdateInviteeObject" } } } } }, "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 Meeting Invitee", "operationId": "Delete a Meeting Invitee", "description": "Removes a meeting invitee identified by a `meetingInviteeId` specified in the URI. The deleted meeting invitee cannot be recovered.\n\nIf the meeting invitee is associated with a meeting series, the invitee will be removed from the entire meeting series. If the invitee is associated with a scheduled meeting, the invitee will be removed from only that scheduled meeting.", "tags": [ "Invitees" ], "parameters": [ { "name": "meetingInviteeId", "in": "path", "description": "Unique identifier for the invitee to be removed. This parameter only applies to an invitee to a meeting series or a scheduled meeting. It doesn't apply to an invitee to an ended or ongoing meeting instance.", "required": true, "example": "870f51ff287b41be84648412901e0402_2628962", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will delete a meeting invitee that is hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } }, { "name": "sendEmail", "in": "query", "description": "If `true`, send an email to the invitee.", "example": "true", "schema": { "type": "boolean", "default": "true" } } ] } }, "/meeting/messages/{meetingMessageId}": { "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: 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": "Delete a Meeting Message", "operationId": "Delete a Meeting Message", "description": "Deletes a Meeting Message from the In Meeting Chat, using its ID.\n\nThis ID can be retrieved by a Compliance Officer using the [events API](/docs/api/v1/events/list-events) filtering on the `meetingMessages` resource type.\n\nNOTE: When viewing the response from the events API, there are 2 `id` fields. The ID to be used here can be found under the `data` field in the response.\n\nSpecify the `meetingMessage` ID in the `meetingMessageId` parameter in the URI.", "tags": [ "Messages" ], "parameters": [ { "name": "meetingMessageId", "in": "path", "description": "The unique identifier for the message.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL01FRVRJTkdfTUVTU0FHRS85MmRiM2JlMC00M2JkLTExZTYtOGFlOS1kZDViM2RmYzU2NWQ", "schema": { "type": "string" } } ] } }, "/meetingParticipants": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Participant" } } } }, "example": { "items": [ { "id": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "orgId": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "host": true, "coHost": false, "spaceModerator": false, "email": "joeDoe@cisco.com", "displayName": "Joe Doe", "invitee": false, "muted": false, "meetingStartTime": "2020-10-02T17:31:00Z", "video": "on", "state": "lobby", "breakoutSessionId": "2e373567-465b-8530-a18a-7025e1871d40", "joinedTime": "2022-10-25T09:00:00Z", "leftTime": "2022-10-25T09:30:00Z", "siteUrl": "example.webex.com", "meetingId": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "hostEmail": "janeDoe@cisco.com", "devices": [ { "correlationId": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "deviceType": "webex_meeting_center_mac", "audioType": "pstn", "joinedTime": "2019-04-23T17:31:00.000Z", "leftTime": "2019-04-23T17:32:00.000Z", "durationSecond": 60, "callType": "callIn", "phoneNumber": "745273328" } ], "breakoutSessionsAttended": [ { "id": "c84ba778-2f46-4dc6-9459-398694732d70", "name": "Breakout session 1", "joinedTime": "2022-10-25T09:05:00Z", "leftTime": "2022-10-25T09:10:00Z" } ], "sourceId": "cisco" } ] } } } }, "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 Meeting Participants", "operationId": "List Meeting Participants", "description": "List all participants in an in-progress meeting or an ended meeting. The `meetingId` parameter is required, which is the unique identifier for the meeting.\n\nThe authenticated user calling this API must either have an Administrator role with the `meeting:admin_participants_read` scope, or be the meeting host.\n\n* If the `meetingId` value specified is for a meeting series, the operation returns participants' details for the last instance in the meeting series. If the `meetingStartTimeFrom` value and the `meetingStartTimeTo` value are specified, the operation returns participants' details for the last instance in the meeting series in the time range.\n\n* If the `meetingId` value specified is for a scheduled meeting from a meeting series, the operation returns participants' details for that scheduled meeting. If the `meetingStartTimeFrom` value and the `meetingStartTimeTo` value are specified, the operation returns participants' details for the last instance in the scheduled meeting in the time range.\n\n* If the `meetingId` value specified is for a meeting instance which is in progress or ended, the operation returns participants' details for that meeting instance.\n\n* If the meeting is in progress, the operation returns all the real-time participants. If the meeting is ended, the operation returns all the participants that have joined the meeting.\n\n* If the `breakoutSessionId` parameter is specified, the operation returns participants who joined the specified breakout session. It only applies to end meeting instances.\n\n* The `breakoutSessionsAttended` attribute is only returned for a participant of an ended meeting instance if the participant joined breakout sessions in the meeitng.\n\n* The `meetingStartTimeFrom` and `meetingStartTimeTo` only apply when `meetingId` is a series ID or an occurrence ID.\n\n* If the webinar is in progress when the attendee has ever been unmuted to speak in the webinar, this attendee becomes a panelist. The operation returns include the people who have been designated as panelists when the webinar is created and have joined the webinar, and the attendees who have joined the webinar and are unmuted to speak in the webinar temporarily. If the webinar is ended, the operation returns all the participants, including all panelists and all attendees who are not panelists.\n\n#### Request Header\n\n* `timezone`: Time zone for time stamps in the response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones).", "tags": [ "Participants" ], "parameters": [ { "name": "max", "in": "query", "description": "Limit the maximum number of participants in the response, up to 100.", "example": "100", "schema": { "type": "number", "default": 10 } }, { "name": "meetingId", "in": "query", "description": "The unique identifier for the meeting. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "breakoutSessionId", "in": "query", "description": "The unique identifier for a breakout session which happened during an ended meeting instance. If the `breakoutSessionId` is specified, the operation returns participants who joined the breakout session. Only applies to ended meeting instances.", "example": "c84ba778-2f46-4dc6-9459-398694732d70", "schema": { "type": "string" } }, { "name": "meetingStartTimeFrom", "in": "query", "description": "Meetings start from the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeFrom` is not specified, it equals `meetingStartTimeTo` minus 1 month; if `meetingStartTimeTo` is also not specified, the default value for `meetingStartTimeFrom` is 1 month before current date and time.", "example": "2022-10-02T17:31:00Z", "schema": { "type": "string" } }, { "name": "meetingStartTimeTo", "in": "query", "description": "Meetings start before the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeTo` is not specified, it equals the result of a comparison, `meetingStartTimeFrom` plus one month and the current time, and the result is the earlier of the two; if `meetingStartTimeFrom` is also not specified, the default value for `meetingStartTimeTo` is current date and time minus 1 month.", "example": "2022-10-30T09:30:00Z", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the email of a user in a site they manage and the API will return meeting participants of the meetings that are hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "joinTimeFrom", "in": "query", "description": "The time participants join a meeting starts from the specified date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `joinTimeFrom` is not specified, it equals `joinTimeTo` minus 7 days.", "example": "2022-10-22T09:30:00", "schema": { "type": "string" } }, { "name": "joinTimeTo", "in": "query", "description": "The time participants join a meeting before the specified date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `joinTimeTo` is not specified, it equals `joinTimeFrom` plus 7 days. The interval between `joinTimeFrom` and `joinTimeTo` must be within 90 days.", "example": "2022-10-25T09:30:00", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/meetingParticipants/query": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Participant" } } } }, "example": { "items": [ { "id": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "orgId": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "host": true, "coHost": false, "spaceModerator": false, "email": "joeDoe@cisco.com", "displayName": "Joe Doe", "invitee": false, "muted": false, "meetingStartTime": "2020-10-02T17:31:00Z", "video": "on", "state": "lobby", "breakoutSessionId": "2e373567-465b-8530-a18a-7025e1871d40", "joinedTime": "2022-10-25T09:00:00Z", "leftTime": "2022-10-25T09:30:00Z", "siteUrl": "example.webex.com", "meetingId": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "hostEmail": "janeDoe@cisco.com", "devices": [ { "correlationId": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "deviceType": "webex_meeting_center_mac", "audioType": "pstn", "joinedTime": "2019-04-23T17:31:00.000Z", "leftTime": "2019-04-23T17:32:00.000Z", "durationSecond": 60, "callType": "callIn", "phoneNumber": "745273328" } ], "breakoutSessionsAttended": [ { "id": "c84ba778-2f46-4dc6-9459-398694732d70", "name": "Breakout session 1", "joinedTime": "2022-10-25T09:05:00Z", "leftTime": "2022-10-25T09:10:00Z" } ], "sourceId": "cisco" } ] } } } }, "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": "Query Meeting Participants with Email", "operationId": "Query Meeting Participants with Email", "description": "Query participants in a live meeting, or after the meeting, using participant's email. The `meetingId` parameter is the unique identifier for the meeting and is required.\n\nThe authenticated user calling this API must either have an Administrator role with the `meeting:admin_participants_read` scope, or be the meeting host.\n\n* If the `meetingId` value specified is for a meeting series, the operation returns participants' details for the last instance in the meeting series. If the `meetingStartTimeFrom` value and the `meetingStartTimeTo` value are specified, the operation returns participants' details for the last instance in the meeting series in the time range.\n\n* If the `meetingId` value specified is for a scheduled meeting from a meeting series, the operation returns participants' details for that scheduled meeting. If the `meetingStartTimeFrom` value and the `meetingStartTimeTo` value are specified, the operation returns participants' details for the last instance in the scheduled meeting in the time range.\n\n* If the `meetingId` value specified is for a meeting instance which is in progress or ended, the operation returns participants' details for that meeting instance.\n\n* The `meetingStartTimeFrom` and `meetingStartTimeTo` only apply when `meetingId` is a series ID or an occurrence ID.\n\n#### Request Header\n\n* `timezone`: Time zone for time stamps in the response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones).", "tags": [ "Participants" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "The unique identifier for the meeting.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "meetingStartTimeFrom", "in": "query", "description": "Meetings start from the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeFrom` is not specified, it equals `meetingStartTimeTo` minus 1 month; if `meetingStartTimeTo` is also not specified, the default value for `meetingStartTimeFrom` is 1 month before current date and time.", "example": "2022-10-02T17:31:00Z", "schema": { "type": "string" } }, { "name": "meetingStartTimeTo", "in": "query", "description": "Meetings start before the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeTo` is not specified, it equals the result of a comparison, `meetingStartTimeFrom` plus one month and the current time, and the result is the earlier of the two; if `meetingStartTimeFrom` is also not specified, the default value for `meetingStartTimeTo` is current date and time minus 1 month.", "example": "2022-10-25T09:30:00Z", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the email of a user in a site they manage and the API will return meeting participants of the meetings that are hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ], "requestBody": { "content": { "application/json": { "example": { "emails": [ "john.andersen@example.com", "brenda.song@example.com", "alex.yang@example.com" ], "joinTimeFrom": "2022-10-22T09:30:00", "joinTimeTo": "2022-10-25T09:30:00" }, "schema": { "type": "object", "properties": { "emails": { "type": "array", "items": { "type": "string", "example": "john.andersen@example.com" }, "description": "List of participant email addresses." }, "joinTimeFrom": { "type": "string", "example": "2022-10-22T09:30:00", "description": "The time participants join a meeting starts from the specified date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `joinTimeFrom` is not specified, it equals `joinTimeTo` minus 7 days." }, "joinTimeTo": { "type": "string", "example": "2022-10-30T09:30:00", "description": "The time participants join a meeting before the specified date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `joinTimeTo` is not specified, it equals `joinTimeFrom` plus 7 days. The interval between `joinTimeFrom` and `joinTimeTo` must be within 90 days." } } } } } } } }, "/meetingParticipants/{participantId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Participant" }, "example": { "id": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "orgId": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "host": true, "coHost": false, "spaceModerator": false, "email": "joeDoe@cisco.com", "displayName": "Joe Doe", "invitee": false, "muted": false, "meetingStartTime": "2020-10-02T17:31:00Z", "video": "on", "state": "lobby", "breakoutSessionId": "2e373567-465b-8530-a18a-7025e1871d40", "joinedTime": "2022-10-25T09:00:00Z", "leftTime": "2022-10-25T09:30:00Z", "siteUrl": "example.webex.com", "meetingId": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "hostEmail": "janeDoe@cisco.com", "devices": [ { "correlationId": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "deviceType": "webex_meeting_center_mac", "audioType": "pstn", "joinedTime": "2019-04-23T17:31:00.000Z", "leftTime": "2019-04-23T17:32:00.000Z", "durationSecond": 60, "callType": "callIn", "phoneNumber": "745273328" } ], "breakoutSessionsAttended": [ { "id": "c84ba778-2f46-4dc6-9459-398694732d70", "name": "Breakout session 1", "joinedTime": "2022-10-25T09:05:00Z", "leftTime": "2022-10-25T09:10:00Z" } ], "sourceId": "cisco" } } } }, "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 Meeting Participant Details", "operationId": "Get Meeting Participant Details", "description": "Get a meeting participant details of a live or post meeting. The `participantId` is required to identify the meeting and the participant.\n\nThe authenticated user calling this API must either have an Administrator role with the `meeting:admin_participants_read` scope, or be the meeting host.", "tags": [ "Participants" ], "parameters": [ { "name": "participantId", "in": "path", "description": "The unique identifier for the meeting and the participant.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the email of a user in a site they manage and the API will return meeting participants of the meetings that are hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InProgressParticipant" }, "example": { "id": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "orgId": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "host": true, "coHost": false, "spaceModerator": false, "email": "joeDoe@cisco.com", "displayName": "Joe Doe", "invitee": false, "video": "on", "muted": false, "state": "lobby", "siteUrl": "example.webex.com", "meetingId": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "hostEmail": "janeDoe@cisco.com", "devices": [ { "correlationId": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "deviceType": "mac", "audioType": "pstn", "joinedTime": "2019-04-23T17:31:00.000Z", "leftTime": "2019-04-23T17:32:00.000Z" } ] } } } }, "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": "Update a Participant", "operationId": "Update a Participant", "description": "Mute, un-mute, expel, or admit a participant in a live meeting. The `participantId` is required to identify the meeting and the participant.\n\nNotes:\n\n* The owner of the OAuth token calling this API needs to be the meeting host or co-host.\n\n* The `expel` attribute always takes precedence over `admit` and `muted`. The request can have all `expel`, `admit` and `muted` or any of them.\n\n
There is an inconsistent behavior in Webex Meetings App when all active meeting participants join using Webex Meetings App and the host attempts to change meeting participant status using this API. Requests to mute, un-mute, admit, or expel a meeting participant return a successful response and update the state in the API, but the changes will not be applied to the Webex Meetings App participants. The inconsistent behavior in Webex Meetings App will be corrected in a future release.\n**Workaround**: [Enable closed captions](https://help.webex.com/en-us/article/WBX47352/How-Do-I-Enable-Closed-Captions?) or enable the [Webex Assistant](https://help.webex.com/en-us/article/n91uf2x/Turn-on-or-turn-off-Webex-Assistant-during-a-meeting-or-webinar).
", "tags": [ "Participants" ], "parameters": [ { "name": "participantId", "in": "path", "description": "The unique identifier for the meeting and the participant.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "muted": false }, "schema": { "type": "object", "properties": { "muted": { "type": "boolean", "description": "If `true`, participant is muted." }, "admit": { "type": "boolean", "description": "If `true` the participant admit a participant in the lobby to the meeting. Has no effect if the participant is not in the lobby or when the value is set to `false`." }, "expel": { "type": "boolean", "description": "If `true` the participant is expelled from the meeting." } } } } } } } }, "/meetingParticipants/admit": { "post": { "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": { "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": "Admit Participants", "operationId": "Admit Participants", "description": "Admit multiple participants to a meeting in progress.\n\nThis API limits the maximum size of `items` in the request body to 100.\n\nEach `participantId` of `items` in the request body should have the same prefix of `meetingId`.", "tags": [ "Participants" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "items": [ { "participantId": "560d7b784f5143e3be2fc3064a5c4999_I_204252993233618782_23e16d67-17f3-3ef1-b830-f33d17c0232e" }, { "participantId": "560d7b784f5143e3be2fc3064a5c4999_I_204252993233618782_23e16d67-17f3-3ef1-b830-f33d17c0233d" } ] }, "schema": { "$ref": "#/components/schemas/AdmitParticipantsObject" } } } } } }, "/meetingParticipants/callout": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CalloutResponse" }, "example": { "participantId": "d8c3347d7ec04242ba9b856184b334ac_I_630641605678082408_57514861-50f7-3f5b-864f-ce0e308bf653", "invitationCorrelationId": "871ab255-64e6-4cd2-a5af-d33953898356", "meetingNumber": "79100342367", "meetingId": "d8c3347d7ec04242ba9b856184b334ac", "address": "SIP:9053523155@examplezone.cisco.com", "addressType": "sipAddress", "displayName": "Brenda DX80", "state": "pending" } } } }, "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": "Call Out a SIP Participant", "operationId": "Call Out a SIP Participant", "description": "Initiate a call to a SIP participant to join a meeting.\n\nIf a user invoking the API is not a [Service App](/docs/service-apps), the user must join the meeting before invoking the API. If a user is a [Service App](/docs/service-apps), the service app can invoke the API without joining the meeting. In both cases, the normal user or the service app that invokes the API must be the meeting host or cohost. If the meeting is created by the service app on behalf of the real host, the service app cannot use the admin on behalf function to invoke this API. Instead the host or cohost must execute the action.\n\nThe authenticated user calling this API must have the `meeting:participants_write` scope.\n\nThe ringing on the invited SIP device stops in 30 seconds if there is no response.", "tags": [ "Participants" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "meetingId": "d8c3347d7ec04242ba9b856184b334ac", "address": "SIP:9053523155@examplezone.cisco.com", "addressType": "sipAddress", "invitationCorrelationId": "871ab255-64e6-4cd2-a5af-d33953898356", "displayName": "Brenda DX80" }, "schema": { "$ref": "#/components/schemas/CalloutRequest" } } } } } }, "/meetingParticipants/cancelCallout": { "post": { "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": { "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": "Cancel Calling Out a SIP Participant", "operationId": "Cancel Calling Out a SIP Participant", "description": "Cancel the call to a SIP participant before the ringing on the invited SIP device stops. The ringing on the invited SIP device stops in 30 seconds if there is no response.\n\nIf a user invoking the API is not a [Service App](/docs/service-apps), the user must join the meeting before invoking the API. If a user is a [Service App](/docs/service-apps), the service app can invoke the API without joining the meeting. In both cases, the normal user or the service app that invokes the API must be the meeting host or cohost. If the meeting is created by the service app on behalf of the real host, the service app cannot use the admin on behalf function to invoke this API. Instead the host or cohost must execute the action.\n\nThe authenticated user calling this API must have the `meeting:participants_write` scope.", "tags": [ "Participants" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "participantId": "d8c3347d7ec04242ba9b856184b334ac_I_630641605678082408_57514861-50f7-3f5b-864f-ce0e308bf653" }, "schema": { "$ref": "#/components/schemas/CancelCalloutRequest" } } } } } }, "/meetings/polls": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/PollCollectionResponse" }, "example": { "items": [ { "id": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "meetingId": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "startTime": "2021-07-06T09:22:34Z", "endTime": "2021-07-06T09:25:51Z", "timerDuration": 300, "displayName": "John Andersen", "email": "john.andersen@example.co", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "questions": [ { "id": "6f31147e-dd69-4ea9-8b75-2c5834b72ba2", "order": "1", "title": "Where is Webex exclusively sold through local partners?", "type": "single", "options": [ { "order": "1", "value": "China", "isCorrect": 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": "List Meeting Polls", "operationId": "List Meeting Polls", "description": "Lists all the polls and the poll questions in a meeting when ready.\n\n* Only [meeting instances](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) in state `ended` or `inProgress` are supported for `meetingId`.\n\n* No pagination for this API because we don't expect a large number of questions for each meeting.\n\n
Polls are available within 15 minutes following the meeting.
", "tags": [ "Meeting Polls" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the polls belong.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/meetings/pollResults": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/PollResultCollectionResponse" }, "example": { "items": [ { "id": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "meetingId": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "totalAttendees": 10, "totalRespondents": 10, "startTime": "2021-07-06T09:25:34Z", "endTime": "2021-07-06T09:28:34Z", "timerDuration": 300, "displayName": "John Andersen", "email": "john.andersen@example.com", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "questions": [ { "id": "6f31147e-dd69-4ea9-8b75-2c5834b72ba2", "order": "1", "title": "What colors do you like?", "type": "single", "answerSummary": [ { "order": "1", "value": "China", "totalRespondents": 10, "isCorrect": true } ], "respondents": { "links": { "prev": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=0&max=5", "self": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=5&max=5", "next": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=10&max=5" }, "items": [ { "displayName": "John Andersen", "email": "john.andersen@example.com", "answers": [ "Green" ] } ] } } ] } ] } } } }, "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 Meeting PollResults", "operationId": "Get Meeting PollResults", "description": "List the meeting polls, the poll's questions, and answers from the meeting when ready.\n\n* Only [meeting instances](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) in state `ended` or `inProgress` are supported for `meetingId`.\n\n* Long result sets will be split into [pages](/docs/basics#pagination).\n\n* This API is paginated by the sum of respondents from all questions in a meeting, these pagination links are returned in the response header.\n\n
Polls results are available within 15 minutes following the meeting.
", "tags": [ "Meeting Polls" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the polls belong.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of respondents in a meeting in the response, up to 100.", "example": "10", "schema": { "type": "number", "default": 10 } } ] } }, "/meetings/polls/{pollId}/questions/{questionId}/respondents": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/RespondentCollectionResponse" }, "example": { "items": [ { "displayName": "John Andersen", "email": "john.andersen@example.com", "answers": [ "Green" ] } ] } } } }, "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 Respondents of a Question", "operationId": "List Respondents of a Question", "description": "Lists the respondents to a specific questions in a poll.\n\n* Only [meeting instances](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) in state `ended` or `inProgress` are supported for `meetingId`.\n\n* Long result sets are split into [pages](/docs/basics#pagination).\n\n
The list of poll respondents are available within 15 minutes following the meeting.
", "tags": [ "Meeting Polls" ], "parameters": [ { "name": "pollId", "in": "path", "description": "A unique identifier for the poll to which the respondents belong.", "required": true, "example": "1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679", "schema": { "type": "string" } }, { "name": "questionId", "in": "path", "description": "A unique identifier for the question to which the respondents belong.", "required": true, "example": "7c1eda33-cbef-4536-8e34-45b462347af8", "schema": { "type": "string" } }, { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the respondents belong.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of respondents in a specified question in the response, up to 100.", "example": "10", "schema": { "type": "number", "default": 10 } } ] } }, "/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 upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Update Audio Options", "operationId": "Update Audio Options", "description": "Updates 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 update 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" } } ], "requestBody": { "content": { "application/json": { "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 } }, "schema": { "$ref": "#/components/schemas/AudioObject" } } } } } }, "/meetingPreferences/video": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetVideoObject" }, "example": { "videoDevices": [ { "deviceName": "device1", "deviceAddress": "device1@example.com", "isDefault": false }, { "deviceName": "device2", "deviceAddress": "device2@example.com", "isDefault": 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 Video Options", "operationId": "Get Video Options", "description": "Retrieves video 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 video 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 using [Get Site List](/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/GetVideoObject" }, "example": { "videoDevices": [ { "deviceName": "device1", "deviceAddress": "device1@example.com", "isDefault": false }, { "deviceName": "device2", "deviceAddress": "device2@example.com", "isDefault": 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": "Update Video Options", "operationId": "Update Video Options", "description": "Updates video 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 video 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": { "videoDevices": [ { "deviceName": "device1", "deviceAddress": "device1@example.com", "isDefault": false }, { "deviceName": "device2", "deviceAddress": "device2@example.com", "isDefault": true } ] }, "schema": { "$ref": "#/components/schemas/UpdateVideoObject" } } } } } }, "/meetingPreferences/schedulingOptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/SchedulingOptionsObject" }, "example": { "enabledJoinBeforeHost": false, "joinBeforeHostMinutes": 10, "enabledAutoShareRecording": false, "enabledWebexAssistantByDefault": false, "delegateEmails": [ "marcus.hoffmann@example.com", "brenda.song@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", "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 Scheduling Options", "operationId": "Get Scheduling Options", "description": "Retrieves scheduling 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 scheduling 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/SchedulingOptionsObject" }, "example": { "enabledJoinBeforeHost": false, "joinBeforeHostMinutes": 10, "enabledAutoShareRecording": false, "enabledWebexAssistantByDefault": false, "delegateEmails": [ "marcus.hoffmann@example.com", "brenda.song@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", "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 Scheduling Options", "operationId": "Update Scheduling Options", "description": "Updates scheduling options for the authenticated user.\n\n* If `delegateEmails` is null or not specified, the user's delegate emails are not changed. If `delegateEmails` is specified and not empty, the user's delegate emails are updated with the specified emails. If `delegateEmails` is specified as an empty array, the user's existing delegate emails are removed.", "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 scheduling 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": { "enabledJoinBeforeHost": false, "joinBeforeHostMinutes": 0, "enabledAutoShareRecording": false, "enabledWebexAssistantByDefault": false, "delegateEmails": [ "marcus.hoffmann@example.com, brenda.song@example.com" ] }, "schema": { "$ref": "#/components/schemas/SchedulingOptionsObject" } } } } } }, "/meetingPreferences/schedulingOptions/delegateEmails/insert": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "emails": { "type": "array", "items": { "type": "string" } } } }, "example": { "emails": [ "marcus.hoffmann@example.com", "brenda.song@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", "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": "Insert Delegate Emails", "operationId": "Insert Delegate Emails", "description": "Insert delegate emails 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 scheduling 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": { "emails": [ "marcus.hoffmann@example.com, brenda.song@example.com" ] }, "schema": { "$ref": "#/components/schemas/SchedulingOptionsDelegateEmailsObject" } } } } } }, "/meetingPreferences/schedulingOptions/delegateEmails/delete": { "post": { "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": { "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 Delegate Emails", "operationId": "Delete Delegate Emails", "description": "Delete delegate emails 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 scheduling 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": { "emails": [ "marcus.hoffmann@example.com, brenda.song@example.com" ] }, "schema": { "$ref": "#/components/schemas/SchedulingOptionsDelegateEmailsObject" } } } } } }, "/meetingPreferences/sites": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/SitesObject" }, "example": { "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 } ] } } } }, "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 Site List", "operationId": "Get Site List", "description": "Retrieves the list of Webex sites that the authenticated user is set up to use.\nWhen the admin tries to get the site list via `userEmail`, if `siteUrl` is not specified, the API searches the user ID from the admin's default site. If `siteUrl` is specified, the API searches the user ID from the specified site.", "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 and the API will return the list of Webex sites for that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site to query. If `siteUrl` is not specified, the query will use the default site for the admin's authorization token used to make the call.", "example": "site4-example.webex.com", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/SiteObject" }, "example": { "siteUrl": "site4-example.webex.com", "default": 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": "Update Default Site", "operationId": "Update Default Site", "description": "Updates the default site for the authenticated user.", "tags": [ "Preferences" ], "parameters": [ { "name": "defaultSite", "in": "query", "description": "Whether or not to change user's default site. ***Note***: `defaultSite` should be set to true for the user's single default site", "required": true, "example": "true", "schema": { "type": "boolean" } }, { "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 default site for that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "siteUrl": "site4-example.webex.com" }, "schema": { "$ref": "#/components/schemas/DefaultSiteObject" } } } } } }, "/admin/meetingPreferences/personalMeetingRoom/refreshId": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/BatchRefreshPMRIDResponseObject" }, "example": { "siteUrl": "example.webex.com", "personalMeetingRoomIds": [ { "email": "john.andersen@example.com", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZ", "personalMeetingRoomId": "prABCD23670651" }, { "email": "marcus.hoffmann@example.com", "personId": "sdfeY28890KLFHzovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZ", "personalMeetingRoomId": "prABCD99751428" }, { "email": "brenda.song@example.com", "personId": "FYG98gxYy1AYOP086VMLOUYTTCCN0IYTAio2uydbzlkyjYTQ0LTRmZ", "personalMeetingRoomId": "prABCD56290641" } ] } } } }, "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" } } } } } }, "example": { "message": "The request could not be understood by the server due to malformed syntax. See 'errors' for more details.", "errors": [ { "description": "Personal meeting room ID is being used by someone else." } ] } } } }, "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": "Batch Refresh Personal Meeting Room ID", "operationId": "Batch Refresh Personal Meeting Room ID", "description": "Refreshes personal room IDs automatically according to the current personal room ID rule of the target site or by the values specified by the admin user.\n\nThe new personal room IDs are generated by the site's settings automatically if `systemGenerated` is true; otherwise, replace the existing personal room IDs with the specified values if `systemGenerated` is false or not specified.\n\nIt may take up to 30 minutes to see the updated personal room ID on the Webex meeting page after refreshing the personal room ID due to cache.\n\nEither all items in `personalMeetingRoomIds` have `personalMeetingRoomId`, or they all have `systemGenerated` which equals true. `personalMeetingRoomId` and `systemGenerated: true` cannot be specified at the same time.\n\nThe items in `personalMeetingRoomIds` either all have `personId` or all have `email` in a single request. Partial `personId` and partial `email` is not allowed in the same request.", "tags": [ "Preferences" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "siteUrl": "example.webex.com", "personalMeetingRoomIds": [ { "email": "john.andersen@example.com", "personalMeetingRoomId": "prABCD23670651" }, { "email": "marcus.hoffmann@example.com", "personalMeetingRoomId": "prABCD99751428" }, { "email": "brenda.song@example.com", "personalMeetingRoomId": "prABCD56290641" } ] }, "schema": { "$ref": "#/components/schemas/BatchRefreshPMRIDObject" } } } } } }, "/meetings/q_and_a": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/QAObject" }, "description": "An array of Q&A objects." } } }, "example": { "items": [ { "id": "d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679", "meetingId": "7b789da198e531ce0c4d84243abd9fee_I_231245894851233679", "totalAttendees": 7, "totalRespondents": 1, "displayName": "John Andersen", "email": "john.andersen@example.com", "question": "Are you ok?", "answers": { "links": { "prev": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=0&max=2", "self": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=2&max=2", "next": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=4&max=2" }, "items": [ { "displayName": "John Andersen", "email": "john.andersen@example.com", "answered": false }, { "displayName": "John Andersen", "email": "john.andersen@example.com", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "answer": "Fine, thank you.", "answered": 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", "headers": {}, "content": {} }, "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 Meeting Q and A", "operationId": "List Meeting Q and A", "description": "Lists questions and answers from a meeting, when ready.\n\nNotes:\n\n* Only [meeting instances](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) in state `ended` or `inProgress` are supported for `meetingId`.\n\n* Long result sets will be split into [pages](/docs/basics#pagination).\n\n* This API is paginated by the sum of answers in a meeting, These pagination links are returned in the response header.", "tags": [ "Meeting Q and A" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the Q&A belongs to.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limits the maximum number of answers in the response, up to 100.", "example": "10", "schema": { "type": "number", "default": 10 } } ] } }, "/meetings/q_and_a/{questionId}/answers": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AnswerObject" }, "description": "An array of answers to a specific question." } } }, "example": { "items": [ { "displayName": "John Andersen", "email": "john.andersen@example.com", "answered": false }, { "displayName": "John Andersen", "email": "john.andersen@example.com", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "answer": "Fine, thank you.", "answered": 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", "headers": {}, "content": {} }, "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 Answers of a Question", "operationId": "List Answers of a Question", "description": "Lists the answers to a specific question asked in a meeting.\n\n* Only [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) in state `ended` or `inProgress` are supported for `meetingId`.\n\n* Long result sets will be split into [pages](/docs/basics#pagination).", "tags": [ "Meeting Q and A" ], "parameters": [ { "name": "questionId", "in": "path", "description": "The ID of a question.", "required": true, "example": "d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679", "schema": { "type": "string" } }, { "name": "meetingId", "in": "query", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the Q&A belongs to.", "required": true, "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of Q&A's answers in the response, up to 100.", "example": "100", "schema": { "type": "number", "default": 10 } } ] } }, "/meeting/qualities": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MeetingQualitiesResponse" }, "example": { "items": [ { "meetingInstanceId": "e5dba9613a9d455aa49f6ffdafb6e7db_I_191395283063545470", "webexUserName": "John Andersen", "webexUserEmail": "john.andersen@example.com", "joinTime": "2020-04-10T17:00:00.000Z", "leaveTime": "2020-04-10T17:02:00.000Z", "joinMeetingTime": "5.793", "clientType": "Teams_Mobile_Client (iOS)", "clientVersion": "40.5.0.210", "osType": "mac", "osVersion": "Version 10.14.6 (Build 18G3020)", "hardwareType": "mac book", "speakerName": "MacBook Pro Speakers", "networkType": "wifi", "localIP": "10.24.72.54", "publicIP": "10.24.72.54", "maskedLocalIP": "10.24.72.54", "maskedPublicIP": "10.24.72.54", "camera": "FaceTime HD Camera", "microphone": "External Microphone", "serverRegion": "San Jose, USA", "videoMeshCluster": "Mesh Cluster One", "videoMeshServer": "server.example.com", "participantId": "8635cbf0ca1a4573b27348e560679b25_I_158174534545967299_57", "participantSessionId": "3324C9D0-9EA7-45A2-B249-5B62A384AFEF", "videoIn": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "H.264 BP", "jitter": [ 170 ], "transportType": "UDP" } ], "videoOut": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "H.264 BP", "jitter": [], "transportType": "UDP" } ], "audioIn": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "Opus", "jitter": [], "transportType": "UDP" } ], "audioOut": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "Opus", "jitter": [], "transportType": "UDP" } ], "shareIn": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "H.264 BP", "jitter": [], "transportType": "UDP" } ], "shareOut": [ { "samplingInterval": 60, "startTime": "2020-04-10T17:00:00.000Z", "endTime": "2020-04-10T18:00:00.000Z", "packetLoss": [], "latency": [], "resolutionHeight": [], "frameRate": [ 25.940001 ], "mediaBitRate": [], "codec": "H.264 BP", "jitter": [], "transportType": "UDP" } ], "resources": [ { "processAverageCPU": [], "processMaxCPU": [], "systemAverageCPU": [], "systemMaxCPU": [] } ] } ] } } } }, "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 Meeting Qualities", "operationId": "getMeetingQualities", "description": "Get quality data for a meeting, by `meetingId`. Only organization administrators can retrieve meeting quality data.", "tags": [ "Meeting Qualities" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the specific meeting instance. **Note:** The `meetingId` can be obtained via the Meeting List API when meetingType=meeting. The `id` attribute in the Meeting List Response is what is needed, for example, `e5dba9613a9d455aa49f6ffdafb6e7db_I_191395283063545470`.", "required": true, "example": "e5dba9613a9d455aa49f6ffdafb6e7db_I_191395283063545470", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of media sessions in the response.", "example": 100, "schema": { "type": "number", "default": 100 } }, { "name": "offset", "in": "query", "description": "Offset from the first result that you want to fetch.", "example": 0, "schema": { "type": "number" } } ] } }, "/admin/meeting/config/sessionTypes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SiteSessionType" }, "description": "An array of the site's session types." } } }, "example": { "items": [ { "id": "3", "shortName": "PRO", "siteUrl": "example.webex.com", "name": "Pro meeting", "type": "meeting" }, { "id": "9", "shortName": "ONS", "siteUrl": "example.webex.com", "name": "Online Event", "type": "EventCenter" } ] } } } }, "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 Site Session Types", "operationId": "List Site Session Types", "description": "List session types for a specific site.", "tags": [ "Session Types" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site to query. If siteUrl is not specified, the query will use the default site for the admin's authorization token used to make the call.", "example": "example.webex.com", "schema": { "type": "string" } } ] } }, "/admin/meeting/userconfig/sessionTypes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/UserSessionTypes" }, "description": "An array of the user's session types." } } }, "example": { "items": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "email": "john.andersen@example.com", "siteUrl": "example.webex.com", "sessionTypes": [ { "id": "3", "shortName": "PRO", "name": "Pro meeting", "type": "meeting" }, { "id": "9", "shortName": "ONS", "name": "Online Event", "type": "EventCenter" } ] } ] } } } }, "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 User Session Type", "operationId": "List User Session Type", "description": "List session types for a specific user.", "tags": [ "Session Types" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site to query.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "personId", "in": "query", "description": "A unique identifier for the user.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "schema": { "type": "string" } }, { "name": "email", "in": "header", "description": "e.g. `john.andersen@example.com` (string, optional) - The email of the user.", "required": false, "schema": { "type": "string" }, "example": "`john.andersen@example.com` (string, optional) - The email of the user." } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/UserSessionTypes" }, "example": { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "email": "john.andersen@example.com", "siteUrl": "example.webex.com", "sessionTypes": [ { "id": "3", "shortName": "PRO", "name": "Pro meeting", "type": "meeting" }, { "id": "9", "shortName": "ONS", "name": "Online Event", "type": "EventCenter" } ] } } } }, "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": "Update User Session Types", "operationId": "Update User Session Types", "description": "Assign session types to specific users.\n\n* At least one of the following body parameters is required to update a specific user session type: `personId`, `email`.", "tags": [ "Session Types" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateUserSessionType" } } } } } }, "/meetingSummaries": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SummaryObject" }, "description": "Meeting summary object." } }, "example": { "items": [ { "id": "75ddf169-eef0-45b4-9faa-0112a16ec9d0", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "status": "available", "notes": { "content": "

Summary of the meeting in HTML format

" }, "actionItems": [ { "content": "Action item No.1 in plaintext" }, { "content": "Action item No.2 in plaintext" }, { "content": "Action item No.3 in plaintext" } ] } ] } } } } }, "400": { "description": "Bad Request", "headers": {}, "content": {} }, "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 Summary by Meeting ID", "operationId": "getSummaryByMeetingID", "description": "Get the summary of an ended [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) by the meeting ID.\n\nPlease note that only **meeting instances** in state `ended` are supported, and currently the meeting ID of a meeting series, a scheduled meeting, an in-progress meeting instance, or a scheduled personal room meeting is not supported for this API. This API can only fetch summaries that you have access to, and if a meeting summary is deleted, you won't be able to see it either. And, this is an API for normal user. If you are a compliance officer, please use the Get Summary For Compliance Officer API", "tags": [ "Summaries" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the summary belongs. Please note that currently the meeting ID of a meeting series, a scheduled meeting, an in-progress meeting instance, or a scheduled personal room meeting is not supported for this API. If `meetingId` is not specified, the query will be rejected.", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/admin/meetingSummaries": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SummaryObject" }, "description": "Meeting summary object" } }, "example": { "items": [ { "id": "75ddf169-eef0-45b4-9faa-0112a16ec9d0", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "status": "available", "notes": { "content": "

Summary of the meeting in HTML format

" }, "actionItems": [ { "content": "Action item No.1 in plaintext" }, { "content": "Action item No.2 in plaintext" }, { "content": "Action item No.3 in plaintext" } ] } ] } } } } }, "400": { "description": "Bad Request", "headers": {}, "content": {} }, "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 Summary For Compliance Officer", "operationId": "getSummaryForComplianceOfficer", "description": "Lists available or deleted summaries of an ended [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) by meeting ID. This API can only be accessed by compliance officers. With this API, a compliance officer can list summaries of any ended meeting instances in his organization including available and deleted summaries", "tags": [ "Summaries" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the summary belongs. Please note that currently the meeting ID of a meeting series, a scheduled meeting, an in-progress meeting instance, or a scheduled personal room meeting is not supported for this API. If `meetingId` is not specified, the query will be rejected.", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } } ] } }, "/meetingSummaries/{summaryId}": { "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: 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": "Delete a Summary", "operationId": "deleteSummary", "description": "Removes a summary with a specified summary ID. The deleted summary cannot be recovered. A deleted summary can not be accessed by regular users, i.e. host or attendees, but can be access by compliance officers", "tags": [ "Summaries" ], "parameters": [ { "name": "summaryId", "in": "path", "description": "Unique identifier for the meeting summary.", "required": true, "example": "75ddf169-eef0-45b4-9faa-0112a16ec9d0", "schema": { "type": "string" } } ] } }, "/meetingTranscripts": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/TranscriptObject" }, "description": "Transcript array." } } }, "example": { "items": [ { "id": "8ce1f918-c138-4041-bb4a-5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9", "startTime": "2020-06-02T20:30:15.042Z", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "meetingTopic": "John's Meeting 01", "siteUrl": "example.webex.com", "scheduledMeetingId": "0ed74a1c0551494fb7a04e2881bf50ae_20210401T232500Z", "meetingSeriesId": "0ed74a1c0551494fb7a04e2881bf50ae", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "vttDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9/download?format=vtt", "txtDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9/download?format=txt", "status": "available" }, { "id": "074d892d-c7f7-4864-95db-31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e", "startTime": "2020-06-01T20:30:15.042Z", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "meetingTopic": "John's Meeting 02", "siteUrl": "example.webex.com", "scheduledMeetingId": "0ed74a1c0551494fb7a04e2881bf50ae_20210401T232500Z", "meetingSeriesId": "0ed74a1c0551494fb7a04e2881bf50ae", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "vttDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e/download?format=vtt", "txtDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e/download?format=txt", "status": "available" } ] } } } }, "400": { "description": "Bad Request", "headers": {}, "content": {} }, "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 Meeting Transcripts", "operationId": "List Meeting Transcripts", "description": "Lists available transcripts of an ended [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances).\n\nUse this operation to list transcripts of an ended [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) when they are ready. Please note that only **meeting instances** in state `ended` are supported for `meetingId`. **Meeting series**, **scheduled meetings** and `in-progress` **meeting instances** are not supported.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Transcripts" ], "parameters": [ { "name": "max", "in": "query", "description": "Maximum number of transcripts to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for transcripts to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If only `to` is specified, the default `from` value is 7 days before `to`; if no `to` or `from` is specified, the default `from` value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for List transcripts to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "meetingId", "in": "query", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the transcript belongs. Please note that currently the meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API. If `meetingId` is not specified, the operation returns an array of transcripts for all meetings of the current user.", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the `admin-level` scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user. If `meetingId` is not specified, it can not support `hostEmail`.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site from which the API lists transcripts. If not specified, the API lists transcripts from user's preferred site. All available Webex sites and the preferred site of the 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" } } ] } }, "/admin/meetingTranscripts": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/TranscriptObject" }, "description": "Transcript array" } } }, "example": { "items": [ { "id": "8ce1f918-c138-4041-bb4a-5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9", "startTime": "2020-06-02T20:30:15.042Z", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "meetingTopic": "John's Meeting 01", "siteUrl": "example.webex.com", "scheduledMeetingId": "0ed74a1c0551494fb7a04e2881bf50ae_20210401T232500Z", "meetingSeriesId": "0ed74a1c0551494fb7a04e2881bf50ae", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "vttDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9/download?format=vtt", "txtDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9/download?format=txt", "status": "available" }, { "id": "074d892d-c7f7-4864-95db-31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e", "startTime": "2020-06-01T20:30:15.042Z", "meetingId": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "meetingTopic": "John's Meeting 02", "siteUrl": "example.webex.com", "scheduledMeetingId": "0ed74a1c0551494fb7a04e2881bf50ae_20210401T232500Z", "meetingSeriesId": "0ed74a1c0551494fb7a04e2881bf50ae", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "vttDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e/download?format=vtt", "txtDownloadLink": "http://site-example.webex.com/v1/meetingTranscripts/31f7ae94206f_M_39f4371ca39c4a98b7f6ecc74247151e/download?format=txt", "status": "deleted" } ] } } } }, "400": { "description": "Bad Request", "headers": {}, "content": {} }, "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 Meeting Transcripts For Compliance Officer", "operationId": "List Meeting Transcripts For Compliance Officer", "description": "Lists available or deleted transcripts of an ended [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for a specific site.\n\nThe returned list is sorted in descending order by the date and time that the transcript was created.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Transcripts" ], "parameters": [ { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for transcripts to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If only `to` is specified, the default `from` value is 7 days before `to`; if no `to` or `from` is specified, the default `from` value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for List transcripts to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "max", "in": "query", "description": "Maximum number of transcripts to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site from which the API lists transcripts.", "required": true, "example": "example.webex.com", "schema": { "type": "string" } } ] } }, "/meetingTranscripts/{transcriptId}/download": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "text/vtt": { "example": "WEBVTT\n\n1\n00:00:20.904 --> 00:00:24.564\nThis is an s sample recording.\n\n2\n00:00:31.014 --> 00:00:33.744\nTesting out transcripts.\n" } } }, "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": "Download a Meeting Transcript", "operationId": "Download a Meeting Transcript", "description": "Download a meeting transcript from the meeting transcript specified by `transcriptId`.", "tags": [ "Transcripts" ], "parameters": [ { "name": "transcriptId", "in": "path", "description": "Unique identifier for the meeting transcript.", "required": true, "example": "5e01eeaadedb_M_0fc6ec11d9b6c909e04e1f6c76accda9", "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Format for the downloaded meeting transcript.", "example": "vtt", "schema": { "type": "string", "default": "vtt", "enum": [ "vtt", "txt" ] } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the `admin-level` scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] } }, "/meetingTranscripts/{transcriptId}/snippets": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SnippetObject" }, "description": "Transcript snippet array" } } }, "example": { "items": [ { "id": "195d64646ad14be2924ea50f541fd91d_00001", "text": "Hello everyone", "personName": "John Andersen", "personEmail": "john.andersen@example.com", "offset": 1000, "duration": 1500 } ] } } } }, "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 Snippets of a Meeting Transcript", "operationId": "List Snippets of a Meeting Transcript", "description": "Lists snippets of a meeting transcript specified by `transcriptId`.\n\nUse this operation to list snippets of a meeting transcript when they are ready.", "tags": [ "Transcripts" ], "parameters": [ { "name": "transcriptId", "in": "path", "description": "Unique identifier for the meeting transcript to which the snippets belong.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Maximum snippet items to be returned for this query, to support pagination.", "example": "10", "schema": { "type": "string" } } ] } }, "/meetingTranscripts/{transcriptId}/snippets/{snippetId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/SnippetObject" }, "example": { "id": "195d64646ad14be2924ea50f541fd91d_00001", "text": "Hello everyone", "personName": "John Andersen", "personEmail": "john.andersen@example.com", "offsetMillisecond": 1000, "durationMillisecond": 1500 } } } }, "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 a Transcript Snippet", "operationId": "Get a Transcript Snippet", "description": "Retrieves details for a transcript snippet specified by `snippetId` from the meeting transcript specified by `transcriptId`.", "tags": [ "Transcripts" ], "parameters": [ { "name": "transcriptId", "in": "path", "description": "Unique identifier for the meeting transcript to which the requested snippet belongs.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } }, { "name": "snippetId", "in": "path", "description": "Unique identifier for the snippet being requested.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d_00001", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/SnippetObject" }, "example": { "id": "195d64646ad14be2924ea50f541fd91d_00001", "text": "Hello everybody!", "personName": "John Andersen", "personEmail": "john.andersen@example.com", "offsetMillisecond": 1000, "durationMillisecond": 1500 } } } }, "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": "Update a Transcript Snippet", "operationId": "Update a Transcript Snippet", "description": "Updates details for a transcript snippet specified by `snippetId` from the meeting transcript specified by `transcriptId`.", "tags": [ "Transcripts" ], "parameters": [ { "name": "transcriptId", "in": "path", "description": "Unique identifier for the meeting transcript to which the snippet to be updated belongs.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } }, { "name": "snippetId", "in": "path", "description": "Unique identifier for the snippet being updated.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d_00001", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "reason": "audit", "text": "Hello everybody!" }, "schema": { "$ref": "#/components/schemas/UpdateSnippetObject" } } } } } }, "/meetingTranscripts/{transcriptId}": { "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: 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": "Delete a Transcript", "operationId": "Delete a Transcript", "description": "Removes a transcript with a specified transcript ID. The deleted transcript cannot be recovered. If a Compliance Officer deletes another user's transcript, the transcript will be inaccessible to regular users (host, attendees), but will be still available to the Compliance Officer.", "tags": [ "Transcripts" ], "parameters": [ { "name": "transcriptId", "in": "path", "description": "Unique identifier for the meeting transcript.", "required": true, "example": "195d64646ad14be2924ea50f541fd91d", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "reason": "audit", "comment": "Violates the company policy" }, "schema": { "$ref": "#/components/schemas/DeleteTranscriptObject" } } } } } }, "/meetingReports/usage": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingUsageReportObject" }, "description": "An array of meeting usage report objects." } } }, "example": { "items": [ { "meetingId": "089b137c3cf34b578896941e2d49dfe8_I_146987372776523573", "meetingNumber": "123456789", "meetingTitle": "John's Meeting", "start": "2023-01-18T10:26:30+08:00", "end": "2023-01-18T10:46:30+08:00", "duration": 20, "scheduledType": "meeting", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "totalPeopleMinutes": 60, "totalCallInMinutes": 60, "totalCallOutDomestic": 60, "totalCallInTollFreeMinutes": 60, "totalCallOutInternational": 60, "totalVoipMinutes": 60, "totalParticipants": 30, "totalParticipantsVoip": 10, "totalParticipantsCallIn": 10, "totalParticipantsCallOut": 10, "peakAttendee": 30, "totalRegistered": 30, "totalInvitee": 30, "serviceType": "MeetingCenter", "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Web" } ] } ] } } } }, "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 Meeting Usage Reports", "operationId": "List Meeting Usage Reports", "description": "List meeting usage reports of all the users on the specified site by an admin. You can specify a date range and the maximum number of meeting usage reports to return.\n\nThe list returned is sorted in descending order by the date and time the meetings were started.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* `siteUrl` is required, and the meeting usage reports of the specified site are listed. All available Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default timezone is `UTC` if not defined.", "tags": [ "Meetings Summary Report" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists meeting usage reports from. All available Webex sites 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" } }, { "name": "serviceType", "in": "query", "description": "Meeting usage report's service-type. If `serviceType` is specified, the API filters meeting usage reports by service-type. If `serviceType` is not specified, the API returns meeting usage reports by `MeetingCenter` by default. Valid values:\n\n+ `MeetingCenter`\n\n+ `EventCenter`\n\n+ `SupportCenter`\n\n+ `TrainingCenter`", "example": "MeetingCenter", "schema": { "type": "string" } }, { "name": "from", "in": "query", "description": "Starting date and time for meeting usage reports to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `to` and `from` cannot exceed 30 days and `from` cannot be earlier than 90 days ago.", "example": "2023-01-18T00:00:00+08:00", "schema": { "type": "string", "default": "If `to` is specified, the default value is 7 days before `to`; if `to` is not specified, the default value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time for meeting usage reports to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `to` and `from` cannot exceed 30 days.", "example": "2023-01-19T00:00:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "max", "in": "query", "description": "Maximum number of meetings to include in the meetings usage report in a single page. `max` must be greater than 0 and equal to or less than `1000`.", "schema": { "type": "number", "default": 10 } }, { "name": "timezone", "in": "header", "description": "e.g. Asia/Shanghai", "required": false, "schema": { "type": "string" }, "example": "Asia/Shanghai" } ] } }, "/meetingReports/attendees": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingAttendeeReportObject" }, "description": "An array of meeting attendee report objects." } } }, "example": { "items": [ { "meetingId": "089b137c3cf34b578896941e2d49dfe8_I_146987372776523573", "meetingNumber": "123456789", "meetingTitle": "John's Meeting", "displayName": "John Andersen", "email": "john.andersen@example.com", "joinedTime": "2023-01-18T10:26:30+08:00", "leftTime": "2023-01-18T10:46:30+08:00", "duration": 20, "participantType": "ATTENDEE", "ipAddress": "172.16.244.151", "clientAgent": "WINDOWS,IE", "company": "ExampleCompany", "phoneNumber": "85763644", "address1": "Building 1", "address2": "Street 1", "city": "San Jose", "state": "CA", "country": "US", "zipCode": "38755", "registered": false, "invited": 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": "List Meeting Attendee Reports", "operationId": "List Meeting Attendee Reports", "description": "Lists of meeting attendee reports by a date range, the maximum number of meeting attendee reports, a meeting ID, a meeting number or a meeting title.\n\nIf the requesting user is an admin, the API returns meeting attendee reports of the meetings hosted by all the users on the specified site filtered by meeting ID, meeting number or meeting title.\n\nIf it's a normal meeting host, the API returns meeting attendee reports of the meetings hosted by the user himself on the specified site filtered by meeting ID, meeting number or meeting title.\n\nThe list returned is grouped by meeting instances. Both the groups and items of each group are sorted in descending order of `joinedTime`. For example, if `meetingId` is specified and it's a meeting series ID, the returned list is grouped by meeting instances of that series. The groups are sorted in descending order of `joinedTime`, and within each group the items are also sorted in descending order of `joinedTime`. Please refer to [Meetings Overview](/docs/meetings) for details of meeting series, scheduled meeting and meeting instance.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* `siteUrl` is required, and the meeting attendee reports of the specified site are listed. All available Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\n* `meetingId`, `meetingNumber` and `meetingTitle` are optional parameters to query the meeting attendee reports, but at least one of them should be specified. If more than one parameter in the sequence of `meetingId`, `meetingNumber`, and `meetingTitle` are specified, the first one in the sequence is used. Currently, only ended meeting instance IDs and meeting series IDs are supported for `meetingId`. IDs of scheduled meetings or personal room meetings are not supported.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default timezone is `UTC` if not defined.", "tags": [ "Meetings Summary Report" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists meeting attendee reports from. All available Webex sites 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" } }, { "name": "from", "in": "query", "description": "Starting date and time for the meeting attendee reports to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `to` and `from` cannot exceed 30 days and `from` cannot be earlier than 90 days ago.", "example": "2023-01-18T00:00:00+08:00", "schema": { "type": "string", "default": "If `to` is specified, the default value is 7 days before `to`; if `to` is not specified, the default value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time for the meeting attendee reports to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `to` and `from` cannot exceed 30 days.", "example": "2023-01-19T00:00:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "max", "in": "query", "description": "Maximum number of meeting attendees to include in the meeting attendee report in a single page. `max` must be greater than 0 and equal to or less than `1000`.", "schema": { "type": "number", "default": 10 } }, { "name": "meetingId", "in": "query", "description": "Meeting ID for the meeting attendee reports to return. If specified, return meeting attendee reports of the specified meeting; otherwise, return meeting attendee reports of all meetings. Currently, only ended meeting instance IDs are supported. IDs of meeting series, scheduled meetings or personal room meetings are not supported.", "example": "089b137c3cf34b578896941e2d49dfe8_I_146987372776523573", "schema": { "type": "string" } }, { "name": "meetingNumber", "in": "query", "description": "Meeting number for the meeting attendee reports to return. If specified, return meeting attendee reports of the specified meeting; otherwise, return meeting attendee reports of all meetings.", "example": "123456789", "schema": { "type": "string" } }, { "name": "meetingTitle", "in": "query", "description": "Meeting title for the meeting attendee reports to return. If specified, return meeting attendee reports of the specified meeting; otherwise, return meeting attendee reports of all meetings.", "example": "John's Meeting", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. Asia/Shanghai", "required": false, "schema": { "type": "string" }, "example": "Asia/Shanghai" } ] } }, "/admin/meetings/{meetingId}": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingObjectForAdminListMeeting" }, "example": { "id": "870f51ff287b41be84648412901e0402_20191101T120000Z", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "meetingType": "scheduledMeeting", "state": "ready", "hostDidJoin": true, "attendeeDidJoin": true, "isModified": false, "timezone": "UTC", "start": "2019-11-01T12:00:00Z", "end": "2019-11-01T13:00:00Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } } } }, "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 a Meeting By an Admin", "operationId": "adminGetMeetingById", "description": "Retrieves details for a meeting with a specified meeting ID by an admin. The following sensitive attributes are hidden from the response: `agenda`, `hostKey`, `password`, `phoneAndVideoSystemPassword`, `panelistPassword`, `phoneAndVideoSystemPanelistPassword`, `webLink`, `sipAddress`, `dialInIpAddress`, `registration` and `telephony.accessCode`.\n\n* If the `meetingId` value specified is for a meeting series and `current` is `true`, the operation returns details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series.\n\n* If the `meetingId` value specified is for a meeting series and `current` is `false` or `current` is not specified, the operation returns details for the entire meeting series.\n\n* If the `meetingId` value specified is for a scheduled meeting from a meeting series, the operation returns details for that scheduled meeting.\n\n* If the `meetingId` value specified is for a meeting instance which is happening or has happened, the operation returns details for that meeting instance.\n\n* `trackingCodes` is not supported for ended meeting instances.\n\n* To learn more about which attributes are available for different meeting states, please refer to [Available Meeting Attributes for Different Meeting States](/docs/meetings#available-meeting-attributes-for-different-meeting-states).\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting being requested.", "required": true, "example": "25bbf831-5be9-4c25-b4b0-9b592c8a086b", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series. The default value is `false`.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/admin/meetings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingObjectForAdminListMeeting" }, "description": "Meetings array." } } }, "example": { "items": [ { "id": "870f51ff287b41be84648412901e0402_20191101T120000Z", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "meetingType": "scheduledMeeting", "state": "ready", "hostDidJoin": true, "attendeeDidJoin": true, "isModified": false, "timezone": "UTC", "start": "2019-11-01T12:00:00Z", "end": "2019-11-01T13:00:00Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } ] } } } }, "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 Meetings By an Admin", "operationId": "adminListMeetings", "description": "Retrieves details for meetings by an admin with a specified meeting number or web link. Please note that there are various products in the [Webex Suite](https://www.webex.com/collaboration-suite.html) such as `Meetings` and `Events`. Currently, only meetings of the `Meetings` product are supported by this API, meetings of others in the suite are not supported. Ad-hoc meetings created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` will not be listed, but the ended and ongoing ad-hoc meeting instances will be listed. The following sensitive attributes are hidden from the response: `agenda`, `hostKey`, `password`, `phoneAndVideoSystemPassword`, `panelistPassword`, `phoneAndVideoSystemPanelistPassword`, `webLink`, `sipAddress`, `dialInIpAddress`, `registration` and `telephony.accessCode`.\n\n* If `meetingNumber` is specified, the operation returns an array of meeting objects specified by the `meetingNumber`. Each object in the array can be a scheduled meeting or a meeting series depending on whether the `current` parameter is `true` or `false`, and each object contains the simultaneous interpretation object. Please note that `meetingNumber` and `webLink` are mutually exclusive and they cannot be specified simultaneously.\n\n* If `webLink` is specified, the operation returns an array of meeting objects specified by the `webLink`. Each object in the array can be a scheduled meeting or a meeting series depending on whether the `current` parameter is `true` or `false`, and each object contains the simultaneous interpretation object. Please note that `meetingNumber` and `webLink` are mutually exclusive and they cannot be specified simultaneously.\n\n* The `current` parameter only applies to meeting series. If it's `false`, the `start` and `end` attributes of each returned meeting series object are for the first scheduled meeting of that series. If it's `true` or not specified, the `start` and `end` attributes are for the scheduled meeting which is ready to start or join or the upcoming scheduled meeting of that series.\n\n* To learn more about which attributes are available for different meeting states, please refer to [Available Meeting Attributes for Different Meeting States](/docs/meetings#available-meeting-attributes-for-different-meeting-states).\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingNumber", "in": "query", "description": "Meeting number for the meeting objects being requested. `meetingNumber` and `webLink` are mutually exclusive. If it's an exceptional meeting from a meeting series, the exceptional meeting instead of the primary meeting series is returned.", "example": "123456789", "schema": { "type": "string" } }, { "name": "webLink", "in": "query", "description": "URL encoded link to information page for the meeting objects being requested. `meetingNumber` and `webLink` are mutually exclusive.", "example": "https%3A%2F%2Fgo.webex.com%2Fgo%2Fj.php%3FMTID%3Dm066878aef4343e74c98b48439b71acfd", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Flag identifying to retrieve the current scheduled meeting of the meeting series or the entire meeting series. This parameter only applies to scenarios where `meetingNumber` is specified and the meeting is not an exceptional meeting from a meeting series. If it's `true`, return the scheduled meeting of the meeting series which is ready to join or start or the upcoming scheduled meeting of the meeting series; if it's `false`, return the entire meeting series. The default value is `true`.", "example": false, "schema": { "type": "boolean", "default": true } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/meetings": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingSeriesObject" }, "example": { "id": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "phoneAndVideoSystemPassword": "12345678", "meetingType": "meetingSeries", "state": "active", "timezone": "Asia/Shanghai", "start": "2019-11-01T20:00:00+08:00", "end": "2019-11-01T21:00:00+08:00", "recurrence": "FREQ=DAILY;COUNT=10;INTERVAL=1", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "registerLink": "https://cisco.webex.com/weblink/register/r55981368ee48e2a6f00b93231508c404", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "registration": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireCompanyName": true, "requireCountryRegion": false, "requireWorkPhone": true, "enabledRegistrationId": false, "customizedQuestions": [ { "id": "3386787", "question": "What color do you like?", "required": true, "type": "checkbox", "options": [ { "id": "1", "value": "green" }, { "id": "2", "value": "black" }, { "id": "3", "value": "yellow" }, { "id": "4", "value": "red" } ], "rules": [ { "condition": "notEquals", "value": "red", "result": "reject", "matchCase": true, "order": 1 } ] }, { "id": "3386792", "question": "Project Team", "required": false, "type": "singleLineTextBox", "maxLength": 120 }, { "id": "3386797", "question": "How are you", "required": false, "type": "multiLineTextBox", "maxLength": 999 }, { "id": "3386802", "question": "Dropdownlist Q", "required": false, "type": "dropdownList", "options": [ { "id": "1", "value": "A1" }, { "id": "2", "value": "A2" } ] }, { "id": "3386891", "question": "weather", "required": false, "type": "radioButtons", "maxLength": 120, "options": [ { "id": "1", "value": "sunny" }, { "id": "2", "value": "rain" } ] } ], "rules": [ { "question": "lastName", "condition": "endsWith", "value": "tom", "result": "reject", "matchCase": false, "order": 1 } ] }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, { "id": "3GQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MAJiZDBjNWVlNDC4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "fr", "email": "antoine.martin@example.com", "displayName": "Martin" } ] }, "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } } } }, "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 input parameters contain invalid items.", "errors": [ { "description": "Meeting password validation failed. A mix of uppercase and lowercase letters (A, a, B, b, C, c, etc.) is required." } ], "trackingId": "19085D1FCFEE445DA358375500D25E44_1598154356721" } } } }, "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 Meeting", "operationId": "createMeeting", "description": "Creates a new meeting. Regular users can schedule up to 100 meetings in 24 hours and admin users up to 3000 overall or 800 for a single user. Please note that the failed requests are also counted toward the limits.\n\n* The `spark:all` scope is required when `roomId` is specified.\n\n* If the parameter `adhoc` is `true` and `roomId` is specified, an ad-hoc meeting is created for the target room. An ad-hoc meeting is a non-recurring instant meeting for the target room which is supposed to be started immediately after being created for a quick collaboration. There's only one ad-hoc meeting for a room at the same time. So, if there's already an ongoing ad-hoc meeting for the room, the API returns this ongoing meeting instead of creating a new one. If it's a [direct](/docs/api/v1/rooms/get-room-details) room, both members of the room can create an ad-hoc meeting for the room. If it's a [group](/docs/api/v1/rooms/get-room-details) room, only room members that are in the same [organization](/docs/api/v1/organizations/get-organization-details) as the room can create an ad-hoc meeting for the room. Please note that an ad-hoc meeting is for the purpose of an instant collaboration with people in a room, user should not persist the `id` and `meetingNumber` of the ad-hoc meeting when it's been created since this meeting may become an inactive ad-hoc meeting for the room if it's not been started after being created for a while or it has been started and ended. Each time a user needs an ad-hoc meeting for a room, they should create one instead of reusing the previous persisted one. Moreover, for the same reason, no email will be sent when an ad-hoc meeting is created. Ad-hoc meetings cannot be updated by [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) or deleted by [Delete a Meeting](/docs/api/v1/meetings/delete-a-meeting). Ad-hoc meetings cannot be listed by [List Meetings](/docs/api/v1/meetings/list-meetings) and the scheduled meetings of an ad-hoc meeting cannot be listed by [List Meetings of a Meeting Series](/docs/api/v1/meetings/list-meetings-of-a-meeting-series), but the ended and ongoing instances of ad-hoc meetings can be listed by [List Meetings](/docs/api/v1/meetings/list-meetings) and [List Meetings of a Meeting Series](/docs/api/v1/meetings/list-meetings-of-a-meeting-series).\n\n* If the parameter `adhoc` is `true`, `roomId` is required and the others are optional or ignored.\n\n* The default value of `title` for an ad-hoc meeting is the user's name if not specified. The following parameters for an ad-hoc meeting have default values and the user's input values will be ignored: `scheduledType` is always `meeting`; `start` and `end` are 5 minutes after the current time and 20 minutes after the current time respectively; `timezone` is `UTC`; `allowAnyUserToBeCoHost`, `allowAuthenticatedDevices`, `enabledJoinBeforeHost`, `enableConnectAudioBeforeHost` are always `true`; `allowFirstUserToBeCoHost`, `enableAutomaticLock`, `publicMeeting`, `sendEmail` are always `false`; `invitees` is the room members except \"me\"; `joinBeforeHostMinutes` is 5; `automaticLockMinutes` is null; `unlockedMeetingJoinSecurity` is `allowJoinWithLobby`. An ad-hoc meeting can be started immediately even if the `start` is 5 minutes after the current time.\n\n* The following parameters are not supported and will be ignored for an ad-hoc meeting: `templateId`, `recurrence`, `excludePassword`, `reminderTime`, `registration`, `integrationTags`, `enabledWebcastView`, and `panelistPassword`.\n\n* If the value of the parameter `recurrence` is null, a non-recurring meeting is created.\n\n* If the parameter `recurrence` has a value, a recurring meeting is created based on the rule defined by the value of `recurrence`. For a non-recurring meeting which has no `recurrence` value set, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling. If you specify a `recurrence` like `FREQ=DAILY;INTERVAL=1` which never ends, the furthest date of the series is unlimited. You can also specify a `recurrence` with a very distant ending date in the future, e.g. `FREQ=DAILY;INTERVAL=1;UNTIL=21241001T000000Z`, but the actual furthest date accepted for the recurring meeting is five years from now. Specifically, if it has an ending date, there can be up to 5 occurrences for a yearly meeting, 60 occurrences for a monthly meeting, 261 occurrences for a weekly meeting, or 1826 occurrences for a daily meeting.\n\n* If the parameter `templateId` has a value, the meeting is created based on the meeting template specified by `templateId`. The list of meeting templates that is available for the authenticated user can be retrieved from [List Meeting Templates](/docs/api/v1/meetings/list-meeting-templates).\n\n* If the parameter `siteUrl` has a value, the meeting is created on the specified site. Otherwise, the meeting is created on the user's preferred site. All available Webex sites and preferred site of the user can be retrieved by `Get Site List` API.\n\n* If the parameter `scheduledType` equals \"personalRoomMeeting\", the meeting is created in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n\n* If the parameter `roomId` has a value, the meeting is created for the Webex space specified by `roomId`. If `roomId` is specified but the user calling the API is not a member of the Webex space specified by `roomId`, the API will fail even if the user has the admin-level scopes or he is calling the API on behalf of another user which is specified by `hostEmail` and is a member of the Webex space.\n\n* If the parameter `enabledAudioWatermark` is `true`, `scheduledType` equals or defaults to `meeting`, and `audioConnectionOptions.audioConnectionType` equals `VoIP`, the audio for this meeting will have a watermark. In this case, a unique identifier is embedded into the audio that plays out of each Webex app and device. An administrator can use this watermark when analyzing an unauthorized recording to identify which Webex app or device was the source of the recording.\n\n* If the parameter `enabledVisualWatermark` is `true`, the video for this meeting will have a watermark. In this case, Webex superimposes a watermark image pattern on top of the meeting video and shared content to deter participants from leaking meeting information. Each participant viewing the meeting sees a watermark image pattern with their email address. If the participant is not signed in, the watermark image pattern includes their display name and email address.\n\n* The default value of `visualWatermarkOpacity` is 10 if not specified. The value must be between 5 and 80, inclusive. A smaller value means less distraction for meeting participants, while a larger value shows a clearer watermark. It's supported when `enabledVisualWatermark` is `true`.\n\n* When `enabledLiveStream` is `true`, `liveStream` must be specified. With these setting, the RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings.\n\n* The `registration` can be specified when creating a meeting, but it can't be updated by [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) or [Patch a Meeting](/docs/api/v1/meetings/patch-a-meeting). Create a registration form for a meeting that doesn't have one or update the registration form for a meeting that already has one by using [Update Meeting Registration Form](/docs/api/v1/meetings/update-meeting-registration-form). Delete the registration form for a meeting by using [Delete Meeting Registration Form](/docs/api/v1/meetings/delete-meeting-registration-form).\n\n* You can't create a meeting that starts 10 years or more in the future.\n\n* If all meeting invitees of a meeting should not receive emails, the host can create a meeting with invitees, and the parameter `sendEmail` is set to `false`. If only some meeting invitees should not receive emails and others can, the host should not invite these invitees along with creating a meeting request. Instead, the host should add the invitees by [Create a Meeting Invitee](/docs/api/v1/meeting-invitees/create-a-meeting-invitee) or [Create Meeting Invitees](/docs/api/v1/meeting-invitees/create-meeting-invitees) with the parameter `sendEmail` is set to `false` after the meeting has been created.", "tags": [ "Meetings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "start": "2019-11-01 20:00:00", "end": "2019-11-01 21:00:00", "timezone": "Asia/Shanghai", "recurrence": "FREQ=DAILY;INTERVAL=1;COUNT=10", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "invitees": [ { "email": "john.andersen@example.com", "displayName": "John Andersen", "coHost": false, "panelist": false }, { "email": "brenda.song@example.com", "displayName": "Brenda Song", "coHost": false, "panelist": false } ], "sendEmail": true, "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "registration": { "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireCompanyName": true, "requireCountryRegion": false, "requireWorkPhone": true, "enabledRegistrationId": false, "customizedQuestions": [ { "question": "What color do you like?", "required": true, "type": "checkbox", "options": [ { "value": "green" }, { "value": "black" }, { "value": "yellow" }, { "value": "red" } ], "rules": [ { "condition": "notEquals", "value": "red", "result": "reject", "matchCase": true } ] }, { "question": "Project Team", "type": "singleLineTextBox", "maxLength": 120 }, { "question": "How are you", "type": "multiLineTextBox" }, { "question": "Dropdownlist Q", "type": "dropdownList", "options": [ { "value": "A1" }, { "value": "A2" } ] }, { "question": "weather", "required": false, "type": "radioButtons", "maxLength": 120, "options": [ { "value": "sunny" }, { "value": "rain" } ] } ], "rules": [ { "question": "lastName", "condition": "endsWith", "value": "tom", "result": "reject", "matchCase": false, "order": 1 } ] }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, { "languageCode1": "en", "languageCode2": "fr", "email": "antoine.martin@example.com", "displayName": "Martin" } ] }, "enabledBreakoutSessions": true, "breakoutSessions": [ { "name": "Breakout Session 1", "invitees": [ "rachel.green@example.com", "monica.geller@example.com" ] }, { "name": "Breakout Session N", "invitees": [ "ross.geller@example.com", "chandler.bing@example.com" ] } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "scheduledType": "meeting", "audioConnectionOptions": { "audioConnectionType": "VoIP" }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, "schema": { "$ref": "#/components/schemas/CreateMeetingObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingObjectForListMeeting" }, "description": "Meetings array." } } }, "example": { "items": [ { "id": "870f51ff287b41be84648412901e0402_20191101T120000Z", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "phoneAndVideoSystemPassword": "12345678", "meetingType": "scheduledMeeting", "state": "ready", "hostDidJoin": true, "attendeeDidJoin": true, "isModified": false, "timezone": "UTC", "start": "2019-11-01T12:00:00Z", "end": "2019-11-01T13:00:00Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, { "id": "870f51ff287b41be84648412901e0402_I_167427437874906709", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "scheduledMeetingId": "870f51ff287b41be84648412901e0402_20191101T120000Z", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "meetingType": "meeting", "excludePassword": false, "publicMeeting": false, "enableAutomaticLock": false, "sessionTypeId": 3, "state": "ended", "timezone": "UTC", "start": "2019-11-01T12:12:15Z", "end": "2019-11-01T12:51:33Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=870f51ff287b41be84648412901e0402_I_167427437874906709", "hasChat": true, "hasRecording": true, "hasTranscription": true, "hasSummary": true, "hasClosedCaption": true, "hasPolls": true, "hasQA": true, "hasSlido": true, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "webexAudio", "enabledTollFreeCallIn": true, "enabledGlobalCallIn": true, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, { "id": "870f51ff287b41be84648412901e0402_20191102T120000Z", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "phoneAndVideoSystemPassword": "12345678", "meetingType": "scheduledMeeting", "state": "scheduled", "isModified": false, "timezone": "UTC", "start": "2019-11-02T12:00:00Z", "end": "2019-11-02T13:00:00Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": false, "enabledVisualWatermark": false, "audioConnectionOptions": { "audioConnectionType": "webexAudio", "enabledTollFreeCallIn": true, "enabledGlobalCallIn": true, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, { "id": "870f51ff287b41be84648412901e0402_I_167549011372279170", "meetingSeriesId": "870f51ff287b41be84648412901e0402", "scheduledMeetingId": "870f51ff287b41be84648412901e0402_20191101T120000Z", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "meetingType": "meeting", "state": "ended", "excludePassword": false, "publicMeeting": false, "sessionTypeId": 3, "enableAutomaticLock": false, "timezone": "UTC", "start": "2019-11-02T12:07:30Z", "end": "2019-11-02T12:58:53Z", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=870f51ff287b41be84648412901e0402_I_167549011372279170", "hasChat": true, "hasRecording": true, "hasTranscription": true, "hasSummary": true, "hasClosedCaption": true, "hasPolls": true, "hasQA": true, "hasSlido": true, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "enabledAudioWatermark": false, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "webexAudio", "enabledTollFreeCallIn": true, "enabledGlobalCallIn": true, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } ] } } } }, "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 Meetings", "operationId": "listMeetings", "description": "
The previous `List Meetings of a Meeting Series` API is merged into the [List Meetings](/docs/api/v1/meetings/list-meetings) API.
\n\nRetrieves details for meetings with a specified meeting number, web link, meeting type, etc. Please note that there are various products in the [Webex Suite](https://www.webex.com/collaboration-suite.html) such as `Meetings` and `Events`. Currently, only meetings of the `Meetings` product are supported by this API, meetings of others in the suite are not supported. Ad-hoc meetings created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` will not be listed, but the ended and ongoing ad-hoc meeting instances will be listed.\n\nLists scheduled meeting and meeting instances of a meeting series identified by `meetingSeriesId`. Scheduled meetings of an ad-hoc meeting created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` are not listed, but the ended and ongoing meeting instances of it are. Each _scheduled meeting_ or _meeting_ instance of a _meeting series_ has its own `start`, `end`, etc. Thus, for example, when a daily meeting has been scheduled from `2019-04-01` to `2019-04-10`, there are 10 scheduled meeting instances in this series, one instance for each day, and each one has its own attributes. When a scheduled meeting has been started and ended or is happening, there are even more ended or in-progress meeting instances.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* The default value of `meetingSeries` will be used if `meetingType` is not specified. When listing meetings with `meetingType=meetingSeries` implicitly or explicitly, the API returns all the recurring meeting series where the user is the meeting host or an invitee to the meeting. Please note that a meeting with no `recurrence` attribute is considered a meeting series with only one occurrence and it can also be listed with `meetingType=meetingSeries`. A recurring meeting series may have multiple occurrences which are scattered over weeks, months, or years. So, any meeting series that overlaps with the time range specified by `from` and `to` will be listed. For example, a monthly meeting series with `start=2024-01-01T10:00:00Z`, `end=2024-01-01T11:00:00Z` and `recurrence=FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1;UNTIL=20250210T000000Z` can be listed with `meetingType=meetingSeries&from=2024-10-01&to=2024-11-01` even if the `start` and `end` are not in the specified time range.\n\n* If `meetingType` is specified and equals `meeting`, it lists ongoing and ended instances of the meeting series. The default value of `from` and `to` is: `from` equals the current date and time minus 7 days, and `to` equals the current date and time.\n\n* If `meetingSeriesId` is specified, `meetingNumber`, `webLink`, `roomId`, `current`, `integrationTag`, `scheduledType`, `siteUrl` will be ignored.\n\n* If `meetingNumber` is specified, the operation returns an array of meeting objects specified by the `meetingNumber`. Each object in the array can be a scheduled meeting or a meeting series depending on whether the `current` parameter is `true` or `false`, and each object contains the simultaneous interpretation object. When `meetingNumber` is specified, parameters of `from`, `to`, `meetingType`, `state`, `isModified` and `siteUrl` will be ignored. Please note that `meetingNumber`, `webLink` and `roomId` are mutually exclusive and they cannot be specified simultaneously.\n\n* If `webLink` is specified, the operation returns an array of meeting objects specified by the `webLink`. Each object in the array can be a scheduled meeting or a meeting series depending on whether the `current` parameter is `true` or `false`, and each object contains the simultaneous interpretation object. When `webLink` is specified, parameters of `from`, `to`, `meetingType`, `state`, `isModified` and `siteUrl` will be ignored. Please note that `meetingNumber`, `webLink` and `roomId` are mutually exclusive and they cannot be specified simultaneously.\n\n* If `roomId` is specified, the operation returns an array of meeting objects of the Webex space specified by the `roomId`. When `roomId` is specified, parameters of `current`, `meetingType`, `state` and `isModified` will be ignored. The meeting objects are queried on the user's preferred site if no `siteUrl` is specified; otherwise, queried on the specified site. `meetingNumber`, `webLink` and `roomId` are mutually exclusive and they cannot be specified simultaneously.\n\n* If `state` parameter is specified, the returned array only has items in the specified state. If `state` is not specified, return items of all states.\n\n* If `meetingType` equals \"meetingSeries\", the `scheduledType` parameter can be \"meeting\", \"webinar\" or null. If `scheduledType` is specified, the returned array only has items of the specified scheduled type; otherwise, it has items of \"meeting\" and \"webinar\".\n\n* If `meetingType` equals \"scheduledMeeting\", the `scheduledType` parameter can be \"meeting\", \"webinar\", \"personalRoomMeeting\" or null. If `scheduledType` is specified, the returned array only has items of the specified scheduled type; otherwise, it has items of all scheduled types.\n\n* If `meetingType` equals \"meeting\", the `scheduledType` parameter can be \"meeting\", \"webinar\" or null. If `scheduledType` is specified, the returned array only has items of the specified scheduled type; otherwise, it has items of \"meeting\" and \"webinar\". Please note that ended or in-progress meeting instances of [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) also fall into the category of \"meeting\" `scheduledType`.\n\n* If `meetingType` equals \"meeting\", a maximum of 10000 meeting instances can be listed even if pagination is enabled.\n\n* If `isModified` parameter is specified, the returned array only has items which have been modified to exceptional meetings. This parameter only applies to scheduled meeting.\n\n* If any of the `hasChat`, `hasRecording`, `hasTranscription`, `hasSummary`, `hasClosedCaption`, `hasPolls `, `hasQA` and `hasSlido` parameters is specified, the `meetingType` must be \"meeting\" and `state` must be \"ended\". These parameters are null by default.\n\n* The `current` parameter only applies to meeting series. If it's `false`, the `start` and `end` attributes of each returned meeting series object are for the first scheduled meeting of that series. If it's `true` or not specified, the `start` and `end` attributes are for the scheduled meeting which is ready to start or join or the upcoming scheduled meeting of that series.\n\n* If `from` and `to` are specified, the operation returns an array of meeting objects in that specified time range.\n\n* If the parameter `siteUrl` has a value, the operation lists meetings on the specified site; otherwise, lists meetings on the user's all sites. All available Webex sites of the user can be retrieved by `Get Site List` API.\n\n* `trackingCodes` is not supported for ended meeting instances.\n\n* A full admin or a content admin can list all the ended and ongoing meeting instances of the organization he manages with the `meeting:admin_schedule_read` scope and `meetingType=meeting` parameter.\n\n* To learn more about which attributes are available for different meeting states, please refer to [Available Meeting Attributes for Different Meeting States](/docs/meetings#available-meeting-attributes-for-different-meeting-states).\n\n#### Request Header\n\n* `password`: Meeting password. Required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, cohost or invitee of the meeting.\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingNumber", "in": "query", "description": "Meeting number for the meeting objects being requested. `meetingNumber`, `webLink` and `roomId` are mutually exclusive. If it's an exceptional meeting from a meeting series, the exceptional meeting instead of the primary meeting series is returned.", "example": "123456789", "schema": { "type": "string" } }, { "name": "webLink", "in": "query", "description": "URL encoded link to information page for the meeting objects being requested. `meetingNumber`, `webLink` and `roomId` are mutually exclusive.", "example": "https%3A%2F%2Fgo.webex.com%2Fgo%2Fj.php%3FMTID%3Dm066878aef4343e74c98b48439b71acfd", "schema": { "type": "string" } }, { "name": "roomId", "in": "query", "description": "Associated Webex space ID for the meeting objects being requested. `meetingNumber`, `webLink` and `roomId` are mutually exclusive.", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "schema": { "type": "string" } }, { "name": "meetingSeriesId", "in": "query", "description": "Unique identifier for the meeting series. The meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported. If `meetingSeriesId` is specified, it lists all occurrences and instances of the meeting series by default; with `meetingType` of `scheduledMeeting`, it lists occurrences; with `meetingType` of `meeting`, it lists ongoing and ended instances.", "required": false, "example": "25bbf831-5be9-4c25-b4b0-9b592c8a086b", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of meetings in the response, up to 100. This parameter is ignored if `meetingNumber`, `webLink` or `roomId` is specified. The default value is 10.", "example": 100, "schema": { "type": "number" } }, { "name": "from", "in": "query", "description": "Start date and time (inclusive) for the range for which meetings are to be returned in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. This parameter will be ignored if `meetingNumber`, `webLink` or `roomId` is specified.\n\nWhen `meetingType` is `meetingSeries`(either explicitly set or by default), if `to` is specified, the default value for `from` is `to` minus 7 days. If `to` is also not specified, the default value for `from` is the current date and time. When `meetingType` is `scheduledMeeting`, `from` is the same as above. When `meetingType` is `meeting`, if `to` is specified, the default value for `from` is `to` minus 7 days. If `to` is also not specified, the default value for `from` is 7 days before the current date and time.", "example": "2019-03-18T09:30:00+08:00", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "End date and time (exclusive) for the range for which meetings are to be returned in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. This parameter will be ignored if `meetingNumber`, `webLink` or `roomId` is specified.\n\nWhen `meetingType` is `meetingSeries`(either explicitly set or by default), if `from` is specified, the default value for `to` is `from` plus 7 days. If `from` is also not specified, the default value for `to` is 7 days after the current date and time. When `meetingType` is `scheduledMeeting`, `to` is the same as above. When `meetingType` is `meeting`, if `from` is specified, the default value for `to` is `from` plus 7 days. If `from` is also not specified, the default value for `to` is the current date and time.", "example": "2019-03-25T09:30:00+08:00", "schema": { "type": "string" } }, { "name": "meetingType", "in": "query", "description": "Meeting type for the meeting objects being requested. This parameter will be ignored if `meetingNumber`, `webLink` or `roomId` is specified.", "example": "scheduledMeeting", "schema": { "type": "string", "enum": [ "meetingSeries", "scheduledMeeting", "meeting" ] } }, { "name": "state", "in": "query", "description": "Meeting state for the meeting objects being requested. If not specified, return meetings of all states. This parameter will be ignored if `meetingNumber`, `webLink` or `roomId` is specified. Details of an `ended` meeting will only be available 15 minutes after the meeting has ended. `inProgress` meetings are not fully supported. The API will try to return details of an `inProgress` meeting 15 minutes after the meeting starts. However, it may take longer depending on the traffic. See the [Webex Meetings](/docs/meetings#meeting-states) guide for more information about the states of meetings.", "example": "inProgress", "schema": { "type": "string", "enum": [ "active", "scheduled", "ready", "lobby", "inProgress", "ended", "missed", "expired" ] } }, { "name": "scheduledType", "in": "query", "description": "Scheduled type for the meeting objects being requested.", "example": "personalRoomMeeting", "schema": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ] } }, { "name": "isModified", "in": "query", "description": "Flag identifying whether a meeting has been modified. Only applies to scheduled meetings. If `true`, only return modified scheduled meetings; if `false`, only return unmodified scheduled meetings; if not specified, all scheduled meetings will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasChat", "in": "query", "description": "Flag identifying whether a meeting has a chat log. Only applies to ended meeting instances. If `true`, only return meeting instances which have chats; if `false`, only return meeting instances which have no chats; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasRecording", "in": "query", "description": "Flag identifying meetings which have been recorded. Only applies to ended meeting instances. If true, only return meeting instances which have been recorded; if false, only return meeting instances which have not been recorded; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasTranscription", "in": "query", "description": "Flag identifying meetings with transcripts. Only applies to ended meeting instances. If `true`, only return meeting instances which have transcripts; if `false`, only return meeting instances which have no transcripts; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasSummary", "in": "query", "description": "Flag identifying meetings with summaries. Only applies to ended meeting instances. If `true`, only return meeting instances which have summaries; if `false`, only return meeting instances which have no summaries; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasClosedCaption", "in": "query", "description": "Flag identifying meetings with closed captions. Only applies to ended meeting instances. If `true`, only return meeting instances which have closed captions; if `false`, only return meeting instances which have no closed captions; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasPolls", "in": "query", "description": "Flag identifying meetings with polls. Only applies to ended meeting instances. If `true`, only return meeting instances which have polls; if `false`, only return meeting instances which have no polls; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasQA", "in": "query", "description": "Flag identifying meetings with Q&A. Only applies to ended meeting instances. If `true`, only return meeting instances which have Q&A; if `false`, only return meeting instances which have no Q&A; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hasSlido", "in": "query", "description": "Flag identifying meetings with Slido interactions. Only applies to ended meeting instances. If `true`, only return meeting instances which have Slido interactions like Q&A or polling; if `false`, only return meeting instances which have no Slido interactions; if not specified, all meeting instances will be returned.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "current", "in": "query", "description": "Flag identifying to retrieve the current scheduled meeting of the meeting series or the entire meeting series. This parameter only applies to scenarios where the meeting is not an exceptional meeting from a meeting series. If it's `true`, return the scheduled meeting of the meeting series which is ready to join or start or the upcoming scheduled meeting of the meeting series; if it's `false`, return the entire meeting series.", "example": false, "schema": { "type": "boolean", "default": true } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API returns meetings as if the user calling the API were the user of `hostEmail` themself, and the meetings returned by the API include the meetings where the user of `hostEmail` is the meeting host and those where they are an invitee.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists meetings from. If not specified, the API lists meetings from user's all sites. All available Webex sites of the user can be retrieved by `Get Site List` API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "integrationTag", "in": "query", "description": "External key created by an integration application. This parameter is used by the integration application to query meetings by a key in its own domain such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\".", "example": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "schema": { "type": "string" } }, { "name": "password", "in": "header", "description": "e.g. BgJep@4323", "required": false, "schema": { "type": "string" }, "example": "BgJep@4323" }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/meetings/{meetingId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingSeriesObject" }, "example": { "id": "870f51ff287b41be84648412901e0402", "meetingNumber": "123456789", "title": "Example Daily Meeting", "agenda": "Example Agenda", "password": "BgJep@43", "phoneAndVideoSystemPassword": "12345678", "meetingType": "meetingSeries", "state": "active", "timezone": "UTC", "start": "2019-11-01T12:00:00Z", "end": "2019-11-01T13:00:00Z", "recurrence": "FREQ=DAILY;COUNT=10;INTERVAL=1", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "enabledJoinBeforeHost": false, "enableConnectAudioBeforeHost": false, "joinBeforeHostMinutes": 0, "excludePassword": false, "publicMeeting": false, "reminderTime": 10, "unlockedMeetingJoinSecurity": "allowJoin", "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/870f51ff287b41be84648412901e0402/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "registration": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": true, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": true, "requireWorkPhone": true, "requireFax": false, "enabledRegistrationId": false, "customizedQuestions": [ { "id": "3386787", "question": "What color do you like?", "required": true, "type": "checkbox", "options": [ { "id": "1", "value": "green" }, { "id": "2", "value": "black" }, { "id": "3", "value": "yellow" }, { "id": "4", "value": "red" } ], "rules": [ { "condition": "notEquals", "value": "red", "result": "reject", "matchCase": true, "order": 1 } ] }, { "id": "3386792", "question": "Project Team", "required": false, "type": "singleLineTextBox", "maxLength": 120 }, { "id": "3386797", "question": "How are you", "required": false, "type": "multiLineTextBox", "maxLength": 999 }, { "id": "3386802", "question": "Dropdownlist Q", "required": false, "type": "dropdownList", "options": [ { "id": "1", "value": "A1" }, { "id": "2", "value": "A2" } ] }, { "id": "3386891", "question": "weather", "required": false, "type": "radioButtons", "maxLength": 120, "options": [ { "id": "1", "value": "sunny" }, { "id": "2", "value": "rain" } ] } ], "rules": [ { "question": "lastName", "condition": "endsWith", "value": "tom", "result": "reject", "matchCase": false, "order": 1 } ] }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, { "id": "3GQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MAJiZDBjNWVlNDC4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "fr", "email": "antoine.martin@example.com", "displayName": "Martin" } ] }, "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/870f51ff287b41be84648412901e0402/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 10, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": false }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } } } }, "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 a Meeting", "operationId": "getMeetingById", "description": "Retrieves details for a meeting with a specified meeting ID.\n\n* If the `meetingId` value specified is for a meeting series and `current` is `true`, the operation returns details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series.\n\n* If the `meetingId` value specified is for a meeting series and `current` is `false` or `current` is not specified, the operation returns details for the entire meeting series.\n\n* If the `meetingId` value specified is for a scheduled meeting from a meeting series, the operation returns details for that scheduled meeting.\n\n* If the `meetingId` value specified is for a meeting instance which is happening or has happened, the operation returns details for that meeting instance.\n\n* `trackingCodes` is not supported for ended meeting instances.\n\n* To learn more about which attributes are available for different meeting states, please refer to [Available Meeting Attributes for Different Meeting States](/docs/meetings#available-meeting-attributes-for-different-meeting-states).\n\n#### Request Header\n\n* `password`: Meeting password. Required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, cohost or invitee of the meeting.\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting being requested.", "required": true, "example": "25bbf831-5be9-4c25-b4b0-9b592c8a086b", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "password", "in": "header", "description": "e.g. BgJep@4323", "required": false, "schema": { "type": "string" }, "example": "BgJep@4323" }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] }, "patch": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingObjectForListMeeting" }, "example": { "id": "1d824a4a205042eba9574e00b711b226_20200127T120000Z", "meetingSeriesId": "1d824a4a205042eba9574e00b711b226", "meetingNumber": "123456789", "title": "Example Daily Meeting Modified", "agenda": "Example Agenda Modified", "password": "P@ssword789", "phoneAndVideoSystemPassword": "12345678", "meetingType": "scheduledMeeting", "state": "scheduled", "isModified": true, "timezone": "Asia/Shanghai", "start": "2020-01-27T20:30:00+08:00", "end": "2020-01-27T21:30:00+08:00", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=m31a1db24db78ac569f739e0cfb2741c1", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": true, "allowAnyUserToBeCoHost": true, "enabledJoinBeforeHost": true, "enableConnectAudioBeforeHost": true, "joinBeforeHostMinutes": 15, "excludePassword": false, "publicMeeting": false, "reminderTime": 30, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": true, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/1d824a4a205042eba9574e00b711b226_20200127T120000Z/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "registration": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": true, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": true, "requireWorkPhone": true, "requireFax": false, "enabledRegistrationId": false }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } ] }, "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/1d824a4a205042eba9574e00b711b226/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Sales" }, { "name": "Division", "value": "Part-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 40, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": true, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": true, "allowAttendeeToUnmuteSelf": false, "muteAttendeeUponEntry": true }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } } } }, "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": "Patch a Meeting", "operationId": "patchMeeting", "description": "Updates details for a meeting with a specified meeting ID. This operation applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Ad-hoc meetings created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` cannot be updated.\n\n* If the `meetingId` value specified is for a scheduled meeting, the operation updates that scheduled meeting without impact on other scheduled meeting of the parent meeting series.\n\n* If the `meetingId` value specified is for a meeting series, the operation updates the entire meeting series. **Note**: If the value of `start`, `end`, or `recurrence` for the meeting series is changed, any exceptional scheduled meeting in this series is cancelled when the meeting series is updated.\n\n* The `agenda`, `recurrence`, and `trackingCodes` attributes can be specified as `null` so that these attributes become null and hidden from the response after the patch. Note that it's the keyword `null` not the string \"null\".\n\n* If the parameter `recurrence` has a value, a recurring meeting is created based on the rule defined by the value of `recurrence`. For a non-recurring meeting which has no `recurrence` value set, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling. If you specify a `recurrence` like `FREQ=DAILY;INTERVAL=1` which never ends, the furthest date of the series is unlimited. You can also specify a `recurrence` with a very distant ending date in the future, e.g. `FREQ=DAILY;INTERVAL=1;UNTIL=21241001T000000Z`, but the actual furthest date accepted for the recurring meeting is five years from now. Specifically, if it has an ending date, there can be up to 5 occurrences for a yearly meeting, 60 occurrences for a monthly meeting, 261 occurrences for a weekly meeting, or 1826 occurrences for a daily meeting.\n\n* You can't update a meeting that starts 10 years or more in the future.\n\n* Updating a meeting in the API that was created via a calendar connector is not allowed. The meeting may be updated in Webex, but the calendar event may not be updated, resulting in duplicate entries. This action is therefore blocked. In case you must overwrite this behavior, please contact devsupport@webex.com.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to be updated. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "1d824a4a205042eba9574e00b711b226_20200127T120000Z", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json-patch+json": { "example": { "title": "Example Daily Meeting Modified", "agenda": "Example Agenda Modified", "password": "P@ssword789", "timezone": "Asia/Shanghai", "start": "2020-01-27T20:30:00+08:00", "end": "2020-01-27T21:30:00+08:00", "enabledAutoRecordMeeting": true, "allowAnyUserToBeCoHost": true, "enabledJoinBeforeHost": true, "enableConnectAudioBeforeHost": true, "joinBeforeHostMinutes": 15, "excludePassword": false, "publicMeeting": false, "reminderTime": 30, "unlockedMeetingJoinSecurity": "allowJoin", "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": true, "sendEmail": true, "hostEmail": "john.andersen@example.com", "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "enabledBreakoutSessions": true, "trackingCodes": [ { "name": "Department", "value": "Sales" }, { "name": "Division", "value": "Part-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 40, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": true, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": true, "allowAttendeeToUnmuteSelf": false, "muteAttendeeUponEntry": true }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, "schema": { "$ref": "#/components/schemas/PatchMeetingObject" } } } } }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingObjectForListMeeting" }, "example": { "id": "1d824a4a205042eba9574e00b711b226_20200127T120000Z", "meetingSeriesId": "1d824a4a205042eba9574e00b711b226", "meetingNumber": "123456789", "title": "Example Daily Meeting Modified", "agenda": "Example Agenda Modified", "password": "P@ssword789", "phoneAndVideoSystemPassword": "12345678", "meetingType": "scheduledMeeting", "state": "scheduled", "isModified": true, "timezone": "Asia/Shanghai", "start": "2020-01-27T20:30:00+08:00", "end": "2020-01-27T21:30:00+08:00", "hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jN2ZkNzNmMi05ZjFlLTQ3ZjctYWEwNS05ZWI5OGJiNjljYzY", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "hostKey": "123456", "siteUrl": "site4-example.webex.com", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=m31a1db24db78ac569f739e0cfb2741c1", "sipAddress": "123456789@site4-example.webex.com", "dialInIpAddress": "192.168.100.100", "enabledAutoRecordMeeting": true, "allowAnyUserToBeCoHost": true, "enabledJoinBeforeHost": true, "enableConnectAudioBeforeHost": true, "joinBeforeHostMinutes": 15, "excludePassword": false, "publicMeeting": false, "reminderTime": 30, "unlockedMeetingJoinSecurity": "allowJoin", "sessionTypeId": 3, "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": true, "telephony": { "accessCode": "1234567890", "callInNumbers": [ { "label": "US Toll", "callInNumber": "123456789", "tollType": "toll" } ], "links": [ { "rel": "globalCallinNumbers", "href": "/api/v1/meetings/1d824a4a205042eba9574e00b711b226_20200127T120000Z/globalCallinNumbers", "method": "GET" } ] }, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "registration": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": true, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": true, "requireWorkPhone": true, "requireFax": false, "enabledRegistrationId": false }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "scheduledType": "meeting", "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } ] }, "enabledBreakoutSessions": true, "links": [ { "rel": "breakoutSessions", "href": "/v1/meetings/1d824a4a205042eba9574e00b711b226/breakoutSessions", "method": "GET" } ], "trackingCodes": [ { "name": "Department", "value": "Sales" }, { "name": "Division", "value": "Part-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 40, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": true, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": true, "allowAttendeeToUnmuteSelf": false, "muteAttendeeUponEntry": true }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } } } } }, "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": "Update a Meeting", "operationId": "updateMeeting", "description": "
\nThe PUT method is still supported and behaves the same as before, will be deprecated in the future. Use the PATCH method instead.\n
\n\nUpdates details for a meeting with a specified meeting ID. This operation applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Ad-hoc meetings created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` cannot be updated.\n\n* If the `meetingId` value specified is for a scheduled meeting, the operation updates that scheduled meeting without impact on other scheduled meeting of the parent meeting series.\n\n* If the `meetingId` value specified is for a meeting series, the operation updates the entire meeting series. **Note**: If the value of `start`, `end`, or `recurrence` for the meeting series is changed, any exceptional scheduled meeting in this series is cancelled when the meeting series is updated.\n\n* If the parameter `recurrence` has a value, a recurring meeting is created based on the rule defined by the value of `recurrence`. For a non-recurring meeting which has no `recurrence` value set, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling. If you specify a `recurrence` like `FREQ=DAILY;INTERVAL=1` which never ends, the furthest date of the series is unlimited. You can also specify a `recurrence` with a very distant ending date in the future, e.g. `FREQ=DAILY;INTERVAL=1;UNTIL=21241001T000000Z`, but the actual furthest date accepted for the recurring meeting is five years from now. Specifically, if it has an ending date, there can be up to 5 occurrences for a yearly meeting, 60 occurrences for a monthly meeting, 261 occurrences for a weekly meeting, or 1826 occurrences for a daily meeting.\n\n* You can't update a meeting that starts 10 years or more in the future.\n\n* Updating a meeting created using the API via a calendar connector is not supported. While the meeting may be updated in Webex, the calendar event may not be updated resulting in duplicate entries. If you need to override this behavior, contact devsupport@webex.com.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to be updated. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "1d824a4a205042eba9574e00b711b226_20200127T120000Z", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "title": "Example Daily Meeting Modified", "agenda": "Example Agenda Modified", "password": "P@ssword789", "timezone": "Asia/Shanghai", "start": "2020-01-27T20:30:00+08:00", "end": "2020-01-27T21:30:00+08:00", "enabledAutoRecordMeeting": true, "allowAnyUserToBeCoHost": true, "enabledJoinBeforeHost": true, "enableConnectAudioBeforeHost": true, "joinBeforeHostMinutes": 15, "excludePassword": false, "publicMeeting": false, "reminderTime": 30, "unlockedMeetingJoinSecurity": "allowJoin", "enableAutomaticLock": false, "automaticLockMinutes": 0, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": true, "sendEmail": true, "hostEmail": "john.andersen@example.com", "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "enabledBreakoutSessions": true, "trackingCodes": [ { "name": "Department", "value": "Sales" }, { "name": "Division", "value": "Part-time" } ], "enabledAudioWatermark": true, "enabledVisualWatermark": true, "visualWatermarkOpacity": 40, "audioConnectionOptions": { "audioConnectionType": "VoIP", "enabledTollFreeCallIn": false, "enabledGlobalCallIn": false, "enabledAudienceCallBack": true, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": true, "allowAttendeeToUnmuteSelf": false, "muteAttendeeUponEntry": true }, "enabledLiveStream": true, "liveStream": { "destination": "Youtube", "rtmpUrl": "rtmps://example.com:1935/MediaLive/WebexStreaming", "streamUrl": "https://example.com/Webex-Streaming/index_a.m3u8", "layoutWithoutSharedContent": "grid", "layoutWithSharedContent": "stack", "allowChangeLayoutInMeeting": false, "followStageLayoutWhenSynced": true, "resolution": "1920x1080" } }, "schema": { "$ref": "#/components/schemas/UpdateMeetingObject" } } } } }, "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 Meeting", "operationId": "deleteMeeting", "description": "Deletes a meeting with a specified meeting ID. The deleted meeting cannot be recovered. This operation applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Ad-hoc meetings created by [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) with `adhoc` of `true` and a `roomId` cannot be deleted.\n\n* If the `meetingId` value specified is for a scheduled meeting, the operation deletes that scheduled meeting without impact on other scheduled meeting of the parent meeting series.\n\n* If the `meetingId` value specified is for a meeting series, the operation deletes the entire meeting series.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to be deleted. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances.", "required": true, "example": "e8a6557d3c964824ba346a0800d92575", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will delete a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "sendEmail", "in": "query", "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true.", "example": true, "schema": { "type": "boolean", "default": true } } ] } }, "/meetings/join": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/JoinMeetingLinkObject" }, "example": { "startLink": "https://convergedint.dmz.webex.com/wbxmjs/joinservice/sites/convergedint/meeting/download/b711f29256e54ed780f2a1b7f96d202f?siteurl=convergedint&integrationJoinToken=QUhTSwAAAIXWmx57bQgiYLuAYZvEKAN6taYj3h2th5jIusReBmnOZBLmjPHQIhknV9%2FVOtZTRfvHek%2FbN%2BUA3CcmfqiYEisTZyWhIWboxRG3KGzVQxijZV0z%2B%2FTdXqgX3Cvo%2B3FfO3tIgh1dcP5bprqYxuwJu%2BhW13nctAZPsLuyLaCuADQ%2FsQ%3D%3D&principal=QUhTSwAAAIUNvqV715wdKSiJfpQz9G2uUjyNlBeu0bcNYoXwvYPyHeysQAgve3XrsM83KS10rU34VjuJjPyOi225Po2n3q2MTUmMgIk9hgkDXHxO476xlMoDPsQONMp8vBY9uVybKgBOyTkJsMa%2F2pFES4hk101q&integrationEndUrl=https%3A%2F%2Fconvergedint.dmz.webex.com%2Fmc3300%2Fmeetingcenter%2Fmeetingend%2Fmeetingend.do%3Fsiteurl%3Dconvergedint%26from%3Dmeeting%26backurl%3D", "joinLink": "https://convergedint.dmz.webex.com/wbxmjs/joinservice/sites/convergedint/meeting/download/b711f29256e54ed780f2a1b7f96d202f?siteurl=convergedint&integrationJoinToken=QUhTSwAAAIXWmx57bQgiYLuAYZvEKAN6taYj3h2th5jIusReBmnOZBLmjPHQIhknV9%2FVOtZTRfvHek%2FbN%2BUA3CcmfqiYEisTZyWhIWboxRG3KGzVQxijZV0z%2B%2FTdXqgX3Cvo%2B3FfO3tIgh1dcP5bprqYxuwJu%2BhW13nctAZPsLuyLaCuADQ%2FsQ%3D%3D&principal=QUhTSwAAAIUNvqV715wdKSiJfpQz9G2uUjyNlBeu0bcNYoXwvYPyHeysQAgve3XrsM83KS10rU34VjuJjPyOi225Po2n3q2MTUmMgIk9hgkDXHxO476xlMoDPsQONMp8vBY9uVybKgBOyTkJsMa%2F2pFES4hk101q&integrationEndUrl=https%3A%2F%2Fconvergedint.dmz.webex.com%2Fmc3300%2Fmeetingcenter%2Fmeetingend%2Fmeetingend.do%3Fsiteurl%3Dconvergedint%26from%3Dmeeting%26backurl%3D", "expiration": "2022-05-30T09:44:08Z" } } } }, "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": "Join a Meeting", "operationId": "meetingJoin", "description": "Retrieves links for a meeting with a specified `meetingId`, `meetingNumber`, or `webLink` that allow users to start or join the meeting directly without logging in and entering a password.\n\n* Please note that `meetingId`, `meetingNumber` and `webLink` are mutually exclusive and they cannot be specified simultaneously.\n\n* If `joinDirectly` is true or not specified, the response will have HTTP response code 302 and the request will be redirected to `joinLink`; otherwise, the response will have HTTP response code 200 and `joinLink` will be returned in response body.\n\n* Only the meeting host or cohost can generate the `startLink`.\n\n* An admin user or a [Service App](/docs/service-apps) can generate the `startLink` and `joinLink` on behalf of another meeting host using the `hostEmail` parameter. When a [Service App](/docs/service-apps) generates the `startLink` and `joinLink`, the `hostEmail` parameter is required. The `hostEmail` parameter only applies to meetings, not webinars.\n\n* For Service Apps, `hostEmail` must be provided in the request.\n\n* Generating a join link or a start link before the time specified by `joinBeforeHostMinutes` for a webinar is not supported.\n\n* The `joinLink` and `startLink` generated by the API only work in a web browser, not in mobile apps. When the `joinLink` or `startLink` is used in a mobile app, the user can't join or start the meeting directly by the dial-in or dial-out phone numbers displayed in the app.\n\n* When `createJoinLinkAsWebLink` or `createStartLinkAsWebLink` is set to true, a user cannot join or start the meeting using the `joinLink` or `startLink` returned in the response, and must complete the login flow. Those options are typically useful if mandatory user login is configured in Control Hub.\n\n* Appending the parameter `&launchApp=true` to the weblink will launch directly into the browser experience without showing the user the download selection for the native client.\n\n* [Embedded Apps](/docs/embedded-apps) are not supported in a meeting which is started from the `startLink` generated by this API.\n\n
When the `email` or `displayName` is omitted from the API request, the backend inserts the data from the user making the request. That may lead to situations where an attendee is shown in the roster with the hostname which should be avoided. In the future, we will make those two fields required.
", "tags": [ "Meetings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "meetingId": "98d8c2212c9d62b162b9565932735e59", "meetingNumber": "123456789", "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "joinDirectly": false, "email": "brenda.song@example.com", "displayName": "Brenda Song", "password": "BgJep@43", "expirationMinutes": 5, "hostEmail": "john.andersen@example.com", "createJoinLinkAsWebLink": false, "createStartLinkAsWebLink": false }, "schema": { "$ref": "#/components/schemas/JoinMeetingObject" } } } } } }, "/meetings/templates": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/TemplateObject" }, "description": "Meeting templates array." } } }, "example": { "items": [ { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "name": "Meeting template 1", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "meeting", "isDefault": false, "isStandard": false }, { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NjctTUMtZW5fVVMtTA", "name": "Meeting template 2", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "meeting", "isDefault": false, "isStandard": true }, { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6Ry0wLU1DLWVuX1VT", "name": "Webex Meetings Default", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "meeting", "isDefault": true, "isStandard": true }, { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA1NjctTUMtZW5fVVMtTA", "name": "Webinar template 1", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "webinar", "isDefault": false, "isStandard": false }, { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA4NzctTUMtZW5fVVMtTA", "name": "Webinar template 2", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "webinar", "isDefault": false, "isStandard": false }, { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6Ry0yLU1DLWVuX1VTLUw", "name": "Webex Events Default", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "webinar", "isDefault": false, "isStandard": 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": "List Meeting Templates", "operationId": "listTemplates", "description": "Retrieves the list of meeting templates that is available for the authenticated user.\n\nThere are separate lists of meeting templates for different `templateType`, `locale` and `siteUrl`.\n\n* If `templateType` is specified, the operation returns an array of meeting template objects specified by the `templateType`; otherwise, returns an array of meeting template objects of all template types.\n\n* If `locale` is specified, the operation returns an array of meeting template objects specified by the `locale`; otherwise, returns an array of meeting template objects of the default `en_US` locale. Refer to [Meeting Template Locales](/docs/meetings#meeting-template-locales) for all the locales supported by Webex.\n\n* If the parameter `siteUrl` has a value, the operation lists meeting templates on the specified site; otherwise, lists meeting templates on the user's preferred site. All available Webex sites and preferred site of the user can be retrieved by `Get Site List` API.", "tags": [ "Meetings" ], "parameters": [ { "name": "templateType", "in": "query", "description": "Meeting template type for the meeting template objects being requested. If not specified, return meeting templates of all types.", "example": "meeting", "schema": { "type": "string", "enum": [ "meeting", "webinar" ] } }, { "name": "locale", "in": "query", "description": "Locale for the meeting template objects being requested. If not specified, return meeting templates of the default `en_US` locale. Refer to [Meeting Template Locales](/docs/meetings#meeting-template-locales) for all the locales supported by Webex.", "example": "en_US", "schema": { "type": "string" } }, { "name": "isDefault", "in": "query", "description": "The value is `true` or `false`. If it's `true`, return the default meeting templates; if it's `false`, return the non-default meeting templates. If it's not specified, return both default and non-default meeting templates.", "example": false, "schema": { "type": "boolean" } }, { "name": "isStandard", "in": "query", "description": "The value is `true` or `false`. If it's `true`, return the standard meeting templates; if it's `false`, return the non-standard meeting templates. If it's not specified, return both standard and non-standard meeting templates.", "example": false, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return meeting templates that are available for that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists meeting templates from. If not specified, the API lists meeting templates from user's preferred site. All available Webex sites and preferred site of the user can be retrieved by `Get Site List` API.", "example": "site4-example.webex.com", "schema": { "type": "string" } } ] } }, "/meetings/templates/{templateId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/DetailedTemplateObject" }, "example": { "id": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "name": "Meeting template 1", "locale": "en_US", "siteUrl": "site4-example.webex.com", "templateType": "meeting", "isDefault": false, "isStandard": false, "meeting": { "title": "My meeting template 1", "agenda": "My meeting template 1 agenda", "password": "gugUTMY4?25", "start": "2021-11-09T03:19:00Z", "end": "2021-11-09T03:39:00Z", "timezone": "UTC", "enabledJoinBeforeHost": false, "joinBeforeHostMinutes": 0, "enableConnectAudioBeforeHost": false, "hostEmail": "john.andersen@example.com", "sendEmail": true, "invitees": [ { "email": "brenda.song@example.com", "displayName": "Brenda Song", "coHost": false, "panelist": false }, { "email": "catherine.sinu@example.com", "displayName": "Catherine Sinu", "coHost": false, "panelist": false } ], "enabledAutoRecordMeeting": false, "allowAnyUserToBeCoHost": false, "allowFirstUserToBeCoHost": false, "allowAuthenticatedDevices": false, "meetingOptions": { "enabledChat": true, "enabledVideo": true, "enabledPolling": false, "enabledNote": true, "noteType": "allowAll", "enabledFileTransfer": false, "enabledUCFRichMedia": false }, "attendeePrivileges": { "enabledShareContent": true, "enabledSaveDocument": false, "enabledPrintDocument": false, "enabledAnnotate": false, "enabledViewParticipantList": true, "enabledViewThumbnails": false, "enabledRemoteControl": true, "enabledViewAnyDocument": false, "enabledViewAnyPage": false, "enabledContactOperatorPrivately": false, "enabledChatHost": true, "enabledChatPresenter": true, "enabledChatOtherParticipants": true }, "registration": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": false, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": false, "requireWorkPhone": false, "requireFax": false, "enabledRegistrationId": false }, "siteUrl": "site4-example.webex.com", "excludePassword": false, "reminderTime": 15, "unlockedMeetingJoinSecurity": "allowJoin", "enableAutomaticLock": true, "automaticLockMinutes": 15, "sessionTypeId": 636, "simultaneousInterpretation": { "enabled": true, "interpreters": [ { "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, { "languageCode1": "en", "languageCode2": "fr", "email": "antoine.martin@example.com", "displayName": "Martin" } ] }, "enabledBreakoutSessions": true, "breakoutSessions": [ { "name": "Breakout Session 1", "invitees": [ "rachel.green@example.com", "monica.geller@example.com" ] }, { "name": "Breakout Session N", "invitees": [ "ross.geller@example.com", "chandler.bing@example.com" ] } ], "trackingCodes": [ { "name": "Department", "value": "Engineering" }, { "name": "Division", "value": "Full-time" } ], "audioConnectionOptions": { "audioConnectionType": "webexAudio", "enabledTollFreeCallIn": true, "enabledGlobalCallIn": true, "enabledAudienceCallBack": false, "entryAndExitTone": "beep", "allowHostToUnmuteParticipants": false, "allowAttendeeToUnmuteSelf": true, "muteAttendeeUponEntry": 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." } }, "summary": "Get a Meeting Template", "operationId": "getTemplateById", "description": "Retrieves details for a meeting template with a specified meeting template ID.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "templateId", "in": "path", "description": "Unique identifier for the meeting template being requested.", "required": true, "example": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return the meeting template that is available for that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/meetings/controls": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Control" }, "example": { "locked": false, "recordingStarted": true, "recordingPaused": 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": "Get Meeting Control Status", "operationId": "getMeetingControl", "description": "Get the meeting control of a live meeting, which is consisted of meeting control status on \"locked\" and \"recording\" to reflect whether the meeting is currently locked and there is recording in progress.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the meeting. Does not support meeting IDs for a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Control" }, "example": { "locked": false, "recordingStarted": true, "recordingPaused": 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": "Update Meeting Control Status", "operationId": "updateMeetingControl", "description": "To start, pause, resume, or stop a meeting recording; To lock or unlock an on-going meeting.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "query", "description": "Unique identifier for the meeting. Does not support meeting IDs for a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "recordingStarted": true, "recordingPaused": true, "locked": true }, "schema": { "type": "object", "properties": { "recordingStarted": { "type": "boolean", "example": true, "description": "The value can be true or false. true means to start the recording, false to end the recording." }, "recordingPaused": { "type": "boolean", "example": true, "description": "The value can be true or false, will be ignored if 'recordingStarted' sets to false, and true to resume the recording only if the recording is paused vise versa." }, "locked": { "type": "boolean", "description": "The value is true or false." } } } } } } } }, "/meetings/sessionTypes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingSessionTypeObject" }, "description": "Meeting session type array" } } }, "example": { "items": [ { "id": "628", "name": "Webex Meetings EC 2.0 meeting", "type": "meeting", "attendeesCapacity": 1000 } ] } } } }, "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 Meeting Session Types", "operationId": "listMeetingSessionTypes", "description": "List all the meeting session types enabled for a given user.", "tags": [ "Meetings" ], "parameters": [ { "name": "hostEmail", "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. If set, the admin may specify the email of a user in a site they manage and the API will list all the meeting session types enabled for the user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "Webex site URL to query. If `siteUrl` is not specified, the users' preferred site will be used. If the authorization token has the admin-level scopes, the admin can set the Webex site URL on behalf of the user specified in the `hostEmail` parameter.", "example": "site4-example.webex.com", "schema": { "type": "string" } } ] } }, "/meetings/sessionTypes/{sessionTypeId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/MeetingSessionTypeObject" }, "example": { "id": "628", "name": "Webex Meetings EC 2.0 meeting", "type": "meeting", "attendeesCapacity": 1000 } } } }, "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 a Meeting Session Type", "operationId": "getMeetingSessionTypeById", "description": "Retrieves details for a meeting session type with a specified session type ID.", "tags": [ "Meetings" ], "parameters": [ { "name": "sessionTypeId", "in": "path", "description": "A unique identifier for the sessionType.", "required": true, "example": 628, "schema": { "type": "number" } }, { "name": "hostEmail", "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. If set, the admin may specify the email of a user in a site they manage and the API will get a meeting session type with the specified session type ID enabled for the user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "Webex site URL to query. If `siteUrl` is not specified, the users' preferred site will be used. If the authorization token has the admin-level scopes, the admin can set the Webex site URL on behalf of the user specified in the `hostEmail` parameter.", "example": "site4-example.webex.com", "schema": { "type": "string" } } ] } }, "/meetings/{meetingId}/registration": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Registration" }, "example": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": false, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": false, "requireWorkPhone": false, "requireFax": false, "enabledRegistrationId": false, "customizedQuestions": [ { "id": "330521", "question": "How are you", "required": true, "type": "singleLineTextBox", "options": [ { "id": "1", "value": "green" } ], "rules": [ { "condition": "contains", "value": "tom", "result": "approve", "matchCase": true, "order": 1 } ] } ], "rules": [ { "question": "state", "condition": "contains", "value": "tom", "result": "approve", "matchCase": true, "order": 1 } ] } } } }, "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 registration form for a meeting", "operationId": "getMeetingRegistration", "description": "Get a meeting's registration form to understand which fields are required.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Registration" }, "example": { "autoAcceptRequest": false, "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireJobTitle": false, "requireCompanyName": true, "requireAddress1": false, "requireAddress2": false, "requireCity": false, "requireState": false, "requireZipCode": false, "requireCountryRegion": true, "requireWorkPhone": true, "requireFax": false, "enabledRegistrationId": false, "customizedQuestions": [ { "id": "3386787", "question": "What color do you like?", "required": true, "type": "checkbox", "options": [ { "id": "1", "value": "green" }, { "id": "2", "value": "black" }, { "id": "3", "value": "yellow" }, { "id": "4", "value": "red" } ], "rules": [ { "condition": "notEquals", "value": "red", "result": "reject", "matchCase": true, "order": 1 } ] }, { "id": "3386792", "question": "Project Team", "required": false, "type": "singleLineTextBox", "maxLength": 120 }, { "id": "3386797", "question": "How are you", "required": false, "type": "multiLineTextBox", "maxLength": 999 }, { "id": "3386802", "question": "DropDownList Q", "required": false, "type": "dropdownList", "options": [ { "id": "1", "value": "A1" }, { "id": "2", "value": "A2" } ] }, { "id": "3386891", "question": "weather", "required": false, "type": "radioButtons", "maxLength": 120, "options": [ { "id": "1", "value": "sunny" }, { "id": "2", "value": "rain" } ] } ], "rules": [ { "question": "lastName", "condition": "endsWith", "value": "tom", "result": "reject", "matchCase": false, "order": 1 } ] } } } }, "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": "Update Meeting Registration Form", "operationId": "updateMeetingRegistration", "description": "Enable or update a registration form for a meeting.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "requireFirstName": true, "requireLastName": true, "requireEmail": true, "requireCompanyName": true, "requireCountryRegion": true, "requireWorkPhone": true, "enabledRegistrationId": false, "customizedQuestions": [ { "question": "What color do you like?", "required": true, "type": "checkbox", "options": [ { "value": "green" }, { "value": "black" }, { "value": "yellow" }, { "value": "red" } ], "rules": [ { "condition": "notEquals", "value": "red", "result": "reject", "matchCase": true } ] }, { "question": "Project Team", "type": "singleLineTextBox", "maxLength": 120 }, { "question": "How are you", "type": "multiLineTextBox" }, { "question": "DropDownList Q", "type": "dropdownList", "options": [ { "value": "A1" }, { "value": "A2" } ] }, { "question": "weather", "required": false, "type": "radioButtons", "maxLength": 120, "options": [ { "value": "sunny" }, { "value": "rain" } ] } ], "rules": [ { "question": "lastName", "condition": "endsWith", "value": "tom", "result": "reject", "matchCase": false, "order": 1 } ] }, "schema": { "$ref": "#/components/schemas/RegistrationForUpdate" } } } } }, "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: 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": "Delete Meeting Registration Form", "operationId": "deleteMeetingRegistration", "description": "Disable the registration form for a meeting.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "header", "description": "e.g. `brenda.song@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for an interpreter of the meeting that is hosted by that user.", "required": false, "schema": { "type": "string" }, "example": "`brenda.song@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for an interpreter of the meeting that is hosted by that user." } ] } }, "/meetings/{meetingId}/registrants": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegistrantCreateResponse" }, "example": { "id": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "status": "pending", "firstName": "bob", "lastName": "Lee", "email": "bob@example.com", "jobTitle": "manager", "companyName": "cisco", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "registrationTime": "2021-09-07T09:29:13+08:00", "registrationId": "566476", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ] } } } }, "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": "Register a Meeting Registrant", "operationId": "createRegistrant", "description": "Register a new registrant for a meeting. When a meeting or webinar is created, this API can only be used if Registration is checked on the page or the registration attribute is specified through the [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) API.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "firstName": "Bob", "lastName": "Lee", "email": "bob@example.com", "sendEmail": true, "jobTitle": "manager", "companyName": "Cisco Systems, Inc.", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ] }, "schema": { "$ref": "#/components/schemas/RegistrantFormObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Registrant" }, "description": "Registrants array." } } }, "example": { "items": [ { "id": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "status": "pending", "firstName": "bob", "lastName": "Lee", "email": "bob@example.com", "jobTitle": "manager", "companyName": "cisco", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "registrationTime": "2021-09-07T09:29:13+08:00", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ], "sourceId": "cisco", "registrationId": "566476" } ] } } } }, "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 Meeting Registrants", "operationId": "listMeetingRegistrants", "description": "Meeting's host and cohost can retrieve the list of registrants for a meeting with a specified meeting Id.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of registrants in the response, up to 100. The default is 10.", "example": 100, "schema": { "type": "number" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "email", "in": "query", "description": "Registrant's email to filter registrants.", "example": "abc@test.com", "schema": { "type": "string" } }, { "name": "registrationTimeFrom", "in": "query", "description": "The time registrants register a meeting starts from the specified date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `registrationTimeFrom` is not specified, it equals `registrationTimeTo` minus 7 days.", "example": "2022-10-22T09:30:00", "schema": { "type": "string" } }, { "name": "registrationTimeTo", "in": "query", "description": "The time registrants register a meeting before the specified date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `registrationTimeTo` is not specified, it equals `registrationTimeFrom` plus 7 days. The interval between `registrationTimeFrom` and `registrationTimeTo` must be within 90 days.", "example": "2022-10-25T09:30:00", "schema": { "type": "string" } } ] } }, "/meetings/{meetingId}/registrants/bulkInsert": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RegistrantCreateResponse" } } } }, "example": { "items": [ { "id": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "status": "pending", "firstName": "bob", "lastName": "Lee", "email": "bob@example.com", "jobTitle": "manager", "companyName": "cisco", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "registrationTime": "2021-09-07T09:29:13+08:00", "registrationId": "566476", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ] } ] } } } }, "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": "Batch register Meeting Registrants", "operationId": "createRegistrants", "description": "Bulk register new registrants for a meeting. When a meeting or webinar is created, this API can only be used if Registration is checked on the page or the registration attribute is specified through the [Create a Meeting](/docs/api/v1/meetings/create-a-meeting) API.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "items": [ { "firstName": "Bob", "lastName": "Lee", "email": "bob@example.com", "sendEmail": true, "jobTitle": "manager", "companyName": "Cisco Systems, Inc.", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ] } ] }, "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RegistrantFormObject" }, "description": "Registrants array." } } } } } } } }, "/meetings/{meetingId}/registrants/{registrantId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Registrant" }, "example": { "id": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "status": "pending", "firstName": "bob", "lastName": "Lee", "email": "bob@example.com", "jobTitle": "manager", "companyName": "cisco", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "registrationTime": "2021-09-07T09:29:13+08:00", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ], "sourceId": "cisco", "registrationId": "566476" } } } }, "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 Detailed Information for a Meeting Registrant", "operationId": "getRegistrant", "description": "Retrieves details for a meeting registrant with a specified registrant Id.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "registrantId", "in": "path", "description": "Unique identifier for the registrant", "required": true, "example": "89012b46-ee1d-4c4d-9c3f-0f1b27b47f19", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] }, "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: 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": "Delete a Meeting Registrant", "operationId": "deleteRegistrant", "description": "Meeting's host or cohost can delete a registrant with a specified registrant ID.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "registrantId", "in": "path", "description": "Unique identifier for the registrant.", "required": true, "example": "89012b46-ee1d-4c4d-9c3f-0f1b27b47f19", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] } }, "/meetings/{meetingId}/registrants/query": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Registrant" }, "description": "Registrants array." } } }, "example": { "items": [ { "id": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "status": "pending", "firstName": "bob", "lastName": "Lee", "email": "bob@example.com", "jobTitle": "manager", "companyName": "cisco", "address1": "address1 string", "address2": "address2 string", "city": "New York", "state": "New York", "zipCode": 123456, "countryRegion": "United States", "workPhone": "+1 123456", "fax": "123456", "registrationTime": "2021-09-07T09:29:13+08:00", "customizedQuestions": [ { "questionId": 330087, "answers": [ { "optionId": 1, "answer": "green" } ] } ], "sourceId": "cisco", "registrationId": "566476" } ] } } } }, "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": "Query Meeting Registrants", "operationId": "queryMeetingRegistrants", "description": "Meeting's host and cohost can query the list of registrants for a meeting with a specified meeting ID and registrants email.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of registrants in the response, up to 100. The default is 10.", "example": 1000, "schema": { "type": "number" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.", "example": false, "schema": { "type": "boolean", "default": false } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "status": "pending", "orderType": "DESC", "orderBy": "firstName", "emails": [ "bob@example.com" ] }, "schema": { "$ref": "#/components/schemas/queryRegistrants" } } } } } }, "/meetings/{meetingId}/registrants/approve": { "post": { "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": { "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": "Batch Approve Meeting Registrants", "operationId": "batchApproveMeetingRegistrants", "description": "Batch approve a set of registrants for a meeting by the meeting host or cohost.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.\n + Default: `false`\n", "example": false, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "sendEmail": true, "registrants": [ { "id": "6e341788-3bad-4bf0-8037-93709fe8b427" }, { "id": "8919b6bf-01f6-4693-9c0b-cc75e956ba06" } ] }, "schema": { "type": "object", "properties": { "sendEmail": { "type": "boolean", "example": true, "description": "If `true` send email to registrants. Default: `true`." }, "registrants": { "type": "array", "items": { "$ref": "#/components/schemas/Registrants" }, "description": "Registrants array." } } } } } } } }, "/meetings/{meetingId}/registrants/reject": { "post": { "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": { "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": "Batch Reject Meeting Registrants", "operationId": "batchRejectMeetingRegistrants", "description": "Batch reject a set of registrants for a meeting by the meeting host or cohost.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.\n + Default: `false`\n", "example": false, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "sendEmail": true, "registrants": [ { "id": "6e341788-3bad-4bf0-8037-93709fe8b427" }, { "id": "8919b6bf-01f6-4693-9c0b-cc75e956ba06" } ] }, "schema": { "type": "object", "properties": { "sendEmail": { "type": "boolean", "example": true, "description": "If `true` send email to registrants. Default: `true`." }, "registrants": { "type": "array", "items": { "$ref": "#/components/schemas/Registrants" }, "description": "Registrants array." } } } } } } } }, "/meetings/{meetingId}/registrants/cancel": { "post": { "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": { "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": "Batch Cancel Meeting Registrants", "operationId": "batchCancelMeetingRegistrants", "description": "Batch cancel a set of registrants for a meeting by the meeting host or cohost.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.\n + Default: `false`\n", "example": false, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "sendEmail": true, "registrants": [ { "id": "6e341788-3bad-4bf0-8037-93709fe8b427" }, { "id": "8919b6bf-01f6-4693-9c0b-cc75e956ba06" } ] }, "schema": { "type": "object", "properties": { "sendEmail": { "type": "boolean", "example": true, "description": "If `true` send email to registrants. Default: `true`." }, "registrants": { "type": "array", "items": { "$ref": "#/components/schemas/Registrants" }, "description": "Registrants array." } } } } } } } }, "/meetings/{meetingId}/registrants/bulkDelete": { "post": { "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": { "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": "Batch Delete Meeting Registrants", "operationId": "batchDeleteMeetingRegistrants", "description": "Batch delete a set of registrants for a meeting by the meeting host or cohost.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the ID of the meeting series is supported for meetingId. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. See the [Meetings Overview](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) for more information about meeting types.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "current", "in": "query", "description": "Whether or not to retrieve only the current scheduled meeting of the meeting series, i.e. the meeting ready to join or start or the upcoming meeting of the meeting series. If it's `true`, return details for the current scheduled meeting of the series, i.e. the scheduled meeting ready to join or start or the upcoming scheduled meeting of the meeting series. If it's `false` or not specified, return details for the entire meeting series. This parameter only applies to meeting series.\n + Default: `false`\n", "example": false, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "sendEmail": true, "registrants": [ { "id": "6e341788-3bad-4bf0-8037-93709fe8b427" }, { "id": "8919b6bf-01f6-4693-9c0b-cc75e956ba06" } ] }, "schema": { "type": "object", "properties": { "sendEmail": { "type": "boolean", "example": true, "description": "If `true` send email to registrants. Default: `true`." }, "registrants": { "type": "array", "items": { "$ref": "#/components/schemas/Registrants" }, "description": "Registrants array." } } } } } } } }, "/meetings/{meetingId}/simultaneousInterpretation": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetMeetingSimultaneousInterpretationObject" }, "example": { "enabled": true, "interpreters": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } ] } } } }, "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": "'interpreters' should be empty when simultaneous interpretation is disabled." } ], "trackingId": "19085D1FCFEE445DA358375500D25E44_1598154356721" } } } }, "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 Meeting Simultaneous interpretation", "operationId": "updateMeetingSimultaneousInterpretation", "description": "Updates simultaneous interpretation options of a meeting with a specified meeting ID. This operation applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Does not support meeting IDs for a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "interpreters": [ { "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } ], "hostEmail": "john.andersen@example.com" }, "schema": { "$ref": "#/components/schemas/UpdateMeetingSimultaneousInterpretationObject" } } } } } }, "/meetings/{meetingId}/interpreters": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInterpreterObject" }, "example": { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } } } }, "400": { "description": "Bad Request", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "trackingId": { "type": "string" } } }, "example": { "message": "'marcus.hoffmann@example.com' is found in more than one interpreter.", "trackingId": "8E12317727354470B5258F5B28D93FB9_1562296858685" } } } }, "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 Meeting Interpreter", "operationId": "createInterpreter", "description": "Assign an interpreter to a bi-directional simultaneous interpretation language channel for a meeting.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to which the interpreter is to be assigned.", "required": true, "example": "870f51ff287b41be84648412901e0402_2628962", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, "schema": { "$ref": "#/components/schemas/CreateInterpreterObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/GetInterpreterObject" }, "description": "Array of meeting interpreters." } } }, "example": { "items": [ { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" }, { "id": "3GQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MAJiZDBjNWVlNDC4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "fr", "email": "antoine.martin@example.com", "displayName": "Martin" } ] } } } }, "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 Meeting Interpreters", "operationId": "listInterpreters", "description": "Lists meeting interpreters for a meeting with a specified `meetingId`.\n\nThis operation can be used for meeting series, scheduled meeting and ended or ongoing meeting instance objects. If the specified `meetingId` is for a meeting series, the interpreters for the series will be listed; if the `meetingId` is for a scheduled meeting, the interpreters for the particular scheduled meeting will be listed; if the `meetingId` is for an ended or ongoing meeting instance, the interpreters for the particular meeting instance will be listed. See the [Webex Meetings](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) guide for more information about the types of meetings.\n\nThe list returned is sorted in descending order by when interpreters were created.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting for which interpreters are being requested. The meeting can be meeting series, scheduled meeting or meeting instance which has ended or is ongoing. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "870f51ff287b41be84648412901e0402", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return interpreters of the meeting that is hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } } ] } }, "/meetings/{meetingId}/interpreters/{interpreterId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInterpreterObject" }, "example": { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.hoffmann@example.com", "displayName": "Hoffmann" } } } }, "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 Meeting Interpreter", "operationId": "getInterpreterById", "description": "Retrieves details for a meeting interpreter identified by `meetingId` and `interpreterId` in the URI.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to which the interpreter has been assigned.", "required": true, "example": "870f51ff287b41be84648412901e0402", "schema": { "type": "string" } }, { "name": "interpreterId", "in": "path", "description": "Unique identifier for the interpreter whose details are being requested.", "required": true, "example": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for an interpreter of the meeting that is hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetInterpreterObject" }, "example": { "id": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "languageCode1": "en", "languageCode2": "de", "email": "marcus.tuchel@example.com", "displayName": "Tuchel" } } } }, "400": { "description": "Bad Request", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "trackingId": { "type": "string" } } }, "example": { "message": "'marcus.tuchel@example.com' is found in more than one interpreter.", "trackingId": "8E12317727354470B5258F5B28D93FB9_1562296858685" } } } }, "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 Meeting Interpreter", "operationId": "updateInterpreterById", "description": "Updates details for a meeting interpreter identified by `meetingId` and `interpreterId` in the URI.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting whose interpreters were belong to.", "required": true, "example": "870f51ff287b41be84648412901e0402", "schema": { "type": "string" } }, { "name": "interpreterId", "in": "path", "description": "Unique identifier for the interpreter whose details are being requested.", "required": true, "example": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "languageCode1": "en", "languageCode2": "de", "email": "marcus.tuchel@example.com", "displayName": "Tuchel" }, "schema": { "$ref": "#/components/schemas/UpdateInterpreterObject" } } } } }, "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 Meeting Interpreter", "operationId": "deleteInterpreterById", "description": "Removes a meeting interpreter identified by `meetingId` and `interpreterId` in the URI. The deleted meeting interpreter cannot be recovered.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting whose interpreters were belong to.", "required": true, "example": "870f51ff287b41be84648412901e0402", "schema": { "type": "string" } }, { "name": "interpreterId", "in": "path", "description": "Unique identifier for the interpreter to be removed.", "required": true, "example": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will delete an interpreter of the meeting that is hosted by that user.", "example": "brenda.song@example.com", "schema": { "type": "string" } }, { "name": "sendEmail", "in": "query", "description": "If `true`, send email to the interpreter.", "example": true, "schema": { "type": "boolean", "default": true } } ] } }, "/meetings/{meetingId}/breakoutSessions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrePostMeetingBreakoutSessionsObject" }, "example": { "items": [ { "id": "18d2e565770c4eee918784ee333510ec", "name": "Breakout Session 1", "invitees": [ "rachel.green@example.com", "monica.geller@example.com" ] }, { "id": "7ec0782fccf84a5b8cb56d97c69cc771", "name": "Breakout Session N", "invitees": [ "ross.geller@example.com", "chandler.bing@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": "List Meeting Breakout Sessions", "operationId": "listBreakoutSessions", "description": "Lists meeting breakout sessions for a meeting with a specified `meetingId`.\n\nThis operation can be used for meeting series, scheduled meeting and ended or ongoing meeting instance objects. See the [Webex Meetings](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) guide for more information about the types of meetings.\n\n* If the meeting of `meetingId` is in progress, the operation returns the breakout sessions which are currently held in the meeting.\n\n* If the meeting of `meetingId` is ended meeting instance, the operation returns the breakout sessions which happended during the meeting instance.\n\n* Otherwise, if it's a meeting series or scheduled meeting and it's not in progress, the operation returns the breakout sessions which are created when the meeting is scheduled.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. This parameter applies to meeting series, scheduled meeting and ended or ongoing meeting instance objects. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "header", "description": "e.g. `john.andersen@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user.", "required": false, "schema": { "type": "string" }, "example": "`john.andersen@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user." } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PreMeetingBreakoutSessionsObject" }, "example": { "items": [ { "id": "18d2e565770c4eee918784ee333510ec", "name": "Breakout Session 1", "invitees": [ "rachel.green@example.com", "monica.geller@example.com" ] }, { "id": "7ec0782fccf84a5b8cb56d97c69cc771", "name": "Breakout Session N", "invitees": [ "ross.geller@example.com", "chandler.bing@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": "Update Meeting Breakout Sessions", "operationId": "updateBreakoutSessions", "description": "Updates breakout sessions of a meeting with a specified meeting ID in the pre-meeting state. This operation applies to meeting series and scheduled meetings.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Does not support meeting IDs for a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "sendEmail": true, "items": [ { "name": "Breakout Session 1", "invitees": [ "rachel.green@example.com", "monica.geller@example.com" ] }, { "name": "Breakout Session N", "invitees": [ "ross.geller@example.com", "chandler.bing@example.com" ] } ] }, "schema": { "$ref": "#/components/schemas/UpdateMeetingBreakoutSessionsObject" } } } } }, "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 Meeting Breakout Sessions", "operationId": "deleteBreakoutSessions", "description": "Deletes breakout sessions with a specified meeting ID. The deleted breakout sessions cannot be recovered. The value of `enabledBreakoutSessions` attribute is set to `false` automatically.\nThis operation applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances.", "required": true, "example": "e8a6557d3c964824ba346a0800d92575", "schema": { "type": "string" } }, { "name": "sendEmail", "in": "query", "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true.", "example": true, "schema": { "type": "boolean" } }, { "name": "hostEmail", "in": "header", "description": "e.g. `john.andersen@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will delete breakout sessions that are created by that user.", "required": false, "schema": { "type": "string" }, "example": "`john.andersen@example.com` (string, optional) - Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will delete breakout sessions that are created by that user." } ] } }, "/meetings/{meetingId}/survey": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SurveyObject" }, "example": { "id": "f2d58ef6cc5848c9a0fb41e3b7aa0ed3", "surveyName": "Webinar User Experience Survey", "meetingId": "fe32230212b7421286a1f300572a6517", "description": "A survey about user experience with webinars", "allowAnonymousSubmit": false, "questions": [ { "id": 3388057, "question": "First text question", "required": true, "type": "text" }, { "id": 3388062, "question": "Second text question", "required": true, "type": "text" }, { "id": 3388067, "question": "like rating", "required": true, "type": "rating", "fromScore": 1, "fromLabel": "Not Likely", "toScore": 5, "toLabel": "Very Likely" }, { "id": 3388072, "question": "check box question", "required": false, "type": "checkbox", "options": [ { "id": 1, "value": "Answer 1" }, { "id": 2, "value": "Answer 2" }, { "id": 3, "value": "Answer 3" }, { "id": 4, "value": "Answer 4" } ] }, { "id": 3388077, "question": "dropdown list question", "required": false, "type": "singleDropdown", "options": [ { "id": 1, "value": "Answer 1" }, { "id": 2, "value": "Answer 2" }, { "id": 3, "value": "Answer 3" }, { "id": 4, "value": "Answer 4" } ] }, { "id": 3388082, "question": "radio button question", "required": true, "type": "singleRadio", "options": [ { "id": 1, "value": "Answer 1" }, { "id": 2, "value": "Answer 2" }, { "id": 3, "value": "Answer 3" }, { "id": 4, "value": "Answer 4" } ] } ] } } } }, "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 a Meeting Survey", "operationId": "getSurveyByMeetingId", "description": "Retrieves details for a meeting survey identified by `meetingId`.\n\n#### Request Header\n\n* `hostEmail`: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return survey details of that user.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Please note that only the meeting ID of a scheduled webinar is supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "header", "description": "e.g. john.andersen@example.com", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" } ] } }, "/meetings/{meetingId}/surveyResults": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SurveyResultObject" }, "description": "SurveyResult array" } } }, "example": { "items": [ { "id": "01c98ac1-e741-4bc1-b92b-6eb42f66caea", "surveyName": "Webinar User Experience Survey", "meetingId": "870f51ff287b41be84648412901e0402", "email": "kingu1@example.com", "displayName": "kingu1", "createTime": "2022-07-06T14:13:06Z", "questions": [ { "id": 3388057, "question": "First text question", "type": "text", "answers": [ { "optionId": 1, "answer": "yes" } ] }, { "id": 3388062, "question": "Second text question", "type": "text", "answers": [ { "optionId": 1, "answer": "no" } ] }, { "id": 3388067, "question": "like rating", "type": "rating", "answers": [ { "optionId": 1, "answer": "4" } ] }, { "id": 3388072, "question": "check box question", "type": "checkbox", "answers": [ { "optionId": 2, "answer": "Answer 2" }, { "optionId": 3, "answer": "Answer 3" }, { "optionId": 4, "answer": "Answer 4" } ] }, { "id": 3388077, "question": "dropdown list question", "type": "singleDropdown", "answers": [ { "optionId": 2, "answer": "Answer 2" } ] }, { "id": 3388082, "question": "radio button question", "type": "singleRadio", "answers": [ { "optionId": 3, "answer": "Answer 3" } ] } ] } ] } } } }, "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 Meeting Survey Results", "operationId": "listSurveyResultsByMeetingId", "description": "Retrieves results for a meeting survey identified by `meetingId`.\n\n#### Request Header\n\n* `timezone`: Time zone for time stamps in response body, defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.\n\n* `hostEmail`: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return the survey results of that user.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Please note that only the meeting ID of a scheduled webinar is supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "meetingStartTimeFrom", "in": "query", "description": "Start date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format for the meeting objects being requested. `meetingStartTimeFrom` cannot be after `meetingStartTimeTo`. This parameter will be ignored if `meetingId` is the unique identifier for the specific meeting instance.\nWhen `meetingId` is not the unique identifier for the specific meeting instance, the `meetingStartTimeFrom`, if not specified, equals `meetingStartTimeTo` minus `1` month; if `meetingStartTimeTo` is also not specified, the default value for `meetingStartTimeFrom` is `1` month before the current date and time.\n", "example": "2019-03-18T09:30:00Z", "schema": { "type": "string" } }, { "name": "meetingStartTimeTo", "in": "query", "description": "End date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format for the meeting objects being requested. `meetingStartTimeTo` cannot be prior to `meetingStartTimeFrom`. This parameter will be ignored if `meetingId` is the unique identifier for the specific meeting instance.\nWhen `meetingId` is not the unique identifier for the specific meeting instance, if `meetingStartTimeFrom` is also not specified, the default value for `meetingStartTimeTo` is the current date and time;For example,if `meetingStartTimeFrom` is a month ago, the default value for `meetingStartTimeTo` is `1` month after `meetingStartTimeFrom`.Otherwise it is the current date and time.\n", "example": "2019-03-25T09:30:00Z", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of meetings in the response, up to 100. The default is 10.", "example": 100, "schema": { "type": "number" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" }, { "name": "hostEmail", "in": "header", "description": "e.g. john.andersen@example.com", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" } ] } }, "/meetings/{meetingId}/surveyLinks": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SurveyLinkObject" }, "description": "Survey link array" } } }, "example": { "items": [ { "email": "kingu1@example.com", "surveyLink": "https://example.webex.com/webappng/sites/example/meeting/surveyPage/fa1fc86f70d74c08bc7dc5a3b499ab98?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaXRlSWQiOjIwNjI4NDIsImJpcnRoVGltZSI6MTY4ODQzODYwODY4NCwiZW1haWwiOiJRVWhUU3dBQUFJVllnWEhTSVJLa2hzN2pIR0lCNzJxVDM3SDc5a1NLWjcwUFNBVG9aekJYeHV3KzhJenZnd3l6ZEJ5ZGFDeGc1TnZLcW9mRHV4RjlqdWpGeWhld3EyRmFsWVpNTU9Sa3drNVRNQWZZR2lTUVFRPT0iLCJtZWV0aW5nSW5zdGFuY2VJZCI6Ijc0Y2YyZTJhMjI0ZDQ3OTViM2QwMjliMDZjMGI4NWFjX0lfMjY0Mzg5MTg4NzU2OTY1MjUxIn0.SDJTSwAAAIVIzXgb0wNfEdKwDeRiGzxLWfhoSG5blNcDoCslAiserg" }, { "email": "kingu2@example.com", "surveyLink": "https://example.webex.com/webappng/sites/example/meeting/surveyPage/fa1fc86f70d74c08bc7dc5a3b499ab98?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaXRlSWQiOjIwNjI4NDIsImJpcnRoVGltZSI6MTY4ODQzODYwODY4NSwiZW1haWwiOiJRVWhUU3dBQUFJVXJDOGlEUjdDNFRlbkRNdlI3MVNMZEk5R0p0YXI1c29SeG9Uenh5enNvRjRvSFlJSW02YXN1aVBydGJ5eTUxdDVaVE9pcGxLVzJhbGg2ZlVmZjZJMUd5dWtqaFVVRnRaNnFqZENIMmdBaEJBPT0iLCJtZWV0aW5nSW5zdGFuY2VJZCI6Ijc0Y2YyZTJhMjI0ZDQ3OTViM2QwMjliMDZjMGI4NWFjX0lfMjY0Mzg5MTg4NzU2OTY1MjUxIn0.SDJTSwAAAIUANDHzUhKprSjQD1zzgLS-TX7BodJK5ANv60x1HmhgDw" }, { "email": "kingu3@example.com", "surveyLink": "https://example.webex.com/webappng/sites/example/meeting/surveyPage/fa1fc86f70d74c08bc7dc5a3b499ab98?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaXRlSWQiOjIwNjI4NDIsImJpcnRoVGltZSI6MTY4ODQzODYwODY4NSwiZW1haWwiOiJRVWhUU3dBQUFJV0JtaWhFeVA5STh2V2E3RlllQ3dwS1NvQVZ5eXhlNHYzRHNrbXZrNDdZbi9jRmtVUXNSUkF2cThxWEJnajl6K0tkMGVNeCtxbmNEczJ1blNwQjdycnBlb0FCNlBoWVFNU3REQzc4QmdKbE1RPT0iLCJtZWV0aW5nSW5zdGFuY2VJZCI6Ijc0Y2YyZTJhMjI0ZDQ3OTViM2QwMjliMDZjMGI4NWFjX0lfMjY0Mzg5MTg4NzU2OTY1MjUxIn0.SDJTSwAAAIWuP7djKYELnXoOC1P812DKZUYlOT9uI5bbgd8bTiu-Wg" } ] } } } }, "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 Meeting Survey Links", "operationId": "generateSurveyLink", "description": "Get survey links of a meeting for different users.\n\n#### Request Header\n\n* `timezone`: Time zone for the `meetingStartTimeFrom` and `meetingStartTimeTo` parameters and defined in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default value is `UTC` if not specified.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only applies to webinars. Meetings and personal room meetings are not supported.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "meetingStartTimeFrom": "2019-03-18T09:30:00Z", "meetingStartTimeTo": "2019-03-25T09:30:00Z", "emails": [ "kingu1@example.com", "kingu2@example.com", "kingu3@example.com" ] }, "schema": { "$ref": "#/components/schemas/SurveyLinkRequestObject" } } } } } }, "/meetings/{meetingId}/invitationSources": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/InvitationSourceObject" }, "description": "Invitation source array." } } }, "example": { "items": [ { "id": "1", "sourceId": "cisco", "joinLink": "https://example.webex.com/example/j.php?MTID=m6d75f1c875b3e3c5d18c7598036bdd8b", "registerLink": "https://example.webex.com/example/j.php?RGID=rb05b31307b5b820e16594da9d1cfc5c7", "sourceEmail": "john001@example.com" }, { "id": "2", "sourceId": "webex", "joinLink": "https://example.webex.com/example/j.php?MTID=m6d75f1c875b3e3c5d18c7598036bdd8b", "registerLink": "https://example.webex.com/example/j.php?RGID=rb05b31307b5b820e16594da9d1cfc588", "sourceEmail": "john002@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": "Create Invitation Sources", "operationId": "createInvitationSources", "description": "Creates one or more invitation sources for a meeting.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the meeting ID of a scheduled webinar is supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "items": [ { "sourceId": "cisco", "sourceEmail": "john001@example.com" }, { "sourceId": "webex", "sourceEmail": "john002@example.com" } ] }, "schema": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This parameter is only used if a user or application calling the API has the admin-level scopes. The admin may specify the email of a user on a site they manage and the API will return meeting participants of the meetings that are hosted by that user." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "description": "Unique identifier for the meeting host. Should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/InvitationSourceCreateObject" } } } } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/InvitationSourceObject" }, "description": "Invitation source array." } } }, "example": { "items": [ { "id": "1", "sourceId": "cisco", "joinLink": "https://example.webex.com/example/j.php?MTID=m6d75f1c875b3e3c5d18c7598036bdd8b", "registerLink": "https://example.webex.com/example/j.php?RGID=rb05b31307b5b820e16594da9d1cfc5c7", "sourceEmail": "john001@example.com" }, { "id": "2", "sourceId": "webex", "joinLink": "https://example.webex.com/example/j.php?MTID=m6d75f1c875b3e3c5d18c7598036bdd8b", "registerLink": "https://example.webex.com/example/j.php?RGID=rb05b31307b5b820e16594da9d1cfc588", "sourceEmail": "john002@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": "List Invitation Sources", "operationId": "listInvitationSources", "description": "Lists invitation sources for a meeting.\n\n#### Request Header\n\n* `hostEmail`: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return recording details of that user.\n\n* `personId`: Unique identifier for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting. Only the meeting ID of a scheduled webinar is supported for this API.", "required": true, "example": "560d7b784f5143e3be2fc3064a5c4999", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "header", "description": "e.g. john.andersen@example.com", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" }, { "name": "personId", "in": "header", "description": "e.g. Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI" } ] } }, "/meetings/trackingCodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingTrackingCodesObject" }, "description": "Tracking code array." } } }, "example": { "items": [ { "id": "1", "name": "Department", "siteUrl": "example.webex.com", "inputMode": "text", "options": [ { "value": "Engineering", "defaultValue": false }, { "value": "Design", "defaultValue": true }, { "value": "Sales", "defaultValue": false } ], "service": "MeetingCenter", "type": "optional" } ] } } } }, "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 Meeting Tracking Codes", "operationId": "getMeetingHostTrackingCodes", "description": "Lists tracking codes on a site by a meeting host. The result indicates which tracking codes and what options can be used to create or update a meeting on the specified site.\n\n* The `options` here differ from those in the [site-level tracking codes](/docs/api/v1/tracking-codes/get-a-tracking-code) and the [user-level tracking codes](/docs/api/v1/tracking-codes/get-user-tracking-codes). It is the result of a selective combination of the two.\n\n* For a tracking code, if there is no user-level tracking code, the API returns the site-level options, and the `defaultValue` of the site-level default option is `true`. If there is a user-level tracking code, it is merged into the `options`. Meanwhile, the `defaultValue` of this user-level option is `true` and the site-level default option becomes non default.\n\n* 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 [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "tags": [ "Meetings" ], "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 [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "service", "in": "query", "description": "Service for schedule or sign-up pages.", "required": true, "example": "MeetingCenter", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if a user or application calling the API has the admin-level scopes. The admin may specify the email of a user on a site they manage and the API will return meeting participants of the meetings that are hosted by that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ] } }, "/meetings/reassignHost": { "post": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "207": { "description": "Multi-Status", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReassignMeetingResponseObject" }, "description": "Array of meeting reassignment results." } } }, "example": { "items": [ { "meetingId": "870f51ff287b41be84648412901e0402", "httpStatus": 200 }, { "meetingId": "1d824a4a205042eba9574e00b711b226", "httpStatus": 404, "message": "The requested resource could not be found.", "errors": [ { "description": "The meeting is not found." } ] }, { "meetingId": "41be84640b711b8414a4a205042ebba9", "httpStatus": 200 } ] } } } }, "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": "Reassign Meetings to a New Host", "operationId": "reassignHost", "description": "Reassigns a list of meetings to a new host by an admin user.\n\nAll the meetings of `meetingIds` should belong to the same site, which is the `siteUrl` in the request header, if specified, or the admin user's preferred site, if not specified. All available Webex sites and the preferred sites of a user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\nIf the user of `hostEmail` is not qualified to be a host of the target site, the API returns an error with the HTTP status code `403`. If all the meetings referenced by `meetingIds` have been reassigned the new host successfully, the API returns an empty response with the HTTP status code `204`. Otherwise, if all the meetings of `meetingIds` fail or some of them fail, the API returns a \"Multi-Status\" response with status code of `207`, and individual errors for each meeting in the response body.\n\nIf a meeting already has several ended meeting instances before it's assigned to a new host, the existing ended instances are accessible to the original host and not accessible to the new host, but the new meeting instances which happen after the reassignment are only accessible to the new host.\n\nAfter the reassignment, the original host will receive an email of meeting cancellation. However, the meeting in the original host's calendar will not necessarily be removed because user's calendar, e.g. Outlook calendar, is not managed by the meeting system directly.\n\n**Note**: Only IDs of meeting series are supported for the `meetingIds`. IDs of scheduled meetings, meeting instances, or scheduled personal room meetings are not supported. To learn more about different types of meetings, please refer to [Meeting Series, Scheduled Meetings, and Meeting Instances](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances).\n\nThere are several limitations when reassigning meetings:\n\n* Users cannot assign an in-progress meeting.\n\n* Users cannot assign a meeting to a user who is not a Webex user, or an attendee who does not have host privilege.\n\n* Users cannot assign a meeting with calling/callback to a host user who does not have calling/callback privileges\n\n* Users cannot assign a meeting with session type A to a host user who does not have session type A privileges.\n\n* Users cannot assign an MC or Webinar to a new host who does not have an MC license or a Webinar license.\n\n* Users cannot assign a TC/EC1.0/SC meeting, or a meeting that is created by on-behalf to a new host.\n\n* Users can reassign hosts for meetings from third-party integrations, such as Outlook or Google. Note that this is not recommended because it may result in inconsistent data between both parties.\n\n#### Request Header\n\n* `siteUrl`: Optional request header parameter. All the meetings of `meetingIds` should belong to the site referenced by siteUrl if specified. Otherwise, the meetings should belong to the admin user's preferred sites. All available Webex sites and the preferred sites of a user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "tags": [ "Meetings" ], "parameters": [ { "name": "siteUrl", "in": "header", "description": "e.g. example.webex.com", "required": false, "schema": { "type": "string" }, "example": "example.webex.com" } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "meetingIds": [ "870f51ff287b41be84648412901e0402", "1d824a4a205042eba9574e00b711b226", "41be84640b711b8414a4a205042ebba9" ] }, "schema": { "$ref": "#/components/schemas/ReassignMeetingRequestObject" } } } } } }, "/meetings/{meetingId}/end": { "post": { "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": { "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": "End a Meeting", "operationId": "endMeeting", "description": "Ends a meeting with a specified meeting ID. This operation applies to meeting series, scheduled meetings, and in-progress meetings. Only the meeting host, cohost, or compliance officer can end a meeting with this API.\n\n* If the `meetingId` value specified is for a scheduled meeting, the operation ends that meeting without impacting other scheduled meetings of the parent meeting series.\n\n* If the `meetingId` value specified is for a meeting series, the operation ends the current meeting occurrence.", "tags": [ "Meetings" ], "parameters": [ { "name": "meetingId", "in": "path", "description": "Unique identifier for the meeting to be ended.", "required": true, "example": "e8a6557d3c964824ba346a0800d92575", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "reason": "Agenda has been completed and the meeting is ended." }, "schema": { "$ref": "#/components/schemas/EndMeetingRequestObject" } } } } } }, "/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.\n\n* 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.\n\n* 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.\n\n* 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.\n\n* 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`.\n\n* The `hostProfileCode` of `required` is only allowed for a Site Admin managed site, and not for a Control Hub managed site.\n\n* 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`.\n\n* 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.\n\n* 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`.\n\n* 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.\n\n* 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.\n\n* 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.\n\n* 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.\n\n* 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`.\n\n* Currently, the `hostProfileCode` of `required` is only allowed for a Site Admin managed site, and not allowed for a Control Hub managed site.\n\n* 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`.\n\n* 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.\n\n* 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`.\n\n* 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.\n\n* 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.\n\n* 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: 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 User Tracking Codes", "operationId": "Get User Tracking Codes", "description": "Lists user's tracking codes by an admin user.\n\n* At least one parameter, either `personId`, or `email` is required. `personId` must come before `email` if both are specified. Please note that `email` is specified in the request header.\n\n* If `siteUrl` is specified, the tracking codes of the specified site will be listed; otherwise, the tracking codes of a user's preferred site are listed. 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. Please note that the user here is the admin user who invokes the API, not the user specified by `personId` or email.\n\n* 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 user's mapped tracking codes.\n\n#### Request Header\n\n* `email`: Email address for the user whose tracking codes are being retrieved. The admin users can specify the email of a user on a site they manage and the API returns details for the user's tracking codes. At least one parameter of `personId` or `email` is required.", "tags": [ "Tracking Codes" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site from which the API retrieves the tracking code. 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" } }, { "name": "personId", "in": "query", "description": "Unique identifier for the user whose tracking codes are being retrieved. The admin user can specify the `personId` of a user on a site they manage and the API returns details for the user's tracking codes. At least one parameter of `personId` or `email` is required.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOGJiOWNjMC0zMWM2LTQ3MzYtYmE4OC0wMDk5ZmQzNDNmODE", "schema": { "type": "string" } }, { "name": "email", "in": "header", "description": "e.g. john.andersen@example.com", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" } ] }, "put": { "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": "Sales" }, { "id": 2, "name": "Division", "value": "Part-time" } ] } } } }, "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 request could not be understood by the server due to malformed syntax. See 'errors' for more details.", "errors": [ { "description": "Tracking code of '1' is not found." } ], "trackingId": "6B41C672FF384F50B0F368E09001496B_1661404838840" } } } }, "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 User Tracking Codes", "operationId": "Update User Tracking Codes", "description": "Updates tracking codes for a specified user by an admin user.\n\n* The `siteUrl` is required. The operation updates a user's tracking code on the specified site. All a user's available Webex sites can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API. Please note that the user here is the admin user who invokes the API, not the user specified by `personId` or `email`.\n\n* A name that is not found in the site-level tracking codes cannot be set for a user's tracking codes. All available site-level tracking codes for a site can be retrieved by the [List Tracking Codes](/docs/api/v1/tracking-codes/list-tracking-codes) API.\n\n* If the `inputMode` of a user's tracking code is `select` or `hostProfileSelect`, its value must be one of the site-level options of that tracking code. All available site-level tracking codes for a site can be retrieved by the [List Tracking Codes](/docs/api/v1/tracking-codes/list-tracking-codes) API.\n\n* 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 user's tracking codes when the mapping process is in progress or the mapping process is completed.", "tags": [ "Tracking Codes" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOGJiOWNjMC0zMWM2LTQ3MzYtYmE4OC0wMDk5ZmQzNDNmODE", "email": "john.andersen@example.com", "siteUrl": "example.webex.com", "trackingCodes": [ { "name": "Department", "value": "Sales" }, { "name": "Division", "value": "Part-time" } ] }, "schema": { "$ref": "#/components/schemas/UpdateTrackingCodeForUserObject" } } } } } }, "/people": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonCollectionResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "+1 408 526 7209", "primary": true } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "nickName": "John", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "created": "2015-10-18T14:26:16.000Z", "lastModified": "2015-10-18T14:26:16.000Z", "timezone": "America/Denver", "lastActivity": "2015-10-18T14:26:16.028Z", "siteUrls": [ "mysite.webex.com#attendee" ], "sipAddresses": [ { "type": "personal-room", "value": "testuser5@mycompany.webex.com", "primary": false } ], "xmppFederationJid": "user@example.com", "status": "active", "invitePending": "false", "loginEnabled": "true", "type": "person" } ], "notFoundIds": [] } } } }, "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 People", "operationId": "List People", "description": "List people in your organization. For most users, either the `email` or `displayName` parameter is required. Admin users can omit these fields and list all users in their organization.\n\nResponse properties associated with a user's presence status, such as `status` or `lastActivity`, will only be returned for people within your organization or an organization you manage. Presence information will not be returned if the authenticated user has [disabled status sharing](https://help.webex.com/nkzs6wl/). Calling /people frequently to poll `status` information for a large set of users will quickly lead to `429` errors and throttling of such requests and is therefore discouraged.\n\nAdmin users can include `Webex Calling` (BroadCloud) user details in the response by specifying `callingData` parameter as `true`. Admin users can list all users in a location. Admin users will receive an enriched payload with additional administrative fields like `licenses`,`roles`, `locations` etc. These fields are shown when accessing a user via GET /people/{id}, not when doing a GET /people?id=\n\nLookup by `email` is only supported for people within the same org or where a partner admin relationship is in place.\n\nLookup by `roles` is only supported for Admin users for the people within the same org.\n\nLong result sets will be split into [pages](/docs/basics#pagination).", "tags": [ "People" ], "parameters": [ { "name": "email", "in": "query", "description": "List people with this email address. For non-admin requests, either this or `displayName` are required. With the exception of partner admins and a managed org relationship, people lookup by email is only available for users in the same org.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "displayName", "in": "query", "description": "List people whose name starts with this string. For non-admin requests, either this or email are required.", "example": "John Andersen", "schema": { "type": "string" } }, { "name": "id", "in": "query", "description": "List people by ID. Accepts up to 85 person IDs separated by commas. If this parameter is provided then presence information (such as the `lastActivity` or `status` properties) will not be included in the response.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List people in this organization. Only admin users of another organization (such as partners) may use this parameter.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "roles", "in": "query", "description": "List of roleIds separated by commas.", "example": "Y2lzY29zcGFyazovL3VzL1JPTEUvYXRsYXMtcG9ydGFsLnBhcnRuZXIuc2FsZXNhZG1pbg", "schema": { "type": "string" } }, { "name": "callingData", "in": "query", "description": "Include Webex Calling user details in the response.", "example": true, "schema": { "type": "boolean", "default": false } }, { "name": "locationId", "in": "query", "description": "List people present in this location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of people in the response. If `callingData`=true, then `max` will not be more than 100. If `locationId` is specified then `max` will not be more than 50.", "example": 100, "schema": { "type": "number", "default": 100 } }, { "name": "excludeStatus", "in": "query", "description": "Omit people status/availability to enhance query performance.", "example": true, "schema": { "type": "boolean", "default": false } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Person" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "+1 408 526 7209", "primary": true } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "nickName": "John", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "created": "2015-10-18T14:26:16.000Z", "lastModified": "2015-10-18T14:26:16.000Z", "timezone": "America/Denver", "lastActivity": "2015-10-18T14:26:16.028Z", "siteUrls": [ "mysite.webex.com#attendee" ], "sipAddresses": [ { "type": "personal-room", "value": "testuser5@mycompany.webex.com", "primary": false } ], "xmppFederationJid": "user@example.com", "status": "active", "invitePending": "false", "loginEnabled": "true", "type": "person" } } } }, "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": "Create a Person", "operationId": "Create a Person", "description": "Create a new user account for a given organization. Only an admin can create a new user account.\n\nAt least one of the following body parameters is required to create a new user: `displayName`, `firstName`, `lastName`.\n\nCurrently, users may have only one email address associated with their account. The `emails` parameter is an array, which accepts multiple values to allow for future expansion, but currently only one email address will be used for the new user.\n\nAdmin users can include `Webex calling` (BroadCloud) user details in the response by specifying `callingData` parameter as true. It may happen that the POST request with calling data returns a 400 status, but the person was created still. One way to get into this state is if an invalid phone number is assigned to a user. The people API aggregates calls to several other microservices, and one may have failed. A best practice is to check if the user exists before retrying. This can be done with the user's email address and a GET /people.\n\nWhen doing attendee management, append `#attendee` to the `siteUrl` parameter (e.g. `mysite.webex.com#attendee`) to make the new user an attendee for a site.\n\n**NOTES**:\n\n* For creating a `Webex Calling` user, you must provide `phoneNumbers` or `extension`, `locationId`, and `licenses` string in the same request.\n\n* `SipAddresses` are asigned via an asynchronous process. This means that the POST response may not show the SIPAddresses immediately. Instead you can verify them with a separate GET to /people, after they were newly configured.\n\n* When assigning multiple licenses in a single request, the system will assign all valid and available licenses. If any requested licenses cannot be assigned, the operation will continue with the remaining licenses. As a result, it is possible that not all requested licenses are assigned to the user.", "tags": [ "People" ], "parameters": [ { "name": "callingData", "in": "query", "description": "Include Webex Calling user details in the response.", "example": true, "schema": { "type": "boolean", "default": false } }, { "name": "minResponse", "in": "query", "description": "Set to `true` to improve performance by omitting person details and returning only the ID in the response when successful. If unsuccessful the response will have optional error details.", "example": true, "schema": { "type": "boolean", "default": false } } ], "requestBody": { "content": { "application/json": { "example": { "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "408 526 7209" } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "siteUrls": [ "mysite.webex.com#attendee" ] }, "schema": { "type": "object", "required": [ "emails" ], "properties": { "emails": { "type": "array", "items": { "type": "string", "example": "john.andersen@example.com" }, "description": "The email addresses of the person. Only one email address is allowed per person." }, "phoneNumbers": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "work" ], "description": "The type of phone number." }, "value": { "type": "string", "example": "408 526 7209", "description": "The phone number." } } }, "description": "Phone numbers for the person. Only settable for Webex Calling. Requires a Webex Calling license." }, "extension": { "type": "string", "example": "133", "description": "Webex Calling extension of the person. This is only settable for a person with a Webex Calling license." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "description": "The ID of the location for this person." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The full name of the person." }, "firstName": { "type": "string", "example": "John", "description": "The first name of the person." }, "lastName": { "type": "string", "example": "Andersen", "description": "The last name of the person." }, "avatar": { "type": "string", "example": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "description": "The URL to the person's avatar in PNG format." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The ID of the organization to which this person belongs." }, "roles": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of role strings representing the roles to which this admin user belongs." }, "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of license strings allocated to this person." }, "department": { "type": "string", "example": "Sales", "description": "The business department the user belongs to." }, "manager": { "type": "string", "example": "John Duarte", "description": "A manager identifier." }, "managerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "description": "Person ID of the manager." }, "title": { "type": "string", "example": "GM", "description": "The person's title." }, "addresses": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "example": "work", "description": "The type of address." }, "country": { "type": "string", "example": "US", "description": "The user's country." }, "locality": { "type": "string", "example": "Milpitas", "description": "The user's locality, often city." }, "region": { "type": "string", "example": "California", "description": "The user's region, often state." }, "streetAddress": { "type": "string", "example": "1099 Bird Ave.", "description": "The user's street." }, "postalCode": { "type": "string", "example": "99212", "description": "The user's postal or zip code." } } }, "description": "A person's addresses." }, "siteUrls": { "type": "array", "items": { "type": "string", "example": "mysite.webex.com#attendee" }, "description": "One or several site names where this user has an attendee role. Append `#attendee` to the sitename (e.g.: `mysite.webex.com#attendee`)." } } } } } } } }, "/people/{personId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Person" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "+1 408 526 7209", "primary": true } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "nickName": "John", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "created": "2015-10-18T14:26:16.000Z", "lastModified": "2015-10-18T14:26:16.000Z", "timezone": "America/Denver", "lastActivity": "2015-10-18T14:26:16.028Z", "siteUrls": [ "mysite.webex.com#attendee" ], "sipAddresses": [ { "type": "personal-room", "value": "testuser5@mycompany.webex.com", "primary": false } ], "xmppFederationJid": "user@example.com", "status": "active", "invitePending": "false", "loginEnabled": "true", "type": "person" } } } }, "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 Person Details", "operationId": "Get Person Details", "description": "Shows details for a person, by ID.\n\nResponse properties associated with a user's presence status, such as `status` or `lastActivity`, will only be displayed for people within your organization or an organization you manage. Presence information will not be shown if the authenticated user has [disabled status sharing](https://help.webex.com/nkzs6wl/).\n\nAdmin users can include `Webex Calling` (BroadCloud) user details in the response by specifying `callingData` parameter as `true`.\n\nSpecify the person ID in the `personId` parameter in the URI.", "tags": [ "People" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "schema": { "type": "string" } }, { "name": "callingData", "in": "query", "description": "Include Webex Calling user details in the response.", "example": true, "schema": { "type": "boolean", "default": false } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Person" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "+1 408 526 7209", "primary": true } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "nickName": "John", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "created": "2015-10-18T14:26:16.000Z", "lastModified": "2015-10-18T14:26:16.000Z", "timezone": "America/Denver", "lastActivity": "2015-10-18T14:26:16.028Z", "siteUrls": [ "mysite.webex.com#attendee" ], "sipAddresses": [ { "type": "personal-room", "value": "testuser5@mycompany.webex.com", "primary": false } ], "xmppFederationJid": "user@example.com", "status": "active", "invitePending": "false", "loginEnabled": "true", "type": "person" } } } }, "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": { "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 Person", "operationId": "Update a Person", "description": "Update details for a person, by ID.\n\nSpecify the person ID in the `personId` parameter in the URI. Only an admin can update a person details.\n\nInclude all details for the person. This action expects all user details to be present in the request. A common approach is to first [GET the person's details](/docs/api/v1/people/get-person-details), make changes, then PUT both the changed and unchanged values.\n\nAdmin users can include `Webex Calling` (BroadCloud) user details in the response by specifying `callingData` parameter as true.\n\nWhen doing attendee management, to update a user from host role to an attendee for a site append `#attendee` to the respective `siteUrl` and remove the meeting host license for this site from the license array.\nTo update a person from an attendee role to a host for a site, add the meeting license for this site in the meeting array, and remove that site from the `siteurl` parameter.\n\nTo remove the attendee privilege for a user on a meeting site, remove the `sitename#attendee` from the `siteUrl`s array. The `showAllTypes` parameter must be set to `true`.\n\n**NOTE**:\n\n* The `locationId` can only be set when assigning a calling license to a user. It cannot be changed if a user is already an existing calling user.\n\n* The `extension` field should be used to update the Webex Calling extension for a person. The extension value should not include the location routing prefix. The `work_extension` type in the `phoneNumbers` object as seen in the response payload of [List People](/docs/api/v1/people/list-people) or [Get Person Details](/docs/api/v1/people/get-person-details), cannot be used to set the Webex Calling extension for a person.\n\n* When updating a user with multiple email addresses using a PUT request, ensure that the primary email address is listed first in the array. Note that the order of email addresses returned by a GET request is not guaranteed..\n\n* The People API is a combination of several microservices, each responsible for specific attributes of a person. As a result, a PUT request that returns an error response code may still have altered some values of the person's data. Therefore, it is recommended to perform a GET request after encountering an error to verify the current state of the resource. \n\n* Some licenses are implicitly assigned by the system and cannot be admin controlled. They are necessary for the baseline function of the Webex system. If you get an error about implicitly assigned licensed that cannot be removed, please ensure you have the corresponding license in your PUT request.\n\n* When assigning multiple licenses in a single request, the system will assign all valid and available licenses. If any requested licenses cannot be assigned, the operation will continue with the remaining licenses. As a result, it is possible that not all requested licenses are assigned to the user.", "tags": [ "People" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "schema": { "type": "string" } }, { "name": "callingData", "in": "query", "description": "Include Webex Calling user details in the response.", "example": true, "schema": { "type": "boolean", "default": false } }, { "name": "showAllTypes", "in": "query", "description": "Include additional user data like `#attendee` role.", "example": true, "schema": { "type": "boolean" } }, { "name": "minResponse", "in": "query", "description": "Set to `true` to improve performance by omitting person details in the response. If unsuccessful the response will have optional error details.", "example": true, "schema": { "type": "boolean", "default": false } } ], "requestBody": { "content": { "application/json": { "example": { "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "408 526 7209" } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "firstName": "John", "lastName": "Andersen", "nickName": "John", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "siteUrls": [ "mysite.webex.com#attendee" ], "loginEnabled": true }, "schema": { "type": "object", "required": [ "displayName" ], "properties": { "emails": { "type": "array", "items": { "type": "string", "example": "john.andersen@example.com" }, "description": "The email addresses of the person. Only one email address is allowed per person." }, "phoneNumbers": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "work" ], "description": "The type of phone number." }, "value": { "type": "string", "example": "408 526 7209", "description": "The phone number." } } }, "description": "Phone numbers for the person. Can only be set for Webex Calling. Needs a Webex Calling license." }, "extension": { "type": "string", "example": "133", "description": "Webex Calling extension of the person. This is only settable for a person with a Webex Calling license." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "description": "The ID of the location for this person." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The full name of the person." }, "firstName": { "type": "string", "example": "John", "description": "The first name of the person." }, "lastName": { "type": "string", "example": "Andersen", "description": "The last name of the person." }, "nickName": { "type": "string", "example": "John", "description": "The nickname of the person if configured. This cannot be overwritten and instead will be set to the firstName automatically in update requests." }, "avatar": { "type": "string", "example": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "description": "The URL to the person's avatar in PNG format." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The ID of the organization to which this person belongs." }, "roles": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of role strings representing the roles to which this admin user belongs." }, "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of license strings allocated to this person." }, "department": { "type": "string", "example": "Sales", "description": "The business department the user belongs to." }, "manager": { "type": "string", "example": "John Duarte", "description": "A manager identifier." }, "managerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "description": "Person ID of the manager." }, "title": { "type": "string", "example": "GM", "description": "The person's title." }, "addresses": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "example": "work", "description": "The type of address." }, "country": { "type": "string", "example": "US", "description": "The user's country." }, "locality": { "type": "string", "example": "Milpitas", "description": "The user's locality, often city." }, "region": { "type": "string", "example": "California", "description": "The user's region, often state." }, "streetAddress": { "type": "string", "example": "1099 Bird Ave.", "description": "The user's street." }, "postalCode": { "type": "string", "example": "99212", "description": "The user's postal or zip code." } } }, "description": "A person's addresses." }, "siteUrls": { "type": "array", "items": { "type": "string", "example": "mysite.webex.com#attendee" }, "description": "One or several site names where this user has a role (host or attendee). Append `#attendee` to the site name to designate the attendee role on that site." }, "loginEnabled": { "type": "boolean", "example": true, "description": "Whether or not the user is allowed to use Webex. This property is only accessible if the authenticated user is an admin user for the person's organization." } } } } } } }, "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: 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": "Delete a Person", "operationId": "Delete a Person", "description": "Remove a person from the system.\n\n**Required Administrator Roles:**\n\nThe following administrators have permission to use this API:\n\n**Customer Organization:**\n- Full administrator\n- User administrator\n\n**Partner/External Access:**\n- External full administrator\n\n**Note:** External read-only administrators, provisioning administrators, and device administrators cannot delete users.\n\nSpecify the person ID in the `personId` parameter in the URI.", "tags": [ "People" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "schema": { "type": "string" } } ] } }, "/people/me": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Person" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "emails": [ "john.andersen@example.com" ], "phoneNumbers": [ { "type": "work", "value": "+1 408 526 7209", "primary": true } ], "extension": "133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "displayName": "John Andersen", "nickName": "John", "firstName": "John", "lastName": "Andersen", "avatar": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "roles": [ "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" ], "department": "Sales", "manager": "John Duarte", "managerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "title": "GM", "addresses": [ { "type": "work", "country": "US", "locality": "Milpitas", "region": "California", "streetAddress": "1099 Bird Ave.", "postalCode": "99212" } ], "created": "2015-10-18T14:26:16.000Z", "lastModified": "2015-10-18T14:26:16.000Z", "timezone": "America/Denver", "lastActivity": "2015-10-18T14:26:16.028Z", "siteUrls": [ "mysite.webex.com#attendee" ], "sipAddresses": [ { "type": "personal-room", "value": "testuser5@mycompany.webex.com", "primary": false } ], "xmppFederationJid": "user@example.com", "status": "active", "invitePending": "false", "loginEnabled": "true", "type": "person" } } } }, "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 My Own Details", "operationId": "Get My Own Details", "description": "Get profile details for the authenticated user. This is the same as GET `/people/{personId}` using the Person ID associated with your Auth token.\n\nAdmin users can include `Webex Calling` (BroadCloud) user details in the response by specifying `callingData` parameter as true.", "tags": [ "People" ], "parameters": [ { "name": "callingData", "in": "query", "description": "Include Webex Calling user details in the response.", "example": true, "schema": { "type": "boolean", "default": false } } ] } }, "/recordingReport/accessSummary": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingReportSummaryObject" }, "description": "An array of recording audit report summaries objects." } } }, "example": { "items": [ { "recordingId": "4f914b1dfe3c4d11a61730f18c0f5387", "topic": "Example Topic", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "hostEmail": "john.andersen@example.com", "viewCount": 18, "downloadCount": 10 }, { "recordingId": "3324fb76946249cfa07fc30b3ccbf580", "topic": "Example Topic", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "hostEmail": "john.andersen@example.com", "viewCount": 0, "downloadCount": 2 }, { "recordingId": "42b80117a2a74dcf9863bf06264f8075", "topic": "Example Topic", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "hostEmail": "john.andersen@example.com", "viewCount": 7, "downloadCount": 20 } ] } } } }, "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 of Recording Audit Report Summaries", "operationId": "List of Recording Audit Report Summaries", "description": "Lists of recording audit report summaries. You can specify a date range and the maximum number of recording audit report summaries to return.\n\nOnly recording audit report summaries of meetings hosted by or shared with the authenticated user will be listed.\n\nThe list returned is sorted in descending order by the date and time that the recordings were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `siteUrl` is specified, the recording audit report summaries of the specified site will be listed; otherwise, recording audit report summaries of the user's preferred site will be listed. All available Webex sites and the preferred site of the user can be retrieved by the `Get Site List` API.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Recording Report" ], "parameters": [ { "name": "max", "in": "query", "description": "Maximum number of recording audit report summaries to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for recording audit report summaries to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. Please note that the interval between `to` and `from` cannot exceed 90 days and the interval between the current time and `from` cannot exceed 365 days.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If `to` is specified, the default value is 7 days before `to`; if `to` is not specified, the default value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for recording audit report summaries to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. Please note that the interval between `to` and `from` cannot exceed 90 days and the interval between the current time and `from` cannot exceed 365 days.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return recording audit report summaries of that user. If a special value of `all` is set for `hostEmail`, the admin can list recording audit report summaries of all users on the target site, not of a single user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists recording audit report summaries from. If not specified, the API lists summary audit report for recordings from the user's preferred site. All available Webex sites and the preferred site of the user can be retrieved by `Get Site List` API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/recordingReport/accessDetail": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingReportObject" }, "description": "An array of recording audit report objects." } } }, "example": { "items": [ { "recordingId": "4f914b1dfe3c4d11a61730f18c0f5387", "topic": "Example Topic", "name": "John Andersen", "email": "john.andersen@example.com", "accessTime": "2020-07-13T17:05:35Z", "viewed": true, "downloaded": false }, { "recordingId": "4f914b1dfe3c4d11a61730f18c0f5387", "topic": "Example Topic", "name": "Brenda Song", "email": "brenda.song@example.com", "accessTime": "2020-07-18T19:05:35Z", "viewed": false, "downloaded": true }, { "recordingId": "4f914b1dfe3c4d11a61730f18c0f5387", "topic": "Example Topic", "name": "Joe Doe", "email": "joeDoe@example.com", "accessTime": "2020-08-18T19:08:33Z", "viewed": true, "downloaded": 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": "Get Recording Audit Report Details", "operationId": "Get Recording Audit Report Details", "description": "Retrieves details for a recording audit report with a specified recording ID.\n\nOnly recording audit report details of meetings hosted by or shared with the authenticated user may be retrieved.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Recording Report" ], "parameters": [ { "name": "recordingId", "in": "query", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. If set, the admin may specify the email of a user in a site they manage and the API will return recording details of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Maximum number of recording audit report details to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/recordingReport/meetingArchiveSummaries": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingAchriveSummaryObject" }, "description": "An array of meeting archive summaries objects." } } }, "example": { "items": [ { "archiveId": "7d7ea5f42b921eace05386ca24ad730e_R_1000634462", "serviceType": "MeetingCenter", "title": "Test003_xml", "createTime": "2022-10-31T15:50:11Z" }, { "archiveId": "7d7ea5f42b921eace05386ca24ad730e_R_1000634107", "serviceType": "MeetingCenter", "title": "Gang test pwd 01_xml", "createTime": "2022-10-31T09:08:00Z" }, { "archiveId": "7d7ea5f42b921eace05386ca24ad730e_R_1000633967", "serviceType": "MeetingCenter", "title": "Numeric password Test2_xml", "createTime": "2022-10-31T07:53:05Z" }, { "archiveId": "7d7ea5f42b921eace05386ca24ad730e_R_1000633912", "serviceType": "MeetingCenter", "title": "Numeric password Test2_xml", "createTime": "2022-10-31T07:44:31Z" } ] } } } }, "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 Meeting Archive Summaries", "operationId": "List Meeting Archive Summaries", "description": "Lists of meeting archive summaries. You can specify a date range and the maximum number of meeting archive summaries to return.\n\nMeeting archive summaries are only available to full administrators, not even the meeting host.\n\nThe list returned is sorted in descending order by the date and time that the archives were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `siteUrl` is specified, the meeting archive summaries of the specified site will be listed; otherwise, meeting archive summaries of the user's preferred site will be listed. All available Webex sites and the preferred site of the user can be retrieved by the `Get Site List` API.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Recording Report" ], "parameters": [ { "name": "max", "in": "query", "description": "Maximum number of meeting archive summaries to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for meeting archive summaries to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. Please note that the interval between `to` and `from` cannot exceed 30 days.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If `to` is specified, the default value is 7 days before `to`; if `to` is not specified, the default value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for meeting archive summaries to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. Please note that the interval between `to` and `from` cannot exceed 30 days.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists meeting archive summaries from. If not specified, the API lists meeting archive summaries for recordings from the user's preferred site. All available Webex sites and the preferred site of the user can be retrieved by `Get Site List` API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/recordingReport/meetingArchives/{archiveId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/RecordingArchiveReportObject" }, "example": { "archiveId": "4E3254897D3A2E24E05386CA24AD93A6_R_1000637312", "serviceType": "MeetingCenter", "title": "Marcos Alonso's Personal Room", "start": "2022-11-03T10:37:32+08:00", "end": "2022-11-03T10:37:32+08:00", "hostDisplayName": "Marcos Alonso", "hostEmail": "marcos@example.com", "participants": [ { "correlationId": -25516827, "displayName": "Marcos Alonso", "joinedTime": "2022-11-03T10:32:09+08:00", "leftTime": "2022-11-03T10:37:32+08:00" }, { "correlationId": 10947662, "displayName": "Antoine Griezmann", "joinedTime": "2022-11-03T10:32:09+08:00", "leftTime": "2022-11-03T10:37:32+08:00", "email": "linzhou@example.com" }, { "correlationId": -25516842, "displayName": "Marco Reus", "joinedTime": "2022-11-03T10:32:09+08:00", "leftTime": "2022-11-03T10:37:32+08:00" } ], "chats": [ { "type": "public", "senderName": "Marcos Alonso", "chatTime": "2022-11-03T10:32:48+08:00", "target": "All Participants", "text": "Hi everyone!" } ], "polls": [ { "type": "public", "startTime": "2022-11-03T10:33:40+08:00", "endTime": "2022-11-03T10:37:32+08:00", "content": { "questionCount": 1, "userCount": 1, "votedUserCount": 3, "questions": [ { "voteUsers": [ { "correlationId": -25516827, "displayName": "Marcos Alonso" }, { "correlationId": -25516842, "displayName": "Antoine Griezmann" }, { "correlationId": -25516847, "displayName": "Marco Reus" } ], "question": { "choiceCount": 3, "type": "single answer", "text": "Q1" }, "answerSummary": [ { "totalRespondents": 1, "isCorrect": false, "text": "1", "voteUsers": [ { "correlationId": -25516842, "displayName": "Antoine Griezmann" } ] }, { "totalRespondents": 2, "isCorrect": false, "text": "2", "voteUsers": [ { "correlationId": -25516827, "displayName": "Marcos Alonso" }, { "correlationId": -25516847, "displayName": "Marco Reus" } ] }, { "totalRespondents": 0, "isCorrect": true, "text": "3" } ], "respondents": [ { "correlationId": -25516827, "displayName": "Marcos Alonso", "answers": [ "2" ] }, { "correlationId": -25516842, "displayName": "Antoine Griezmann", "answers": [ "1" ] }, { "correlationId": -25516847, "displayName": "Marco Reus", "answers": [ "2" ] } ] } ] } } ], "qas": [ { "priority": "NA", "type": "private", "displayName": "Marcos Alonso", "questionTime": "2022-11-03T10:32:40+08:00", "target": "All Panelists", "question": "What we will do next step?", "answers": [ { "displayName": "Marcos Alonso", "correlationId": -25516827, "answerTime": "2022-11-03T10:32:34+08:00", "text": "Go home" }, { "displayName": "Adam Zhou", "correlationId": 10947662, "email": "linzhou@example.com", "answerTime": "2022-11-03T10:34:58+08:00", "text": "Hiking" }, { "displayName": "Marcos Alonso", "correlationId": -25516827, "answerTime": "2022-11-03T10:32:40+08:00", "text": "Drink Some" } ] }, { "type": "dismissed", "displayName": "Marcos Alonso", "questionTime": "2022-11-03T10:35:30+08:00", "question": "Thank you for your question. The information that you requested cannot be provided by any of the hosts or cohosts." } ] } } } }, "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 Meeting Archive Details", "operationId": "Get Meeting Archive Details", "description": "Retrieves details for a meeting archive report with a specified archive ID, which contains recording metadata.\n\nMeeting archive details are only available to full administrators, not even the meeting host.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.", "tags": [ "Recording Report" ], "parameters": [ { "name": "archiveId", "in": "path", "description": "A unique identifier for the meeting archive summary.", "required": true, "example": "7d7ea5f42b921eace05386ca24ad730e_R_1000634462", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/recordings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingObject" }, "description": "An array of recording objects." } } }, "example": { "items": [ { "id": "4f914b1dfe3c4d11a61730f18c0f5387", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:35Z", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=b91990e37417bda24986e46cf43345ab", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=69201a61d1d94a84aca18817261d1a73", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 18416, "sizeBytes": 168103, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "3324fb76946249cfa07fc30b3ccbf580", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:34Z", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=8a763939dec1fa26c565700d628fcb98", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b05e9c4f773745e7b88725cc97bc3161", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "42b80117a2a74dcf9863bf06264f8075", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:33Z", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=0edd48adbb183e7da97884a0a984e877", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b64b28ebf70e4645954420c295a9fcad", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": true, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" } ] } } } }, "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 Recordings", "operationId": "listRecordings", "description": "Lists recordings. You can specify a date range, a parent meeting ID, and the maximum number of recordings to return.\n\nOnly recordings of meetings hosted by or shared with the authenticated user will be listed.\n\nThe list returned is sorted in descending order by the date and time that the recordings were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `meetingId` is specified, only recordings associated with the specified meeting will be listed. **NOTE**: when `meetingId` is specified, parameter of `siteUrl` will be ignored.\n\n* If `siteUrl` is specified, recordings of the specified site will be listed; otherwise, the API lists recordings of all the user's sites. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.*", "tags": [ "Recordings" ], "parameters": [ { "name": "max", "in": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If only `to` is specified, the default `from` value is 7 days before `to`; if no `to` or `from` is specified, the default `from` value is 7 days before the current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "meetingId", "in": "query", "description": "Unique identifier for the parent meeting series, scheduled meeting, or meeting instance for which recordings are being requested. If a meeting series ID is specified, the operation returns an array of recordings for the specified meeting series. If a scheduled meeting ID is specified, the operation returns an array of recordings for the specified scheduled meeting. If a meeting instance ID is specified, the operation returns an array of recordings for the specified meeting instance. If no ID is specified, the operation returns an array of recordings for all meetings of the current user. When `meetingId` is specified, the `siteUrl` parameter is ignored.", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the required [admin-level meeting 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 recordings of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site from which the API lists recordings. If not specified, the API lists recordings from all of a user's sites. All available Webex sites and the preferred site of the 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" } }, { "name": "integrationTag", "in": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain, such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\".", "example": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "schema": { "type": "string" } }, { "name": "topic", "in": "query", "description": "Recording's topic. If specified, the API filters recordings by topic in a case-insensitive manner.", "example": "John's Meeting", "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Recording's file format. If specified, the API filters recordings by format.", "example": "ARF", "schema": { "type": "string", "enum": [ "MP4", "ARF" ] } }, { "name": "serviceType", "in": "query", "description": "The service type for recordings. If this item is specified, the API filters recordings by service-type.", "example": "MeetingCenter", "schema": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "SupportCenter", "TrainingCenter" ] } }, { "name": "status", "in": "query", "description": "Recording's status. If not specified or `available`, retrieves recordings that are available. Otherwise, if specified as `deleted`, retrieves recordings that have been moved into the recycle bin. The `purged` status only applies if the user calling the API is a Compliance Officer and `meetingId` is specified.", "example": "available", "schema": { "type": "string", "default": "available", "enum": [ "available", "deleted", "purged" ] } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/admin/recordings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingObjectForAdminAndCO" }, "description": "An array of recording objects." } } }, "example": { "items": [ { "id": "4f914b1dfe3c4d11a61730f18c0f5387", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:35Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=b91990e37417bda24986e46cf43345ab", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=69201a61d1d94a84aca18817261d1a73", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 18416, "sizeBytes": 168103, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "3324fb76946249cfa07fc30b3ccbf580", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:34Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=8a763939dec1fa26c565700d628fcb98", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b05e9c4f773745e7b88725cc97bc3161", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "42b80117a2a74dcf9863bf06264f8075", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:33Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=0edd48adbb183e7da97884a0a984e877", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b64b28ebf70e4645954420c295a9fcad", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" } ] } } } }, "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 Recordings For an Admin or Compliance Officer", "operationId": "listRecordingsForAdminOrComplianceOfficer", "description": "List recordings for an admin or compliance officer. You can specify a date range, a parent meeting ID, and the maximum number of recordings to return.\n\nThe list returned is sorted in descending order by the date and time that the recordings were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `meetingId` is specified, only recordings associated with the specified meeting will be listed. Please note that when `meetingId` is specified, parameters of `siteUrl`, `from`, and `to` will be ignored.\n\n* If `siteUrl` is specified, all the recordings on the specified site are listed; otherwise, all the recordings on the admin user's or compliance officer's preferred site are listed. All the available Webex sites and the admin user's or compliance officer's preferred site can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.*", "tags": [ "Recordings" ], "parameters": [ { "name": "max", "in": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `from` and `to` must be within 30 days. If `to` is specified, the default value for `from` is `to` minus 7 days. If `to` is also not specified, the default value for `from` is current date and time minus 7 days.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `from` and `to` must be within 30 days. If `from` is specified, the default value for `to` is `from` plus 7 days. If `from` is also not specified, the default value for `to` is the current date and time.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string" } }, { "name": "meetingId", "in": "query", "description": "Unique identifier for the parent meeting series, scheduled meeting, or meeting instance for which recordings are being requested. If a meeting series ID is specified, the operation returns an array of recordings for the specified meeting series. If a scheduled meeting ID is specified, the operation returns an array of recordings for the specified scheduled meeting. If a meeting instance ID is specified, the operation returns an array of recordings for the specified meeting instance. If not specified, the operation returns an array of recordings for all the current user's meetings. When `meetingId` is specified, the `siteUrl` parameter is ignored.", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "schema": { "type": "string" } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists recordings from. If not specified, the API lists recordings from user's preferred site. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "integrationTag", "in": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\".", "example": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "schema": { "type": "string" } }, { "name": "topic", "in": "query", "description": "Recording topic. If specified, the API filters recordings by topic in a case-insensitive manner.", "example": "John's Meeting", "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Recording's file format. If specified, the API filters recordings by format.", "example": "ARF", "schema": { "type": "string", "enum": [ "MP4", "ARF" ] } }, { "name": "serviceType", "in": "query", "description": "The service type for recordings. If specified, the API filters recordings by service type.", "example": "MeetingCenter", "schema": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "SupportCenter", "TrainingCenter" ] } }, { "name": "status", "in": "query", "description": "Recording's status. If not specified or `available`, retrieves recordings that are available. If specified as `deleted`, retrieves recordings that have been moved to the recycle bin. Otherwise, if specified as `purged`, retrieves recordings that have been purged from the recycle bin.", "example": "available", "schema": { "type": "string", "default": "available", "enum": [ "available", "deleted", "purged" ] } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/admin/recordings/{recordingId}": { "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 Recording By an Admin", "operationId": "adminDeleteRecordingById", "description": "Removes a recording with a specified recording ID by an admin. The deleted recording cannot be recovered. It will be inaccessible to regular users (host, attendees and shared) or an admin, but it will be still available to the Compliance Officer.\n\nAny recording on a site which is managed by the admin can be deleted by him.\n\nThe `temporaryDirectDownloadLinks` of a recording which are retrieved by the [Get Recording Details](/docs/api/v1/recordings/get-recording-details) API are still available to Compliance Officers even if the recording has been deleted.", "tags": [ "Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } } ] } }, "/recordings/{recordingId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/RecordingObjectWithDirectDownloadLinks" }, "example": { "id": "4f914b1dfe3c4d11a61730f18c0f5387", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:35Z", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=b91990e37417bda24986e46cf43345ab", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=69201a61d1d94a84aca18817261d1a73", "password": "********", "temporaryDirectDownloadLinks": { "recordingDownloadLink": "https://site4-example.webex.com/nbr/MultiThreadDownloadServlet?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAIUBSHkvL6Z5ddyBim5%2FHcJYcvn6IoXNEyCE2mAYQ5BlBg%3D%3D×tamp=1567125236465&islogin=yes&isprevent=no&ispwd=yes", "audioDownloadLink": "https://site4-example.webex.com/nbr/downloadMedia.do?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAIXCIXsuBt%2BAgtK7WoQ2VhgeI608N4ZMIJ3vxQaQNZuLZA%3D%3D×tamp=1567125236708&islogin=yes&isprevent=no&ispwd=yes&mediaType=1", "transcriptDownloadLink": "https://site4-example.webex.com/nbr/downloadMedia.do?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAAJVUJDxeA08qKkF%2FlxlSkDxuEFPwgGT0XW1z21NhY%2BCvg%3D%3D×tamp=1567125236866&islogin=yes&isprevent=no&ispwd=yes&mediaType=2", "expiration": "2022-05-01T10:30:25Z" }, "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 18416, "sizeBytes": 168103, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" } } } }, "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 Recording Details", "operationId": "getRecordByRecordId", "description": "Retrieves details for a recording with a specified recording ID.\n\nOnly recordings of meetings hosted by or shared with the authenticated user may be retrieved.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.*\n\n* `siteUrl`: Optional request header parameter. If specified, retrieve the recording details from that site; otherwise, retrieve it from the site which is implied based on the recording ID.", "tags": [ "Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has required [admin-level meeting 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 recording details of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" }, { "name": "siteUrl", "in": "header", "description": "e.g. example.webex.com", "required": false, "schema": { "type": "string" }, "example": "example.webex.com" } ] }, "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 Recording", "operationId": "deleteRecordingByRecordId", "description": "Removes a recording with a specified recording ID. The deleted recording cannot be recovered. If a Compliance Officer deletes another user's recording, the recording will be inaccessible to regular users (host, attendees and shared), but will be still available to the Compliance Officer.\n\nOnly recordings of meetings hosted by the authenticated user can be deleted.\n\nThe `temporaryDirectDownloadLinks` of a recording which are retrieved by the [Get Recording Details](/docs/api/v1/recordings/get-recording-details) API are still available to Compliance Officers even if the recording has been deleted.", "tags": [ "Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } }, { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting 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 delete a recording of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "reason": "audit", "comment": "Compliance Officer's optional explanation for deleting a recording" }, "schema": { "$ref": "#/components/schemas/DeleteRecordingObject" } } } } } }, "/recordings/softDelete": { "post": { "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": "Move Recordings into the Recycle Bin", "operationId": "bulkSoftDeleteRecordings", "description": "Move recordings into the recycle bin with recording IDs. Recordings in the recycle bin can be recovered by [Restore Recordings from Recycle Bin](/docs/api/v1/recordings/restore-recordings-from-recycle-bin) API. If you'd like to empty recordings from the recycle bin, you can use [Purge Recordings from Recycle Bin](/docs/api/v1/recordings/purge-recordings-from-recycle-bin) API to purge all or some of them.\n\nOnly recordings of meetings hosted by the authenticated user can be moved into the recycle bin.\n\n* `recordingIds` should not be empty and its maximum size is `100`.\n\n* All the IDs of `recordingIds` should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified.", "tags": [ "Recordings" ], "parameters": [ { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting 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 move recordings into recycle bin of that user", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "recordingIds": [ "4f914b1dfe3c4d11a61730f18c0f5387" ], "siteUrl": "example.webex.com" }, "schema": { "$ref": "#/components/schemas/BulkSoftDeleteRecordingObject" } } } } } }, "/recordings/restore": { "post": { "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": "Restore Recordings from Recycle Bin", "operationId": "bulkRestoreRecordings", "description": "Restore all or some recordings from the recycle bin. Only recordings of meetings hosted by the authenticated user can be restored from recycle bin.\n\n* If `restoreAll` is `true`, `recordingIds` should be empty.\n\n* If `restoreAll` is `false`, `recordingIds` should not be empty and its maximum size is `100`.\n\n* All the IDs of `recordingIds` should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified.", "tags": [ "Recordings" ], "parameters": [ { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the required [admin-level meeting 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 restore recordings of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "restoreAll": false, "recordingIds": [ "4f914b1dfe3c4d11a61730f18c0f5387" ], "siteUrl": "example.webex.com" }, "schema": { "$ref": "#/components/schemas/BulkRestoreRecordingObject" } } } } } }, "/recordings/purge": { "post": { "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": "Purge Recordings from Recycle Bin", "operationId": "bulkPurgeRecordings", "description": "Purge recordings from recycle bin with recording IDs or purge all the recordings that are in the recycle bin.\n\nOnly recordings of meetings hosted by the authenticated user can be purged from recycle bin.\n\n* If `purgeAll` is `true`, `recordingIds` should be empty.\n\n* If `purgeAll` is `false`, `recordingIds` should not be empty and its maximum size is `100`.\n\n* All the IDs of `recordingIds` should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified.", "tags": [ "Recordings" ], "parameters": [ { "name": "hostEmail", "in": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting 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 purge recordings from recycle bin of that user.", "example": "john.andersen@example.com", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "purgeAll": false, "recordingIds": [ "4f914b1dfe3c4d11a61730f18c0f5387" ], "siteUrl": "example.webex.com" }, "schema": { "$ref": "#/components/schemas/BulkPurgeRecordingObject" } } } } } }, "/recordings/{recordingId}/accessList": { "post": { "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": "Share a Recording", "operationId": "updateRecordingShareById", "description": "Share or unshare a recording with other users by recording ID and email addresses.", "tags": [ "Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "hostEmail": "john.andersen@example.com", "addEmails": [ "alex@example.com", "bob@example.com" ], "removeEmails": [ "cherry@example.com", "danielle@example.com" ], "sendEmail": true }, "schema": { "$ref": "#/components/schemas/ShareRecordingByIdObject" } } } } } }, "/recordings/accessList": { "post": { "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": "Share a Recording Link", "operationId": "updateRecordingShareByLink", "description": "Share or unshare a recording with other users by recording link and email addresses.", "tags": [ "Recordings" ], "requestBody": { "content": { "application/json": { "example": { "webShareLink": "https://example.webex.com/webappng/sites/example/recording/9edff068a1cb4965ac640627161beed1/playback", "hostEmail": "john.andersen@example.com", "addEmails": [ "alex@example.com", "bob@example.com" ], "removeEmails": [ "cherry@example.com", "danielle@example.com" ], "sendEmail": true }, "schema": { "$ref": "#/components/schemas/ShareRecordingByLinkObject" } } } } } }, "/group/recordings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RecordingObject" }, "description": "An array of recording objects." } } }, "example": { "items": [ { "id": "4f914b1dfe3c4d11a61730f18c0f5387", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:35Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=b91990e37417bda24986e46cf43345ab", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=69201a61d1d94a84aca18817261d1a73", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 18416, "sizeBytes": 168103, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "3324fb76946249cfa07fc30b3ccbf580", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:34Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=8a763939dec1fa26c565700d628fcb98", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b05e9c4f773745e7b88725cc97bc3161", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" }, { "id": "42b80117a2a74dcf9863bf06264f8075", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:33Z", "timeRecorded": "2020-07-13T17:05:35Z", "hostDisplayName": "John Andersen", "hostEmail": "john.andersen@example.com", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=0edd48adbb183e7da97884a0a984e877", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=b64b28ebf70e4645954420c295a9fcad", "password": "********", "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 181562, "sizeBytes": 199134, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" } ] } } } }, "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 Group Recordings", "operationId": "listGroupRecordings", "description": "List group recordings for a service app which has group recording access. You can specify a date range, the maximum number of recordings to return, and `personId` or `hostEmail` of whom the recordings will be retrieved.\n\n* The list returned is sorted in descending order by the date and time that the recordings were created.\n\n* Only recordings which are in the `available` status and not shared by others can be listed. Those in the `deleted` or `purged` status or shared by others can't be listed.\n\n* Long result sets are split into [pages](/docs/basics#pagination).\n\n* If `siteUrl` is specified, the API lists group recordings on the specified site; otherwise, the API lists group recordings on all the sites managed by the service app. All the sites managed by a service app can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.\n\n* One of the `personId` parameter and `hostEmail` header must be specified so that only recordings of meetings hosted by the person of `personId` or `hostEmail` will be returned.\n\n#### Request Header\n\n* `timezone`: [Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.\n\n* `hostEmail`: Email of the user whose recordings will be retrieved. The `hostEmail` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "tags": [ "Recordings" ], "parameters": [ { "name": "personId", "in": "query", "description": "Person ID of the user whose recordings will be retrieved. The person ID can be retrieved from the [People APIs](/docs/api/v1/people), e.g. [Lit People](/docs/api/v1/people/list-people). Note that a person ID retrieved from the People APIs is a Base64-encoded string, e.g. `Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk`. The person ID in the raw UUID format which is the last part of the Base64-decoded string, e.g. `d47b2e7d-5e0f-4f69-aef4-e4ff90aea7c9`, is also supported. The `personId` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "required": false, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`.", "schema": { "type": "number", "default": 10 } }, { "name": "from", "in": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `from` and `to` must be within 30 days.", "example": "2020-07-12T09:30:00+08:00", "schema": { "type": "string", "default": "If only `to` is specified, the default `from` value is 7 days before `to`; if no `to` or `from` is specified, the default `from` value is 7 days before current date and time." } }, { "name": "to", "in": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `from` and `to` must be within 30 days.", "example": "2020-07-31T09:30:00+08:00", "schema": { "type": "string", "default": "If `from` is specified, the default value is 7 days after `from`; if `from` is not specified, the default value is the current date and time." } }, { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API lists recordings from. If not specified, the API lists recordings from user's preferred site. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "example": "example.webex.com", "schema": { "type": "string" } }, { "name": "integrationTag", "in": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\".", "example": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "schema": { "type": "string" } }, { "name": "topic", "in": "query", "description": "Recording topic. If specified, the API filters recordings by topic in a case-insensitive manner.", "example": "John's Meeting", "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Recording's file format. If specified, the API filters recordings by format.", "example": "ARF", "schema": { "type": "string", "enum": [ "MP4", "ARF" ] } }, { "name": "serviceType", "in": "query", "description": "The service type for recordings. If specified, the API filters recordings by service type.", "example": "MeetingCenter", "schema": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "SupportCenter", "TrainingCenter" ] } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" }, { "name": "hostEmail", "in": "header", "description": "Email of the user whose recordings will be retrieved. The `hostEmail` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" } ] } }, "/group/recordings/{recordingId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/RecordingObjectWithDirectDownloadLinks" }, "example": { "id": "4f914b1dfe3c4d11a61730f18c0f5387", "meetingId": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "scheduledMeetingId": "f91b6edce9864428af084977b7c68291_20200713T121500Z", "meetingSeriesId": "f91b6edce9864428af084977b7c68291", "topic": "Example Topic", "createTime": "2020-07-13T17:11:35Z", "timeRecorded": "2020-07-13T17:05:35Z", "siteUrl": "site4-example.webex.com", "downloadUrl": "https://site4-example.webex.com/site4/lsr.php?RCID=b91990e37417bda24986e46cf43345ab", "playbackUrl": "https://site4-example.webex.com/site4/ldr.php?RCID=69201a61d1d94a84aca18817261d1a73", "password": "********", "temporaryDirectDownloadLinks": { "recordingDownloadLink": "https://site4-example.webex.com/nbr/MultiThreadDownloadServlet?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAIUBSHkvL6Z5ddyBim5%2FHcJYcvn6IoXNEyCE2mAYQ5BlBg%3D%3D×tamp=1567125236465&islogin=yes&isprevent=no&ispwd=yes", "audioDownloadLink": "https://site4-example.webex.com/nbr/downloadMedia.do?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAIXCIXsuBt%2BAgtK7WoQ2VhgeI608N4ZMIJ3vxQaQNZuLZA%3D%3D×tamp=1567125236708&islogin=yes&isprevent=no&ispwd=yes&mediaType=1", "transcriptDownloadLink": "https://site4-example.webex.com/nbr/downloadMedia.do?siteid=2062842&recordid=305462&confid=137735449369118342&language=en_US&userid=3516472&serviceRecordID=305492&ticket=SDJTSwAAAAJVUJDxeA08qKkF%2FlxlSkDxuEFPwgGT0XW1z21NhY%2BCvg%3D%3D×tamp=1567125236866&islogin=yes&isprevent=no&ispwd=yes&mediaType=2", "expiration": "2022-05-01T10:30:25Z" }, "format": "ARF", "serviceType": "MeetingCenter", "durationSeconds": 18416, "sizeBytes": 168103, "shareToMe": false, "integrationTags": [ "dbaeceebea5c4a63ac9d5ef1edfe36b9", "85e1d6319aa94c0583a6891280e3437d", "27226d1311b947f3a68d6bdf8e4e19a1" ], "status": "available" } } } }, "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 Group Recording Details", "operationId": "getGroupRecordingById", "description": "Retrieves details for a group recording for a service app which has group recording access.\n\n* Only recordings which are in the `available` status and not shared by others can be listed. Those in the `deleted` or `purged` status or shared by others can't be listed.\n\n* One of the `personId` parameter and `hostEmail` header must be specified so that only recordings of meetings hosted by the person of `personId` or `hostEmail` will be returned.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.*\n\n* `hostEmail`: Email of the user whose recordings will be retrieved. The `hostEmail` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "tags": [ "Recordings" ], "parameters": [ { "name": "personId", "in": "query", "description": "Person ID of the user whose recordings will be retrieved. The person ID can be retrieved from the [People APIs](/docs/api/v1/people), e.g. [Lit People](/docs/api/v1/people/list-people). Note that a person ID retrieved from the People APIs is a Base64-encoded string, e.g. `Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk`. The person ID in the raw UUID format which is the last part of the Base64-decoded string, e.g. `d47b2e7d-5e0f-4f69-aef4-e4ff90aea7c9`, is also supported. The `personId` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "required": false, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk", "schema": { "type": "string" } }, { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" }, { "name": "hostEmail", "in": "header", "description": "Email of the user whose recordings will be retrieved. The `hostEmail` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified.", "required": false, "schema": { "type": "string" }, "example": "john.andersen@example.com" } ] } }, "/admin/meeting/config/commonSettings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetMeetingConfigurationCommonSettingObject" }, "example": { "siteOptions": { "allowCustomPersonalRoomURL": true }, "telephonyConfig": { "allowCallIn": true, "allowCallBack": true, "allowOtherTeleconf": true, "allowTollFreeCallin": true, "allowInternationalCallin": true, "allowInternationalCallback": true, "VoIP": true }, "defaultSchedulerOptions": { "entryAndExitTone": "Beep", "joinTeleconfNotPress1": true, "telephonySupport": "WebexTeleconferencing", "tollFree": true, "VoIP": false }, "scheduleMeetingOptions": { "emailReminders": true }, "securityOptions": { "joinBeforeHost": true, "audioBeforeHost": true, "firstAttendeeAsPresenter": true, "unlistAllMeetings": false, "requireLoginBeforeAccess": false, "allowMobileScreenCapture": true, "requireStrongPassword": true, "passwordCriteria": { "mixedCase": true, "minLength": 8, "minNumeric": 2, "minAlpha": 4, "minSpecial": 1, "disallowDynamicWebText": true, "disallowList": true, "disallowValues": [ "password", "Admin@123", "passwd", "pass" ] } } } } } }, "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 Meeting Common Settings Configuration", "operationId": "getMeetingCommonSettingsConfiguration", "description": "Site administrators can use this API to get a list of functions, options, and privileges that are configured for their Webex service sites.\n\n* If `siteUrl` is specified, common settings of the meeting's configuration of the specified site will be queried; otherwise, the API will query from the site administrator's preferred site. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API.", "tags": [ "Site" ], "parameters": [ { "name": "siteUrl", "in": "query", "description": "URL of the Webex site which the API queries common settings of the meeting's configuration from. If not specified, the API will query from the site administrator's preferred site. All available Webex sites and the preferred site of the 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" } } ] }, "patch": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/GetMeetingConfigurationCommonSettingObject" }, "example": { "siteOptions": { "allowCustomPersonalRoomURL": true }, "telephonyConfig": { "allowCallIn": true, "allowCallBack": true, "allowOtherTeleconf": true, "allowTollFreeCallin": true, "allowInternationalCallin": true, "allowInternationalCallback": true, "VoIP": true }, "defaultSchedulerOptions": { "entryAndExitTone": "Beep", "joinTeleconfNotPress1": true, "telephonySupport": "WebexTeleconferencing", "tollFree": true, "VoIP": false }, "scheduleMeetingOptions": { "emailReminders": true }, "securityOptions": { "joinBeforeHost": true, "audioBeforeHost": true, "firstAttendeeAsPresenter": true, "unlistAllMeetings": false, "requireLoginBeforeAccess": false, "allowMobileScreenCapture": true, "requireStrongPassword": true, "passwordCriteria": { "mixedCase": true, "minLength": 8, "minNumeric": 2, "minAlpha": 4, "minSpecial": 1, "disallowDynamicWebText": true, "disallowList": true, "disallowValues": [ "password", "Admin@123", "passwd", "pass" ] } } } } } }, "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": "Repeated items are not allowed in disallowValues." } ], "trackingId": "026C56558A1540089DB8CA7091F9B547_1663746877258" } } } }, "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 Meeting Common Settings Configuration", "operationId": "Update Meeting Common Settings Configuration", "description": "Site administrators can use this API to update the option of features, options and privileges that are configured for their WebEx service sites.", "tags": [ "Site" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "defaultSchedulerOptions": { "entryAndExitTone": "AnnounceName" }, "scheduleMeetingOptions": { "emailReminders": false }, "securityOptions": { "joinBeforeHost": true, "audioBeforeHost": false, "firstAttendeeAsPresenter": false, "requireStrongPassword": true, "passwordCriteria": { "mixedCase": false, "disallowValues": [ "password", "passwd", "pwd" ] } } }, "schema": { "$ref": "#/components/schemas/UpdateMeetingConfigurationCommonSettingObject" } } } } } }, "/slido/compliance/events": { "get": { "tags": [ "slidoSecurePremium" ], "description": "Lists events representing actions that occurred during a Slido Secure Premium session (creating a poll, modifying a poll, activating a poll, posting an answer, etc.)\n\nEvents capture who performed the action and on what resource.\n\nThe events are paginated by the server into pages of max 256 items per page without any order.\n\nThe events are available within 15 minutes after they happened.\n\nEvery resource has properties:\n* type - event type\n\n* ... event specific ids\n\n* ... event specific properties\n", "summary": "List Compliance Events", "operationId": "listComplianceEvents", "parameters": [ { "schema": { "title": "org id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "in": "query", "name": "sessionOrgId", "required": true, "description": "Webex organization UUID.", "example": "a1111111-1a11-111a-1a11-1a1111a1111a" }, { "schema": { "title": "session id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "in": "query", "name": "sessionId", "required": true, "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "example": "abcdef0123456789abcdef0123456789_I_000000000000000000" }, { "schema": { "minLength": 0, "maxLength": 128, "type": "string" }, "in": "query", "name": "start", "required": false, "description": "Pagination token. Returned in the response body as the `next` property.", "example": "MTIzNDU2Nzg5MDEyMzQ1Ng" } ], "responses": { "200": { "description": "Default Response", "content": { "application/json": { "schema": { "type": "object", "example": { "items": [ { "createdAtMs": 0, "sessionId": "abcdef0123456789abcdef0123456789_I_000000000000000000", "sessionOrgId": "a1111111-1a11-111a-1a11-1a1111a1111a", "userId": "u1111111-1u11-111u-1u11-1u1111u1111u", "data": { "type": "qaaQuestion", "sessionId": "abcdef0123456789abcdef0123456789_I_000000000000000000", "questionId": "q1111111-1q11-111q-1q11-1q1111q1111q", "createdAtMs": 0, "modifiedAtMs": 0, "isDeleted": false, "text": "What are we having for breakfast tonight?", "isAnonymous": false, "user": { "userId": "u1111111-1u11-111u-1u11-1u1111u1111u", "name": "John Doe", "unverifiedName": null }, "status": "public" } } ], "next": "MTIzNDU2Nzg5MDEyMzQ1Ng" }, "properties": { "items": { "type": "array", "items": { "type": "object", "properties": { "createdAtMs": { "type": "number" }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "sessionOrgId": { "title": "org id", "description": "Webex organization UUID.", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "userId": { "title": "user id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "data": { "anyOf": [ { "description": "Slido session. There can be at most 1 Slido session per Webex meeting instance.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "session type", "description": "Slido session. There can be at most 1 Slido session per Webex meeting instance.", "type": "string", "enum": [ "session" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "anonymityEnabled": { "type": "boolean" } } }, { "description": "Q&A section. Contains settings related to Q&A.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "qaa type", "description": "Q&A section. Contains settings related to Q&A.", "type": "string", "enum": [ "qaa" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "enabled": { "type": "boolean" }, "moderation": { "type": "boolean" } } }, { "description": "Q&A question.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "qaaQuestion type", "description": "Q&A question.", "type": "string", "enum": [ "qaaQuestion" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "questionId": { "title": "qaaQuestion id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "text": { "maxLength": 500, "type": "string" }, "isAnonymous": { "type": "boolean" }, "archivedStatus": { "anyOf": [ { "type": "string", "enum": [ "Archived" ] }, { "type": "string", "enum": [ "Answered" ] } ] }, "profanities": { "type": "array", "items": { "type": "object", "properties": { "first": { "type": "number" }, "last": { "type": "number" }, "isEmoji": { "type": "boolean" } }, "required": [ "first", "last", "isEmoji" ] } }, "upvotes": { "type": "number" }, "replyCount": { "type": "number" }, "user": { "type": "object", "properties": { "userId": { "title": "user id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "name": { "maxLength": 512, "type": "string" }, "unverifiedName": { "maxLength": 512, "type": "string" } }, "required": [ "userId", "name", "unverifiedName" ] }, "status": { "anyOf": [ { "type": "string", "enum": [ "in-review" ] }, { "type": "string", "enum": [ "public" ] }, { "type": "string", "enum": [ "archived" ] } ] } } }, { "description": "Reply to a Q&A question.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "qaaQuestionReply type", "description": "Reply to a Q&A question.", "type": "string", "enum": [ "qaaQuestionReply" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "questionId": { "title": "qaaQuestion id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "replyId": { "type": "string" }, "user": { "type": "object", "properties": { "userId": { "title": "user id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "name": { "maxLength": 512, "type": "string" }, "unverifiedName": { "maxLength": 512, "type": "string" } }, "required": [ "userId", "name", "unverifiedName" ] }, "isAnonymous": { "type": "boolean" }, "text": { "maxLength": 1000, "type": "string" } } }, { "description": "Action performed on a Q&A question. Actions include question approvals, rejections, answers, archivals, restorations, highlighting, unhighlighting, upvoting and removing an upvote.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "qaaQuestionAction type", "description": "Action performed on a Q&A question. Actions include question approvals, rejections, answers, archivals, restorations, highlighting, unhighlighting, upvoting and removing an upvote.", "type": "string", "enum": [ "qaaQuestionAction" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "questionId": { "title": "qaaQuestion id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "action": { "anyOf": [ { "type": "string", "enum": [ "approve" ] }, { "type": "string", "enum": [ "reject" ] }, { "type": "string", "enum": [ "answer" ] }, { "type": "string", "enum": [ "archive" ] }, { "type": "string", "enum": [ "restore" ] }, { "type": "string", "enum": [ "highlight" ] }, { "type": "string", "enum": [ "unhighlight" ] }, { "type": "string", "enum": [ "upvote" ] }, { "type": "string", "enum": [ "removeUpvote" ] } ] } } }, { "description": "Poll is a basic unit of interaction for participants.\nPoll can be either a single question like text / poll or a composed interaction like quiz, survey.\nOwned by admins.\n", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "poll type", "description": "Poll is a basic unit of interaction for participants.\nPoll can be either a single question like text / poll or a composed interaction like quiz, survey.\nOwned by admins.\n", "type": "string", "enum": [ "poll" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollId": { "title": "poll id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "pollType": { "description": "Poll type determines structure and behavior:\n- `simple`: Single question poll (choice, text). Question content is at poll level.\n- `survey`: Multiple questions answered in sequence. Questions are in `questions` record.", "anyOf": [ { "type": "string", "enum": [ "simple" ] }, { "type": "string", "enum": [ "survey" ] } ] }, "questionType": { "anyOf": [ { "type": "string", "enum": [ "none" ] }, { "type": "string", "enum": [ "choice" ] }, { "type": "string", "enum": [ "text" ] } ] }, "title": { "title": "Question title", "maxLength": 255, "type": "string" }, "description": { "title": "Question description", "maxLength": 1024, "type": "string" }, "hideNames": { "title": "Hide respondent names", "type": "boolean" }, "maxAnswers": { "title": "Explicit limit for number of answers per participant. 0 -> no explicit limit", "description": "Applicable for questionType:text", "minimum": 0, "maximum": 50, "type": "number" }, "options": { "title": "Question options", "description": "Applicable for questionType:choice", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": { "title": { "title": "Option title", "maxLength": 255, "type": "string" }, "isCorrect": { "title": "Marks correct answer", "description": "Meaningful only when `enableCorrectOptions` setting is `true`.", "type": "boolean" }, "order": { "title": "Sort order of the option", "type": "number" } } } }, "maxOptions": { "title": "Maximum number of answered options. 0 - no explicit limit, 1 -> 1, 2 -> 2, etc.", "description": "Applicable for questionType:choice", "minimum": 0, "maximum": 50, "type": "number" }, "enableCorrectOptions": { "description": "Applicable for questionType:choice", "type": "boolean" }, "revealCorrectOptions": { "title": "Reveal correct isCorrect options property to participants.", "description": "Applicable for questionType:choice", "type": "boolean" }, "isLocked": { "title": "Is question locked for interaction?", "description": "If `true`, participants can not interact with the question.", "type": "boolean" }, "revealResults": { "title": "Reveal results to participants", "type": "boolean" }, "questions": { "title": "Poll questions", "description": "Poll questions for survey. Questions are part of the poll body—fetched, created,\nand patched atomically with the poll. No separate pagination; all questions returned in single response (max: 50).", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": { "order": { "title": "Sort order of the question", "type": "number" }, "isRequired": { "title": "Is this question required to answer?", "type": "boolean" }, "questionType": { "anyOf": [ { "type": "string", "enum": [ "none" ] }, { "type": "string", "enum": [ "choice" ] }, { "type": "string", "enum": [ "text" ] } ] }, "title": { "title": "Question title", "maxLength": 255, "type": "string" }, "description": { "title": "Question description", "maxLength": 1024, "type": "string" }, "hideNames": { "title": "Hide respondent names", "type": "boolean" }, "maxAnswers": { "title": "Explicit limit for number of answers per participant. 0 -> no explicit limit", "description": "Applicable for questionType:text", "minimum": 0, "maximum": 50, "type": "number" }, "options": { "title": "Question options", "description": "Applicable for questionType:choice", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": { "title": { "title": "Option title", "maxLength": 255, "type": "string" }, "isCorrect": { "title": "Marks correct answer", "description": "Meaningful only when `enableCorrectOptions` setting is `true`.", "type": "boolean" }, "order": { "title": "Sort order of the option", "type": "number" } } } }, "maxOptions": { "title": "Maximum number of answered options. 0 - no explicit limit, 1 -> 1, 2 -> 2, etc.", "description": "Applicable for questionType:choice", "minimum": 0, "maximum": 50, "type": "number" }, "enableCorrectOptions": { "description": "Applicable for questionType:choice", "type": "boolean" }, "revealCorrectOptions": { "title": "Reveal correct isCorrect options property to participants.", "description": "Applicable for questionType:choice", "type": "boolean" }, "isLocked": { "title": "Is question locked for interaction?", "description": "If `true`, participants can not interact with the question.", "type": "boolean" }, "revealResults": { "title": "Reveal results to participants", "type": "boolean" } } } }, "activePollResultId": { "title": "pollResult id", "description": "Poll carries `activePollResultId` and answers embed this `pollResultId`.\nAnswers are aggregated into results by the `pollResultId`.\nReset of question results is implemented as new `activePollResultId` assignment to the question,\nmaking new clean space for the result.", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "order": { "title": "Sort order of the poll", "description": "Overrides default sorting by `createdAtMs`.", "type": "number" } } }, { "description": "Answer is a participant's response to a poll.\nOwned by participants.\nFor simple polls, answer content is at root level. For surveys, content is in questionAnswers.\n", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "pollAnswer type", "description": "Answer is a participant's response to a poll.\nOwned by participants.\nFor simple polls, answer content is at root level. For surveys, content is in questionAnswers.\n", "type": "string", "enum": [ "pollAnswer" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "userId": { "title": "user id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollId": { "title": "poll id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollResultId": { "title": "pollResult id", "description": "Poll carries `activePollResultId` and answers embed this `pollResultId`.\nAnswers are aggregated into results by the `pollResultId`.\nReset of question results is implemented as new `activePollResultId` assignment to the question,\nmaking new clean space for the result.", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollAnswerId": { "title": "pollAnswer id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "isAnonymous": { "description": "If `true`, the answer was posted anonymously.", "type": "boolean" }, "text": { "description": "Applicable for questionType:text", "maxLength": 500, "type": "string" }, "options": { "title": "Options selected by the participant", "description": "Applicable for questionType:choice", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": {} } }, "questionAnswers": { "title": "Per-question answers", "description": "Answer content for each question in a survey.\nKeyed by questionId matching poll.questions keys. Not used for simple polls.", "maxProperties": 50, "type": "object", "additionalProperties": { "title": "Question answer", "description": "Answer content for a single question in a survey.", "type": "object", "properties": { "text": { "description": "Applicable for questionType:text", "maxLength": 500, "type": "string" }, "options": { "title": "Options selected by the participant", "description": "Applicable for questionType:choice", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": {} } } } } } } }, { "description": "Poll answer review is admin review of a participant answer. Owned by admin.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "pollAnswerReview type", "description": "Poll answer review is admin review of a participant answer. Owned by admin.", "type": "string", "enum": [ "pollAnswerReview" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollId": { "title": "poll id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollResultId": { "title": "pollResult id", "description": "Poll carries `activePollResultId` and answers embed this `pollResultId`.\nAnswers are aggregated into results by the `pollResultId`.\nReset of question results is implemented as new `activePollResultId` assignment to the question,\nmaking new clean space for the result.", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "pollAnswerId": { "title": "pollAnswer id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "approval": { "anyOf": [ { "description": "Neither approved, nor rejected.", "type": "string", "enum": [ "none" ] }, { "description": "Answer is rejected.", "type": "string", "enum": [ "rejected" ] } ] }, "questions": { "title": "Poll question review decisions", "description": "Applicable for survey polls. Maps questionId to review decision for that question.", "maxProperties": 50, "type": "object", "additionalProperties": { "type": "object", "properties": { "approval": { "anyOf": [ { "description": "Neither approved, nor rejected.", "type": "string", "enum": [ "none" ] }, { "description": "Answer is rejected.", "type": "string", "enum": [ "rejected" ] } ] } } } } } }, { "description": "Reference to an active poll question.", "additionalProperties": false, "type": "object", "properties": { "type": { "title": "activePoll type", "description": "Reference to an active poll question.", "type": "string", "enum": [ "activePoll" ] }, "sessionId": { "title": "session id", "description": "Webex meeting instance ID (`{meetingSeriesId}_I_{conferenceId}`).", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" }, "createdAtMs": { "description": "Timestamp when the resource was created.", "type": "number" }, "modifiedAtMs": { "description": "Timestamp when the resource was last modified.", "type": "number" }, "isDeleted": { "description": "If `true` the resource was deleted.", "type": "boolean" }, "activePollId": { "title": "poll id", "pattern": "[a-z0-9-]*", "minLength": 0, "maxLength": 128, "type": "string" } } } ] } }, "required": [ "createdAtMs", "sessionId", "sessionOrgId", "userId", "data" ] } }, "next": { "type": "string" } }, "required": [ "items" ] } } } }, "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." } } } }, "/videoMesh/clusters/availability": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClustersAvailability" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "clusterName": "San Jose", "availabilitySegments": [ { "segmentStartTime": "2021-09-15T15:53:00Z", "segmentEndTime": "2021-09-15T16:53:00Z", "availability": "Available", "noOfOnlineNodes": 1, "noOfOfflineNodes": 1, "totalNodes": 2 }, { "segmentStartTime": "2021-09-15T16:53:00Z", "segmentEndTime": "2021-09-15T17:53:00Z", "availability": "Unavailable", "noOfOnlineNodes": 0, "noOfOfflineNodes": 2, "totalNodes": 2 } ] } ], "from": "2021-09-15T15:53:00Z", "to": "2021-09-15T17:53:00Z" } ] } } } }, "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 Clusters Availability", "operationId": "List Clusters Availability", "description": "Returns the availability details for all Video Mesh clusters in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The unique ID for the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "schema": { "type": "string" } } ] } }, "/videoMesh/clusters/availability/{clusterId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClustersAvailability" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "clusterName": "San Jose", "availabilitySegments": [ { "segmentStartTime": "2021-09-15T15:53:00Z", "segmentEndTime": "2021-09-15T16:53:00Z", "availability": "Available", "noOfOnlineNodes": 1, "noOfOfflineNodes": 1, "totalNodes": 2 }, { "segmentStartTime": "2021-09-15T16:53:00Z", "segmentEndTime": "2021-09-15T17:53:00Z", "availability": "Unavailable", "noOfOnlineNodes": 0, "noOfOfflineNodes": 2, "totalNodes": 2 } ] } ], "from": "2021-09-15T15:53:00Z", "to": "2021-09-15T17:53:00Z" } ] } } } }, "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 Cluster Availability", "operationId": "Get Cluster Availability", "description": "Returns the availability details of a single Video Mesh cluster in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "path", "description": "The unique Video Mesh clusterID", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "schema": { "type": "string" } }, { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/nodes/availability": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NodesAvailability" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "clusterName": "San Jose", "hostNameOrIp": "xyz.abc.com", "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMWViNjVmZGYtOTY0My00MTdmLTk5NzQtYWQ3MmNhZTBlMTBmOmMyNTk0YmY2NDFmZTRkNTFiZDg3YThiMjYxYzg3NWY1", "availabilitySegments": [ { "noOfOnlineNodes": 1, "noOfOfflineNodes": 0, "segmentStartTime": "2021-09-15T15:53:00Z", "segmentEndTime": "2021-09-15T16:53:00Z", "availability": "Available", "unAvailabilityReason": "NA", "totalNodes": 1 }, { "noOfOnlineNodes": 0, "noOfOfflineNodes": 1, "segmentStartTime": "2021-09-15T16:53:00Z", "segmentEndTime": "2021-09-15T17:53:00Z", "availability": "Unavailable", "unAvailabilityReason": "Connectivity Issues to the Node", "totalNodes": 1 } ] } ], "from": "2021-09-15T15:53:00Z", "to": "2021-09-15T17:53:00Z" } ] } } } }, "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 Node Availability", "operationId": "List Node Availability", "description": "Returns the availability details of all nodes in a Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "clusterId", "in": "query", "description": "The unique Video Mesh cluster ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "schema": { "type": "string" } } ] } }, "/videoMesh/nodes/availability/{nodeId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SingleNodeAvailability" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "clusterName": "San Jose", "hostNameOrIp": "xyz.abc.com", "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMWViNjVmZGYtOTY0My00MTdmLTk5NzQtYWQ3MmNhZTBlMTBmOmMyNTk0YmY2NDFmZTRkNTFiZDg3YThiMjYxYzg3NWY1", "availabilitySegments": [ { "segmentStartTime": "2021-09-15T15:53:00Z", "segmentEndTime": "2021-09-15T16:53:00Z", "availability": "Available", "unAvailabilityReason": "NA" }, { "segmentStartTime": "2021-09-15T16:53:00Z", "segmentEndTime": "2021-09-15T17:53:00Z", "availability": "Unavailable", "unAvailabilityReason": "Connectivity Issues to the Node" } ] } ], "from": "2021-09-15T15:53:00Z", "to": "2021-09-15T17:53:00Z" } ] } } } }, "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 Node Availability", "operationId": "Get Node Availability", "description": "Returns the availability details of a single node in a Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "nodeId", "in": "path", "description": "The unique Video Mesh node ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "schema": { "type": "string" } }, { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/mediaHealthMonitorTest": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionfororganization" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "banglore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "clusterName": "sanjose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] } ] } ] } ] } } } }, "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 Media Health Monitoring Tool Test results V2", "operationId": "List Media Health Monitoring Tool Test results V2", "description": "Returns the test results of the Media Health Monitoring Tool tests for an organization.\n\n
\n\nChanges in V2:\n\n
\n\nOn-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique ID of the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/mediaHealthMonitorTest/clusters": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionforcluster" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "sanjose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] } ] } ] } ] } } } }, "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 Media Health Monitoring Tool Test results for clusters V2", "operationId": "Get Media Health Monitoring Tool Test results for clusters V2", "description": "Returns the test results of the Media Health Monitoring Tool tests for a single Video Mesh cluster.\n\n
\n\nChanges in V2:\n\n
\n\nOn-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "query", "description": "Unique ID of the Video Mesh cluster.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/mediaHealthMonitorTest/nodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionfornode" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "sanjose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support." } ] }, { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Success" }, { "testName": "Media Cascade", "testResult": "Success" }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] } ] } ] } ] } } } }, "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 Media Health Monitoring Tool Test results for node V2", "operationId": "Get Media Health Monitoring Tool Test results for node V2", "description": "Returns the test results of the Media Health Monitoring Tool tests for a single Video Mesh node.\n\n
\n\nChanges in V2:\n\n
\n\nOn-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "nodeId", "in": "query", "description": "Unique ID of the Video Mesh node.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/cloudOverflow": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OverflowtoCloud" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T04:22:03Z", "aggregationInterval": "10m", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "overflowDetails": [ { "overflowReason": "Capacity exceeded", "overflowCount": 25, "possibleRemediation": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters." }, { "overflowReason": "Connectivity issues", "overflowCount": 1, "possibleRemediation": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration." } ] }, { "timestamp": "2022-03-23T10:40:00Z", "overflowDetails": [ { "overflowReason": "Capacity exceeded", "overflowCount": 38, "possibleRemediation": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters." } ] } ] } ] } } } }, "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 Overflow to Cloud details", "operationId": "List Overflow to Cloud details", "description": "Returns details of overflows to the cloud in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The unique Video Mesh organization ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "schema": { "type": "string" } } ] } }, "/videoMesh/callRedirects": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RedirectforOrg" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "aggregationInterval": "10m", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "bangalore", "redirectDetails": [ { "redirectReason": "Capacity exceeded", "redirectCount": 10, "possibleRemediation": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters." }, { "redirectReason": "Connectivity issues", "redirectCount": 78, "possibleRemediation": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration." } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "sanjose", "redirectDetails": [ { "redirectReason": "Capacity exceeded", "redirectCount": 26, "possibleRemediation": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters." } ] } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "bangalore", "redirectDetails": [ { "redirectReason": "Node upgrading", "redirectCount": 4, "possibleRemediation": "Video Mesh Node is being upgraded. Please wait for upgrades to finish." } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "sanjose", "redirectDetails": [ { "redirectReason": "Connectivity issues", "redirectCount": 47, "possibleRemediation": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration." } ] } ] } ] } ] } } } }, "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 Cluster Redirect details", "operationId": "List Cluster Redirect details", "description": "Returns the redirect details of all Video Mesh clusters in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The unique Video Mesh organization ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "schema": { "type": "string" } } ] } }, "/videoMesh/clusters/callRedirects": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RedirectForCluster" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "aggregationInterval": "10m", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "bangalore", "redirectDetails": [ { "redirectReason": "Capacity exceeded", "redirectCount": 10, "possibleRemediation": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters." }, { "redirectReason": "Connectivity issues", "redirectCount": 78, "possibleRemediation": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration." } ] } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "bangalore", "redirectDetails": [ { "redirectReason": "Node upgrading", "redirectCount": 4, "possibleRemediation": "Video Mesh Node is being upgraded. Please wait for upgrades to finish." } ] } ] } ] } ] } } } }, "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 Cluster Redirect details", "operationId": "Get Cluster Redirect details", "description": "Returns details of cluster redirects for a single Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "clusterId", "in": "query", "description": "The unique Video Mesh Cluster ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "schema": { "type": "string" } } ] } }, "/videoMesh/utilization": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClustersUtilization" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "aggregationInterval": "10m", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "sanjose", "utilizationMetrics": { "peakCpu": 54.54, "avgCpu": 4.27, "activeCalls": 5, "activePrivateCalls": 1 } }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "clusterName": "bangalore", "utilizationMetrics": { "peakCpu": 62, "avgCpu": 3.64, "activeCalls": 0, "activePrivateCalls": 0 } } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "sanjose", "utilizationMetrics": { "peakCpu": 73.26, "avgCpu": 13.16, "activeCalls": 7, "activePrivateCalls": 2 } }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "clusterName": "bangalore", "utilizationMetrics": { "peakCpu": 69.75, "avgCpu": 57.89, "activeCalls": 142, "activePrivateCalls": 15 } } ] } ] } ] } } } }, "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 Clusters Utilization", "operationId": "List Clusters Utilization", "description": "Returns the utilization details of all Video Mesh clusters in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The unique ID for the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "schema": { "type": "string" } } ] } }, "/videoMesh/clusters/utilization": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UtilizationForCluster" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "aggregationInterval": "10m", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "clusterName": "bangalore", "utilizationMetrics": { "peakCpu": 62, "avgCpu": 3.64, "activeCalls": 0, "activePrivateCalls": 0 } } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "clusterName": "bangalore", "utilizationMetrics": { "peakCpu": 69.75, "avgCpu": 57.89, "activeCalls": 142, "activePrivateCalls": 15 } } ] } ] } ] } } } }, "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 Cluster Utilization details", "operationId": "Get Cluster Utilization details", "description": "Returns the utilization details for a single Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "from", "in": "query", "description": "The starting date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`.", "required": true, "example": "2021-09-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The ending date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2021-09-15T17:53:00Z", "schema": { "type": "string" } }, { "name": "clusterId", "in": "query", "description": "The unique Video Mesh Cluster ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/reachabilityTest": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReachabilityTestresultsfororganization" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "banglore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] } ] } ] } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "clusterName": "sanjose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": 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": "List Reachability Test results V2", "operationId": "List Reachability Test results V2", "description": "Returns the test results of the Reachability tests for an organization.\n\n
\n\nChanges in V2:\n\n
\n\n1. On-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.\n\n
\n\n2. You can now view the destination IP address of the destination cluster in the JSON response.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique ID of the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/reachabilityTest/clusters": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReachabilityTestresultsforcluster" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "banglore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": 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": "Get Reachability Test results for cluster V2", "operationId": "Get Reachability Test results for cluster V2", "description": "Returns the test results of the Reachability tests for a single Video Mesh cluster.\n\n
\n\nChanges in V2:\n\n
\n\n1. On-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.\n\n
\n\n2. You can now view the destination IP address of the destination cluster in the JSON response.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "query", "description": "Unique ID of the Video Mesh cluster.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/reachabilityTest/nodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReachabilityTestresultsfornode" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "banglore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "testResults": [ { "destinationCluster": "Amsterdam Cluster", "stunResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ] }, { "timestamp": "2022-03-15T16:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "udp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": true } ], "tcp": [ { "ipAddress": "1.1.1.1", "port": 51004, "reachable": false }, { "ipAddress": "1.1.1.1", "port": 5004, "reachable": 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": "Get Reachability Test results for node V2", "operationId": "Get Reachability Test results for node V2", "description": "Returns the test results of the Reachability tests for a single Video Mesh node.\n\n
\n\nChanges in V2:\n\n
\n\n1. On-demand test results can be obtained along with the periodic tests that are executed on Video Mesh nodes.\n\n
\n\n2. You can now view the destination IP address of the destination cluster in the JSON response.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "nodeId", "in": "query", "description": "Unique ID of the Video Mesh node.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/clusters": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClusterDetails" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "clusterName": "Bangalore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo0NjdiNGIxZC1jZWI2LTQwN2EtYWZmOC1mMjIxZmFiNzhjNzI", "hostNameOrIp": "xyz.abc.com", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "IN", "city": "Bangalore", "timeZone": "Asia/Kolkata" } }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "hostNameOrIp": "201.21.201.21", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "IN", "city": "Bangalore", "timeZone": "Asia/Kolkata" } } ], "releaseChannel": "alpha", "upgradeSchedule": { "scheduleDays": [ "sunday" ], "scheduleTime": "02:00", "scheduleTimeZone": "Asia/Kolkata", "upgradePending": true, "nextUpgradeTime": "2020-03-25T20:30:00Z" } }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ", "clusterName": "San Jose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo0NjdiNGIxZC1jZWI2LTQwN2EtYWZmOC1mMjIxZmFiNzhjNzI", "hostNameOrIp": "abc.company.com", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "US", "city": "San Jose", "timeZone": "America/Los_Angeles" } }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "hostNameOrIp": "xyz.abc.com", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "US", "city": "San Jose", "timeZone": "America/Los_Angeles" } } ], "releaseChannel": "alpha", "upgradeSchedule": { "scheduleDays": [ "sunday" ], "scheduleTime": "02:00", "scheduleTimeZone": "America/Los_Angeles", "upgradePending": true, "nextUpgradeTime": "2020-03-26T09:00:00Z" } } ] } ] } } } }, "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 Cluster Details", "operationId": "List Cluster Details", "description": "Returns the cluster details of all Video Mesh clusters in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "orgId", "in": "query", "description": "The unique ID for the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "schema": { "type": "string" } } ] } }, "/videoMesh/clusters/{clusterId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SpecificClusterDetails" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "items": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "clusterName": "Bangalore", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo0NjdiNGIxZC1jZWI2LTQwN2EtYWZmOC1mMjIxZmFiNzhjNzI", "hostNameOrIp": "xyz.abc.com", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "IN", "city": "Bangalore", "timeZone": "Asia/Kolkata" } }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "hostNameOrIp": "201.21.201.21", "deploymentType": "Video Mesh Node Lite", "location": { "countryCode": "IN", "city": "Bangalore", "timeZone": "Asia/Kolkata" } } ], "releaseChannel": "alpha", "upgradeSchedule": { "scheduleDays": [ "sunday" ], "scheduleTime": "02:00", "scheduleTimeZone": "Asia/Kolkata", "upgradePending": true, "nextUpgradeTime": "2020-03-25T20:30:00Z" } } ] } ] } } } }, "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 Cluster Details", "operationId": "Get Cluster Details", "description": "Returns the cluster details for a single Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "path", "description": "The unique Video Mesh Cluster ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "schema": { "type": "string" } } ] } }, "/videoMesh/triggerTest/clusters/{clusterId}": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TriggeredTestStatus1" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "commandId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "status": "Dispatched" }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGU5OTc4Zjk5MDJl", "status": "Dispatched" } ] } } } }, "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": "Trigger on-demand test for cluster", "operationId": "Trigger on-demand test for cluster", "description": "Triggers an on-demand test for a cluster.\nThe test is run on a maximum of 10 nodes present in the cluster, chosen at random, or based on input from the user.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "path", "description": "Unique ID of the Video Mesh cluster.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "type": "MediaHealthMonitorTest", "nodes": [ "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGU5OTc4Zjk5MDJk", "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRhYmNhZGVmZ2U5OTc4Zjk5MDJk" ] }, "schema": { "$ref": "#/components/schemas/TriggerOn-DemandBodyCluster" } } } } } }, "/videoMesh/triggerTest/nodes/{nodeId}": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TriggeredTestStatus2" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "commandId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "status": "Dispatched" } ] } } } }, "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": "Trigger on-demand test for node", "operationId": "Trigger on-demand test for node", "description": "Triggers an on-demand test for a node.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "nodeId", "in": "path", "description": "Unique ID of the Video Mesh node.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "type": "MediaHealthMonitorTest" }, "schema": { "$ref": "#/components/schemas/TriggerOnDemandBody" } } } } } }, "/videoMesh/testStatus": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TriggeredTestStatus1" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "commandId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "status": "Dispatched" }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGU5OTc4Zjk5MDJl", "status": "Dispatched" } ] } } } }, "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 Triggered test status", "operationId": "Get Triggered test status", "description": "Returns the status of the test triggered using the Trigger on-demand test API.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "commandId", "in": "query", "description": "The unique command ID generated from Trigger on-demand test API.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TriggeredTestResult" }, "example": { "type": "MediaHealthMonitorTest", "commandId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "results": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "test_manual", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "mhmTestResults": [ { "timestamp": "2022-03-15T15:53:00Z", "id": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "testResults": [ { "testName": "Media Signalling", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "Media Cascade", "testResult": "Failed", "failureReason": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." }, { "testName": "SIP Signalling", "testResult": "Success" } ] } ] } ] } ] } ] } } } }, "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 Triggered test results", "operationId": "Get Triggered test results", "description": "Returns the results of the test triggered using the command ID.
\nNOTE: The response format depends on the type of test triggered and it is the same as that of [NetworkTest API](/docs/api/v1/video-mesh/list-network-test-results), [MediaHealthMonitorTest API](/docs/api/v1/video-mesh/list-media-health-monitoring-tool-test-results-v2), and [ReachabilityTest API](/docs/api/v1/video-mesh/list-reachability-test-results-v2) respectively.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "commandId", "in": "query", "description": "The unique command ID generated from Trigger on-demand test API.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/networkTest": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectivityTestResultsObject" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "sanjose", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "testResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "result": [ { "type": "DNSResolutionTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." ], "possibleRemediation": [ "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "WebSocketConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Success" } ] }, { "type": "HTTPConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." ], "possibleRemediation": [ "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "BandwidthTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." ], "possibleRemediation": [ "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] } ] } ] }, { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "xyz.company.com", "testResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "result": [ { "type": "DNSResolutionTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." ], "possibleRemediation": [ "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "WebSocketConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Success" } ] }, { "type": "HTTPConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." ], "possibleRemediation": [ "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "BandwidthTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." ], "possibleRemediation": [ "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] } ] } ] } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "clusterName": "shangai", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "def.company.com", "testResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "result": [ { "type": "DNSResolutionTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." ], "possibleRemediation": [ "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "WebSocketConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Success" } ] }, { "type": "HTTPConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." ], "possibleRemediation": [ "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "BandwidthTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." ], "possibleRemediation": [ "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] } ] } ] } ] } ] } ] } } } }, "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 Network Test results", "operationId": "List Network Test results", "description": "Returns the test results of the Network tests triggered for an organization. The tests listed below are run as a part of the Network Test execution on the node.\n\nBandwidth Test - Tests the bandwidth parameters of the Video Mesh node's network. The test is run between the Video Mesh node and cloud services.
\nDNS Resolution Test - Tests the resolution of IP addresses related to cloud services, against the DNS servers configured on the Video Mesh node's network.
\nHTTPS Connectivity Test - Tests whether the Video Mesh node is able to connect to cloud services via HTTPS protocol.
\nWebsocket Connectivity Test - Tests whether the Video Mesh node is able to connect to Webex cloud services via Websocket.
", "tags": [ "Video Mesh" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique ID of the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/networkTest/clusters": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectivityTestResultsClustersObject" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "clusterName": "shangai", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "def.company.com", "testResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "result": [ { "type": "DNSResolutionTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." ], "possibleRemediation": [ "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "WebSocketConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Success" } ] }, { "type": "HTTPConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." ], "possibleRemediation": [ "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "BandwidthTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." ], "possibleRemediation": [ "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] } ] } ] } ] } ] } ] } } } }, "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 Network Test results for cluster", "operationId": "Get Network Test results for cluster", "description": "Returns the test results of the Network tests triggered for a single Video Mesh cluster. The tests listed below are run as a part of the Network Test execution on the node.\n\nBandwidth Test - Tests the bandwidth parameters of the Video Mesh node's network. The test is run between the Video Mesh node and cloud services.
\nDNS Resolution Test - Tests the resolution of IP addresses related to cloud services, against the DNS servers configured on the Video Mesh node's network.
\nHTTPS Connectivity Test - Tests whether the Video Mesh node is able to connect to cloud services via HTTPS protocol.
\nWebsocket Connectivity Test - Tests whether the Video Mesh node is able to connect to Webex cloud services via Websocket.
", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "query", "description": "Unique ID of the Video Mesh cluster.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/testResults/networkTest/nodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectivityTestResultsNodesObject" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "from": "2023-01-15T15:53:00Z", "to": "2023-01-20T15:53:00Z", "items": [ { "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "clusterName": "shangai", "nodes": [ { "nodeId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "hostNameOrIP": "abc.company.com", "testResults": [ { "timestamp": "2022-03-15T15:53:00Z", "triggerType": "OnDemand", "id": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "result": [ { "type": "DNSResolutionTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." ], "possibleRemediation": [ "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "WebSocketConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Success" } ] }, { "type": "HTTPConnectivityTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." ], "possibleRemediation": [ "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] }, { "type": "BandwidthTest", "results": [ { "serviceType": "WebexCloud", "testResult": "Failed", "failureDetails": { "possibleFailureReason": [ "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." ], "possibleRemediation": [ "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." ] } }, { "serviceType": "ThirdPartyCloud", "testResult": "Success" } ] } ] } ] } ] } ] } ] } } } }, "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 Network Test results for node", "operationId": "Get Network Test results for node", "description": "Returns the test results of the Network tests triggered for a single Video Mesh node. The tests listed below are run as a part of the Network Test execution on the node.\n\nBandwidth Test - Tests the bandwidth parameters of the Video Mesh node's network. The test is run between the Video Mesh node and cloud services.
\nDNS Resolution Test - Tests the resolution of IP addresses related to cloud services, against the DNS servers configured on the Video Mesh node's network.
\nHTTPS Connectivity Test - Tests whether the Video Mesh node is able to connect to cloud services via HTTPS protocol.
\nWebsocket Connectivity Test - Tests whether the Video Mesh node is able to connect to Webex cloud services via Websocket.
", "tags": [ "Video Mesh" ], "parameters": [ { "name": "nodeId", "in": "query", "description": "Unique ID of the Video Mesh node.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "schema": { "type": "string" } }, { "name": "triggerType", "in": "query", "description": "Trigger type.", "required": true, "example": "OnDemand", "schema": { "type": "string", "enum": [ "OnDemand", "Periodic", "All" ] } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } } ] } }, "/videoMesh/clientTypeDistribution": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClienttypedistributionforOrg" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "aggregationInterval": "10m", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "Bangalore", "clientTypeDistributionDetails": [ { "deviceType": "sipEndpoint", "description": "SIP Devices", "count": 10 }, { "deviceType": "webexAppVdi", "description": "Webex App VDI", "count": 78 } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "San Jose", "clientTypeDistributionDetails": [ { "deviceType": "webexForDesktop", "description": "Webex App Desktop", "count": 26 } ] } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "Bangalore", "clientTypeDistributionDetails": [ { "deviceType": "webexForMobile", "description": "Webex App Mobile", "count": 4 } ] }, { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "clusterName": "San Jose", "clientTypeDistributionDetails": [ { "deviceType": "webexDevices", "description": "Webex Devices", "count": 47 } ] } ] } ] } ] } } } }, "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 Cluster Client Type Distribution details", "operationId": "List Cluster Client Type Distribution details", "description": "Returns the client type distribution details for all Video Mesh clusters in an organization.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique ID of the organization.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "schema": { "type": "string" } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } }, { "name": "deviceType", "in": "query", "description": "Device type(s).\n\n- Possible values:\n `webexDevices` `webexAppVdi` `webexForMobile` `sipEndpoint` `webexForDesktop`", "required": true, "example": "webexDevices,webexAppVdi", "schema": { "type": "string" } } ] } }, "/videoMesh/clientTypeDistribution/clusters": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClientTypeDistributionForCluster" }, "example": { "items": [ { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "from": "2022-03-23T10:22:03Z", "to": "2022-03-24T10:22:03Z", "aggregationInterval": "10m", "items": [ { "timestamp": "2022-03-23T10:30:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "Bangalore", "clientTypeDistributionDetails": [ { "deviceType": "sipEndpoint", "description": "SIP Devices", "count": 10 }, { "deviceType": "webexAppVdi", "description": "Webex App VDI", "count": 78 } ] } ] }, { "timestamp": "2022-03-23T10:40:00Z", "clusters": [ { "clusterId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "clusterName": "Bangalore", "clientTypeDistributionDetails": [ { "deviceType": "webexForMobile", "description": "Webex App Mobile", "count": 4 } ] } ] } ] } ] } } } }, "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 Cluster Client Type Distribution details", "operationId": "Get Cluster Client Type Distribution details", "description": "Returns the client type distribution details for a single Video Mesh cluster.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "clusterId", "in": "query", "description": "Unique ID of the Video Mesh cluster.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "schema": { "type": "string" } }, { "name": "from", "in": "query", "description": "The start date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. The `from` parameter cannot have date and time values that exceed `to`.", "required": true, "example": "2023-01-15T15:53:00Z", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "The end date and time of the requested data in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format.", "required": true, "example": "2023-01-20T15:53:00Z", "schema": { "type": "string" } }, { "name": "deviceType", "in": "query", "description": "Device type(s).\n\n- Possible values:\n `webexDevices` `webexAppVdi` `webexForMobile` `sipEndpoint` `webexForDesktop`", "required": true, "example": "webexDevices,webexAppVdi", "schema": { "type": "string" } } ] } }, "/videoMesh/eventThresholds": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListEventThresholdResponse" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "eventThresholds": [ { "eventName": "clusterCallsRedirected", "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "eventScope": "CLUSTER", "entityId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "thresholdConfig": { "minThreshold": 10, "defaultMinThreshold": 10 } }, { "eventName": "orgCallsOverflowed", "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg", "eventScope": "ORG", "entityId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "thresholdConfig": { "minThreshold": 10, "defaultMinThreshold": 10 } } ] } } } }, "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 Event Threshold Configuration", "operationId": "List Event Threshold Configuration", "description": "Returns the event threshold configurations for `orgId` or `clusterId`, with optional filters `eventName` and `eventScope`.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "eventName", "in": "query", "description": "Event name to fetch threshold details.", "example": "clusterCallsRedirected", "schema": { "type": "string", "enum": [ "clusterCallsRedirected", "orgCallsOverflowed" ] } }, { "name": "clusterId", "in": "query", "description": "Unique ID of the Video Mesh Cluster.", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique ID of the Organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "schema": { "type": "string" } }, { "name": "eventScope", "in": "query", "description": "Scope name to filter events.", "example": "CLUSTER", "schema": { "type": "string", "enum": [ "CLUSTER", "ORG" ] } } ] }, "patch": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkUpdateEventThresholdResponse" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "eventThresholds": [ { "eventName": "clusterCallsRedirected", "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "eventScope": "CLUSTER", "entityId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "thresholdConfig": { "minThreshold": 40, "defaultMinThreshold": 10 } } ], "failedEventThresholdIds": [ "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg" ] } } } }, "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": "Update Event Threshold Configuration", "operationId": "Update Event Threshold Configuration", "description": "Updates an existing event threshold configuration for given Event Threshold IDs.", "tags": [ "Video Mesh" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": [ { "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "thresholdConfig": { "minThreshold": 40 } }, { "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg", "thresholdConfig": { "minThreshold": 60 } } ], "schema": { "type": "object", "required": [ "eventThresholds" ], "properties": { "eventThresholds": { "type": "array", "items": { "type": "object", "required": [ "eventThresholdId", "thresholdConfig" ], "properties": { "eventThresholdId": { "type": "string" }, "thresholdConfig": { "type": "object", "required": [ "minThreshold" ], "properties": { "minThreshold": { "type": "number" } } } } } } } } } } } } }, "/videoMesh/eventThresholds/{eventThresholdId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEventThresholdResponse" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "eventThresholds": [ { "eventName": "clusterCallsRedirected", "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "eventScope": "CLUSTER", "entityId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "thresholdConfig": { "minThreshold": 10, "defaultMinThreshold": 10 } } ] } } } }, "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 Event Threshold Configuration", "operationId": "Get Event Threshold Configuration", "description": "Returns the event threshold configurations for `eventThresholdId`.", "tags": [ "Video Mesh" ], "parameters": [ { "name": "eventThresholdId", "in": "path", "description": "Unique ID of the event threshold configuration.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "schema": { "type": "string" } } ] } }, "/videoMesh/eventThresholds/reset": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResetEventThresholdResponse" }, "example": { "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "eventThresholds": [ { "eventName": "clusterCallsRedirected", "eventThresholdId": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "eventScope": "CLUSTER", "entityId": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "thresholdConfig": { "minThreshold": 10, "defaultMinThreshold": 10 } } ], "failedEventThresholdIds": [ "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg" ] } } } }, "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": "Reset Event Threshold Configuration", "operationId": "Reset Event Threshold Configuration", "description": "Resets the existing event threshold configuration for given Event Threshold IDs to default value. To stop receiving webhook events, use the [Webhooks API](docs/api/v1/webhooks) to delete the webhook in question.", "tags": [ "Video Mesh" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": [ "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg" ], "schema": { "type": "object", "required": [ "eventThresholdIds" ], "properties": { "eventThresholdIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ" } } } } } } } } }, "/webhooks": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WebhookCollectionResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "resource": "messages", "event": "created", "filter": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "status": "active", "created": "2015-10-18T14:26:16+00:00", "ownedBy": "org" } ] } } } }, "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 Webhooks", "operationId": "List Webhooks", "description": "List all of your webhooks.", "tags": [ "Webhooks" ], "parameters": [ { "name": "max", "in": "query", "description": "Limit the maximum number of webhooks in the response.", "example": "100", "schema": { "type": "number", "default": 100 } }, { "name": "ownedBy", "in": "query", "description": "Limit the result list to org wide webhooks. Only allowed value is `org`.", "example": "org", "schema": { "type": "string" } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Webhook" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "resource": "messages", "event": "created", "filter": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "status": "active", "created": "2015-10-18T14:26:16+00:00", "ownedBy": "org" } } } }, "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": "Create a Webhook", "operationId": "Create a Webhook", "description": "Creates a webhook.\n\nTo learn more about how to create and use webhooks, see The [Webhooks Guide](/docs/api/guides/webhooks).", "tags": [ "Webhooks" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "resource": "messages", "event": "created", "filter": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "ownedBy": "org" }, "schema": { "type": "object", "required": [ "name", "targetUrl", "resource", "event" ], "properties": { "name": { "type": "string", "example": "My Awesome Webhook", "description": "A user-friendly name for the webhook." }, "targetUrl": { "type": "string", "example": "https://example.com/mywebhook", "description": "URL that receives POST requests for each event." }, "resource": { "type": "string", "enum": [ "attachmentActions", "dataSources", "memberships", "messages", "rooms", "meetings", "recordings", "convergedRecordings", "meetingParticipants", "meetingTranscripts", "telephony_calls", "telephony_conference", "telephony_mwi", "uc_counters", "serviceApp", "adminBatchJobs" ], "description": "Resource type for the webhook. Creating a webhook requires 'read' scope on the resource the webhook is for.\n * `attachmentActions` - [Attachment Actions](/docs/api/v1/attachment-actions) resource.\n * `dataSources` - [data sources](/docs/api/v1/data-sources) resource.\n * `memberships` - [Memberships](/docs/api/v1/memberships) resource.\n * `messages` - [Messages](/docs/api/v1/messages) resource.\n * `rooms` - [Rooms](/docs/api/v1/rooms) resource.\n * `meetings` - [Meetings](/docs/api/v1/meetings) resource.\n * `recordings` - [Recordings](/docs/api/v1/recordings) resource.\n * `convergedRecordings` - [CallRecordings](/docs/api/v1/converged-recordings) resource.\n * `meetingParticipants` - [Meeting Participants](/docs/api/v1/meeting-participants) resource.\n * `meetingTranscripts` - [Meeting Transcripts](/docs/api/v1/meeting-transcripts) resource.\n * `telephony_calls` - [Webex Calling](/docs/webex-calling-overview) call resources.\n * `telephony_conference` - [Webex Calling](/docs/webex-calling-overview) conference controls resource.\n * `telephony_mwi` - [Webex Calling](/docs/webex-calling-overview) voicemail message waiting indicator resource.\n * `uc_counters` - Performance counter for a dedicated instance.\n * `serviceApp` - Service App authorization notification.\n * `adminBatchJobs` - Admin Batch Jobs notification.\n" }, "event": { "type": "string", "enum": [ "created", "updated", "deleted", "started", "ended", "joined", "left", "migrated", "authorized", "deauthorized", "statusChanged" ], "description": "Event type for the webhook.\n * `created` - An object is created.\n * `updated` - An object is updated.\n * `deleted` - An object is deleted.\n * `started` - A meeting is started.\n * `ended` - A meeting is ended.\n * `joined` - A participant joined.\n * `left` - A participant left.\n * `migrated` - A room was migrated to a different geography. The roomId has changed.\n * `authorized` - A Service App was authorized.\n * `deauthorized` - A Service App was deauthorized.\n * `statusChanged` - Status of admin batch job was changed.\n" }, "filter": { "type": "string", "example": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "description": "Filter that defines the webhook scope. See [Filtering Webhooks](/docs/api/guides/webhooks#filtering-webhooks) for more information. Please note that if a filter of `hostEmail`, `hostUserId`, `ownerEmail` or `ownerId` is specified, `ownedBy` must be set to `org`." }, "secret": { "type": "string", "example": "86dacc007724d8ea666f88fc77d918dad9537a15", "description": "Secret used to generate payload signature." }, "ownedBy": { "type": "string", "example": "org", "description": "Specify `org` when creating an org/admin level webhook. Supported for `meetings`, `recordings`, `convergedRecordings`,`meetingParticipants`, `meetingTranscripts`, `videoMeshAlerts`, `controlHubAlerts`, `rooms`, `messaging` and `adminBatchJobs` (for Compliance Officers and messages with file attachments only - see [inline file DLP](/docs/api/guides/webex-real-time-file-dlp-basics)) resources." } } } } } } } }, "/webhooks/{webhookId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Webhook" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "resource": "messages", "event": "created", "filter": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "status": "active", "created": "2015-10-18T14:26:16+00:00", "ownedBy": "org" } } } }, "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 Webhook Details", "operationId": "Get Webhook Details", "description": "Shows details for a webhook, by ID.\n\nSpecify the webhook ID in the `webhookId` parameter in the URI.", "tags": [ "Webhooks" ], "parameters": [ { "name": "webhookId", "in": "path", "description": "The unique identifier for the webhook.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Webhook" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "resource": "messages", "event": "created", "filter": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "status": "active", "created": "2015-10-18T14:26:16+00:00", "ownedBy": "org" } } } }, "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": "Update a Webhook", "operationId": "Update a Webhook", "description": "Updates a webhook, by ID. You cannot use this call to deactivate a webhook, only to activate a webhook that was auto deactivated.\nThe fields that can be updated are `name`, `targetURL`, `secret` and `status`. All other fields, if supplied, are ignored.\n\nSpecify the webhook ID in the `webhookId` parameter in the URI.", "tags": [ "Webhooks" ], "parameters": [ { "name": "webhookId", "in": "path", "description": "The unique identifier for the webhook.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "My Awesome Webhook", "targetUrl": "https://example.com/mywebhook", "secret": "86dacc007724d8ea666f88fc77d918dad9537a15", "ownedBy": "org", "status": "active" }, "schema": { "type": "object", "required": [ "name", "targetUrl" ], "properties": { "name": { "type": "string", "example": "My Awesome Webhook", "description": "A user-friendly name for the webhook." }, "targetUrl": { "type": "string", "example": "https://example.com/mywebhook", "description": "URL that receives POST requests for each event." }, "secret": { "type": "string", "example": "86dacc007724d8ea666f88fc77d918dad9537a15", "description": "Secret used to generate payload signature." }, "ownedBy": { "type": "string", "example": "org", "description": "Specify `org` when creating an org/admin level webhook. Supported for `meetings`, `recordings`, `convergedRecordings`, `meetingParticipants`, `meetingTranscripts`, `videoMeshAlerts`, `controlHubAlerts`, `rooms`, `messaging` and `adminBatchJobs` (for Compliance Officers and messages with file attachments only - see [inline file DLP](/docs/api/guides/webex-real-time-file-dlp-basics)) resources." }, "status": { "type": "string", "enum": [ "active" ], "description": "Status of the webhook. Use \"active\" to reactivate a disabled webhook." } } } } } } }, "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: 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": "Delete a Webhook", "operationId": "Delete a Webhook", "description": "Deletes a webhook, by ID.\n\nSpecify the webhook ID in the `webhookId` parameter in the URI.", "tags": [ "Webhooks" ], "parameters": [ { "name": "webhookId", "in": "path", "description": "The unique identifier for the webhook.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "schema": { "type": "string" } } ] } } }, "components": { "schemas": { "AcdObject": { "type": "object", "required": [ "enabled", "displayCallqueueAgentSoftkeys" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Indicates whether the ACD object is enabled." }, "displayCallqueueAgentSoftkeys": { "$ref": "#/components/schemas/DisplayCallqueueAgentSoftkeysObject", "description": "Indicates the call queue agent soft key value of an ACD object." } } }, "AcdObjectDevice": { "type": "object", "required": [ "enabled", "displayCallqueueAgentSoftkeys" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Indicates whether the ACD object is enabled." }, "displayCallqueueAgentSoftkeys": { "$ref": "#/components/schemas/DisplayCallqueueAgentSoftkeysObject", "description": "Indicates the call queue agent soft key value of an ACD object." } } }, "ActivationStates": { "type": "string", "enum": [ "activating", "activated", "deactivated" ], "description": " * `activating` - Device is activating using an activation code.\n * `activated` - Device has been activated using an activation code.\n * `deactivated` - Device has not been activated using an activation code.\n" }, "AdminBatchStartJobObjectLocationCustomizations": { "type": "object", "properties": { "locationId": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA'", "description": "Location within an organization where changes of device setings will be applied to all the devices within it." }, "locationCustomizationsEnabled": { "type": "boolean", "description": "Indicates if all the devices within this location will be customized with new requested customizations(if set to `true`) or will be overridden with the one at organization level (if set to `false` or any other value). This field has no effect when the job is being triggered at organization level." }, "customizations": { "$ref": "#/components/schemas/CustomizationObject", "description": "Indicates the settings for ATA devices, DECT devices and MPP devices." } } }, "AtaDtmfMethodObject": { "type": "string", "enum": [ "INBAND", "AVT", "AUTO" ], "description": " * `INBAND` - Sends DTMF by using the audio path.\n * `AVT` - Audio video transport. Sends DTMF as AVT events.\n * `AUTO` - Uses InBand or AVT based on the outcome of codec negotiation.\n" }, "AtaDtmfModeObject": { "type": "string", "enum": [ "STRICT", "NORMAL" ], "description": " * `STRICT` - A DTMF digit requires an extra hold time after detection and the DTMF level threshold is raised to -20 dBm.\n * `NORMAL` - Normal threshold mode.\n" }, "AudioCodecPriorityObject": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "$ref": "#/components/schemas/SelectionType", "description": "Indicates the selection of an Audio Codec Priority Object." }, "primary": { "type": "string", "example": "G711a", "description": "Indicates the primary Audio Codec." }, "secondary": { "type": "string", "example": "G711u", "description": "Indicates the secondary Audio Codec." }, "tertiary": { "type": "string", "example": "G729a", "description": "Indicates the tertiary Audio Codec." } } }, "AudioCodecPriorityObjectDevice": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "$ref": "#/components/schemas/SelectionType", "description": "Indicates the selection of an Audio Codec Priority Object." }, "primary": { "type": "string", "example": "G711a", "description": "Indicates the primary Audio Codec." }, "secondary": { "type": "string", "example": "G711u", "description": "Indicates the secondary Audio Codec." }, "tertiary": { "type": "string", "example": "G729a", "description": "Indicates the tertiary Audio Codec." } } }, "AuthenticationMethodObject": { "type": "string", "enum": [ "NONE", "EAP_FAST", "PEAP_GTC", "PEAP_MSCHAPV2", "PSK", "WEP" ], "description": " * `NONE` - No authentication.\n * `EAP_FAST` - Extensible Authentication Protocol-Flexible Authentication via Secure Tunneling. Requires username and password authentication.\n * `PEAP_GTC` - Protected Extensible Authentication Protocol - Generic Token Card. Requires username and password authentication.\n * `PEAP_MSCHAPV2` - Protected Extensible Authentication Protocol - Microsoft Challenge Handshake Authentication Protocol version 2. Requires username and password authentication.\n * `PSK` - Pre-Shared Key. Requires shared passphrase for authentication.\n * `WEP` - Wired Equivalent Privacy. Requires encryption key for authentication.\n" }, "BackgroundImage": { "type": "string", "enum": [ "NONE", "DARK_BLUE", "CISCO_DARK_BLUE", "WEBEX_DARK_BLUE", "CUSTOM_BACKGROUND" ], "description": " * `NONE` - Indicates that there will be no background image set for the devices.\n * `DARK_BLUE` - Indicates that dark blue background image will be set for the devices.\n * `CISCO_DARK_BLUE` - Indicates that Cisco themed dark blue background image will be set for the devices.\n * `WEBEX_DARK_BLUE` - Indicates that Cisco Webex dark blue background image will be set for the devices.\n * `CUSTOM_BACKGROUND` - Indicates that a custom background image will be set for the devices.\n * `customUrl` - When this option is selected, a field 'Custom Background URL' needs to be added with the image url. URLs provided must link directly to an image file and be in HTTP, HTTPS, or filepath format.\n" }, "BackgroundImageColor": { "type": "string", "enum": [ "CYAN_DARK", "PURPLE_DARK", "BLUE_DARK", "VIOLET_DARK", "BLUE_LIGHT", "VIOLET_LIGHT" ], "description": " * `CYAN_DARK` - Indicates that dark cyan background image will be set for the devices.\n * `PURPLE_DARK` - Indicates the dark purple background image will be set for the devices.\n * `BLUE_DARK` - Indicates the dark blue background image will be set for the devices.\n * `VIOLET_DARK` - Indicates the dark violet background image will be set for the devices.\n * `BLUE_LIGHT` - Indicates the light blue background image will be set for the devices.\n * `VIOLET_LIGHT` - Indicates the light violet background image will be set for the devices.\n" }, "BacklightTimer68XX": { "type": "string", "enum": [ "ALWAYS_ON", "TEN_SEC", "TWENTY_SEC", "THIRTY_SEC", "OFF" ], "description": " * `ALWAYS_ON` - Keep the phone's backlight always on.\n * `TEN_SEC` - Set the phone's backlight to be on for ten seconds.\n * `TWENTY_SEC` - Set the phone's backlight to be on for twenty seconds.\n * `THIRTY_SEC` - Set the phone's backlight to be on for thirty seconds.\n * `OFF` - Keep the phone's backlight off.\n" }, "BacklightTimer68XXDevice": { "type": "string", "enum": [ "ALWAYS_ON", "TEN_SEC", "TWENTY_SEC", "THIRTY_SEC", "OFF" ], "description": " * `ALWAYS_ON` - Keep the phone's backlight always on.\n * `TEN_SEC` - Set the phone's backlight to be on for ten seconds.\n * `TWENTY_SEC` - Set the phone's backlight to be on for twenty seconds.\n * `THIRTY_SEC` - Set the phone's backlight to be on for thirty seconds.\n * `OFF` - Keep the phone's backlight off.\n" }, "BacklightTimerObject": { "type": "string", "enum": [ "ONE_MIN", "FIVE_MIN", "THIRTY_MIN", "ALWAYS_ON" ], "description": " * `ONE_MIN` - Set the phone's backlight to be on for one minute.\n * `FIVE_MIN` - Set the phone's backlight to be on for five minutes.\n * `THIRTY_MIN` - Set the phone's backlight to be on for thirty minutes.\n * `ALWAYS_ON` - Keep the phone's backlight always on.\n" }, "BacklightTimerObjectDevice": { "type": "string", "enum": [ "ONE_MIN", "FIVE_MIN", "THIRTY_MIN", "ALWAYS_ON" ], "description": " * `ONE_MIN` - Set the phone's backlight to be on for one minute.\n * `FIVE_MIN` - Set the phone's backlight to be on for five minutes.\n * `THIRTY_MIN` - Set the phone's backlight to be on for thirty minutes.\n * `ALWAYS_ON` - Keep the phone's backlight always on.\n" }, "BluetoothObject": { "type": "object", "required": [ "enabled", "mode" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable Bluetooth." }, "mode": { "type": "string", "enum": [ "PHONE" ], "description": "Select a Bluetooth mode." }, "PHONE": { "type": "string" }, "HANDS_FREE": { "type": "string" }, "BOTH": { "type": "string" } } }, "BluetoothObjectDevice": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable Bluetooth." }, "mode": { "type": "string", "enum": [ "PHONE", "HANDS_FREE", "BOTH" ], "description": "Select a Bluetooth mode." } } }, "CallForwardExpandedSoftKey": { "type": "string", "enum": [ "ONLY_THE_CALL_FORWARD_ALL", "ALL_CALL_FORWARDS" ], "description": " * `ONLY_THE_CALL_FORWARD_ALL` - Set the default call forward expanded soft key behavior to single option.\n * `ALL_CALL_FORWARDS` - Set the default call forward expanded soft key behavior to multiple menu option.\n" }, "CallHistoryMethod": { "type": "string", "enum": [ "WEBEX_UNIFIED_CALL_HISTORY", "LOCAL_CALL_HISTORY" ], "description": " * `WEBEX_UNIFIED_CALL_HISTORY` - Set call history to use the unified call history from all of the end user's devices.\n * `LOCAL_CALL_HISTORY` - Set call history to use local device information only.\n" }, "CommSecurityType": { "type": "string", "enum": [ "NONE", "SSL", "STARTTLS" ], "description": " * `NONE` - Sets the LDAP server security protocol to None.\n * `SSL` - Sets the LDAP server security protocol to SSL.\n * `STARTTLS` - Sets the LDAP server security protocol to STARTTLS.\n" }, "Compression": { "type": "string", "enum": [ "ON", "OFF" ], "description": " * `ON` - Minimize data use during compression.\n * `OFF` - Ignore data use during compression.\n" }, "CountObject": { "type": "object", "required": [ "totalNumbers", "numbersDeleted", "numbersMoved", "numbersFailed" ], "properties": { "totalNumbers": { "type": "number", "description": "Indicates the total number of phone numbers requested to be moved." }, "numbersDeleted": { "type": "number", "description": "Indicates the total number of phone numbers successfully deleted." }, "numbersMoved": { "type": "number", "description": "Indicates the total number of phone numbers successfully moved." }, "numbersFailed": { "type": "number", "description": "Indicates the total number of phone numbers failed." } } }, "CustomizationDeviceLevelObject": { "type": "object", "properties": { "ata": { "$ref": "#/components/schemas/ataObject", "description": "Applicable device settings for an ATA device." }, "mpp": { "$ref": "#/components/schemas/mppObject", "description": "Applicable device settings for an MPP device." }, "wifi": { "$ref": "#/components/schemas/wifiObject", "description": "Applicable device settings for a WiFi device." } } }, "CustomizationDeviceLevelObjectDevice": { "type": "object", "properties": { "ata": { "$ref": "#/components/schemas/ataObjectDevice", "description": "Applicable device settings for an ATA device." }, "mpp": { "$ref": "#/components/schemas/mppObjectDevice", "description": "Applicable device settings for an MPP device." }, "wifi": { "$ref": "#/components/schemas/wifiObjectDevice", "description": "Applicable device settings for a WiFi device." } } }, "CustomizationObject": { "type": "object", "properties": { "ata": { "$ref": "#/components/schemas/ataObject", "description": "Settings that are applicable to ATA devices." }, "dect": { "$ref": "#/components/schemas/dectObject", "description": "Settings that are applicable to DECT devices." }, "mpp": { "$ref": "#/components/schemas/mppObject", "description": "Settings that are applicable to MPP devices." }, "wifi": { "$ref": "#/components/schemas/wifiObject", "description": "Settings that are applicable to WiFi." } } }, "DectAudioCodecPriorityObject": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "$ref": "#/components/schemas/SelectionType", "description": "Indicates the selection of an Audio Codec Priority Object." }, "primary": { "type": "string", "example": "G729", "description": "Indicates the primary Audio Codec." }, "secondary": { "type": "string", "example": "G711u", "description": "Indicates the secondary Audio Codec." }, "tertiary": { "type": "string", "example": "G711a", "description": "Indicates the tertiary Audio Codec." } } }, "DectDeviceList": { "type": "object", "required": [ "model", "displayName" ], "properties": { "model": { "type": "string", "example": "DMS Cisco DBS110", "description": "Model name of the device." }, "displayName": { "type": "string", "example": "Cisco DECT 210 Base", "description": "Display name of the device." }, "numberOfBaseStations": { "type": "number", "example": 250, "description": "Indicates number of base stations." }, "numberOfLinePorts": { "type": "number", "example": 1000, "description": "Indicates number of port lines," }, "numberOfRegistrationsSupported": { "type": "number", "example": 30, "description": "Indicates number of supported registrations." } } }, "DectVlanObject": { "type": "object", "required": [ "enabled", "value" ], "properties": { "enabled": { "type": "boolean", "description": "Denotes whether the VLAN object of DECT is enabled." }, "value": { "type": "number", "description": "Value of the VLAN Object of DECT." } } }, "DefaultLoggingLevelObject": { "type": "string", "enum": [ "STANDARD", "DEBUGGING" ], "description": " * `STANDARD` - Enables standard logging.\n * `DEBUGGING` - Enables detailed debugging logging.\n" }, "DeviceActivationStates": { "type": "string", "enum": [ "ACTIVATING", "ACTIVATED", "DEACTIVATED" ], "description": " * `ACTIVATING` - Indicates a device is activating.\n * `ACTIVATED` - Indicates a device is activated.\n * `DEACTIVATED` - Indicates a device is deactivated.\n" }, "DeviceSettingsObject": { "type": "object", "required": [ "customizations", "customEnabled", "updateInProgress", "deviceCount", "lastUpdateTime" ], "properties": { "customizations": { "$ref": "#/components/schemas/CustomizationDeviceLevelObject", "description": "Indicates the customization object of the device settings." }, "customEnabled": { "type": "boolean", "example": true, "description": "Indicates if customization is allowed at a location level. If `true`, customized at a location level. If `false`, not customized; uses customer-level configuration." }, "updateInProgress": { "type": "boolean", "example": true, "description": "Customer devices setting update status. If `true`, an update is in progress (no further changes are allowed). `If false`, no update in progress (changes are allowed)." }, "deviceCount": { "type": "number", "example": 9, "description": "Number of devices that will be updated." }, "lastUpdateTime": { "type": "number", "example": 1659624763665, "description": "Indicates the last updated time." } } }, "DeviceSettingsObjectForDeviceLevel": { "type": "object", "required": [ "customizations", "customEnabled", "updateInProgress", "deviceCount", "lastUpdateTime" ], "properties": { "customizations": { "$ref": "#/components/schemas/CustomizationDeviceLevelObjectDevice", "description": "Indicates the customization object of the device settings." }, "customEnabled": { "type": "boolean", "example": true, "description": "Indicates if customization is allowed at a device level. If `true`, customized at a device level. If `false`, not customized; uses customer-level configuration." }, "updateInProgress": { "type": "boolean", "example": true, "description": "Customer devices setting update status. If `true`, an update is in progress (no further changes are allowed). `If false`, no update in progress (changes are allowed)." }, "deviceCount": { "type": "number", "example": 9, "description": "Number of devices that will be updated." }, "lastUpdateTime": { "type": "number", "example": 1659624763665, "description": "Indicates the last updated time." } } }, "DirectoryMethod": { "type": "string", "enum": [ "XSI_DIRECTORY", "WEBEX_DIRECTORY" ], "description": " * `XSI_DIRECTORY` - Set directory services to use standard XSI query method from the device.\n * `WEBEX_DIRECTORY` - Set directory services to use the Webex Enterprise directory.\n" }, "DisplayCallqueueAgentSoftkeysObject": { "type": "string", "enum": [ "FRONT_PAGE", "LAST_PAGE" ] }, "DisplayNameSelection": { "type": "string", "enum": [ "PERSON_NUMBER", "PERSON_FIRST_THEN_LAST_NAME", "PERSON_LAST_THEN_FIRST_NAME" ], "description": " * `PERSON_NUMBER` - Indicates that devices will display the person's phone number, or if a person doesn't have a phone number, the location number will be displayed.\n * `PERSON_FIRST_THEN_LAST_NAME` - Indicates that devices will display the name in first name then last name format.\n * `PERSON_LAST_THEN_FIRST_NAME` - Indicates that devices will display the name in last name then first name format.\n" }, "GetMemberResponse": { "type": "object", "required": [ "model", "maxLineCount" ], "properties": { "model": { "type": "string", "example": "DMS Cisco 192", "description": "Model type of the device." }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/MemberObject" }, "description": "List of members that appear on the device." }, "maxLineCount": { "type": "number", "example": 10, "description": "Maximum number of lines available for the device." } } }, "Hoteling": { "type": "object", "required": [ "enabled", "limitGuestUse" ], "properties": { "enabled": { "type": "boolean", "description": "Enable/Disable hoteling Host. Enabling the device for hoteling means that a guest(end user) can log into this host(workspace device) and use this device\n\nas if it were their own. This is useful when traveling to a remote office but still needing to place/receive calls with their telephone number and access features normally available to them on their office phone." }, "limitGuestUse": { "type": "boolean", "description": "Enable limiting the time a guest can use the device. The time limit is configured via `guestHoursLimit`." }, "guestHoursLimit": { "type": "number", "description": "Time Limit in hours until hoteling is enabled. Mandatory if `limitGuestUse` is enabled." } } }, "UserHotelingRequestPatch": { "type": "object", "required": [ "hoteling" ], "properties": { "hoteling": { "$ref": "#/components/schemas/HotelingRequest", "description": "Modify person Device Hoteling Setting." } } }, "HotelingRequest": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Enable/Disable hoteling Host. Enabling the device for hoteling means that a guest(end user) can log into this host(workspace device) and use this device\n\nas if it were their own. This is useful when traveling to a remote office but still needing to place/receive calls with their telephone number and access features normally available to them on their office phone." }, "limitGuestUse": { "type": "boolean", "description": "Enable limiting the time a guest can use the device. The time limit is configured via `guestHoursLimit`." }, "guestHoursLimit": { "type": "number", "description": "Time Limit in hours until hoteling is enabled. Mandatory if `limitGuestUse` is enabled." } } }, "HttpProxyObject": { "type": "object", "required": [ "mode", "autoDiscoveryEnabled", "host", "port", "packUrl", "authSettingsEnabled", "username", "password" ], "properties": { "mode": { "type": "string", "enum": [ "OFF", "AUTO", "MANUAL" ], "description": "Mode of the HTTP proxy." }, "autoDiscoveryEnabled": { "type": "boolean", "example": true, "description": "Enable/disable auto discovery of the URL." }, "host": { "type": "string", "example": "www.example.wxc", "description": "Specify the host URL if the HTTP mode is set to `MANUAL`." }, "port": { "type": "string", "example": "3128", "description": "Specify the port if the HTTP mode is set to `MANUAL`." }, "packUrl": { "type": "string", "example": "www.example.wxc", "description": "Specify PAC URL if auto discovery is disabled." }, "authSettingsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable authentication settings." }, "username": { "type": "string", "example": "john", "description": "Specify a username if authentication settings are enabled." }, "password": { "type": "string", "example": "private", "description": "Specify a password if authentication settings are enabled." } } }, "HttpProxyObjectDevice": { "type": "object", "required": [ "mode", "autoDiscoveryEnabled" ], "properties": { "mode": { "type": "string", "enum": [ "OFF", "AUTO", "MANUAL" ], "description": "Mode of the HTTP proxy." }, "autoDiscoveryEnabled": { "type": "boolean", "example": true, "description": "Enable/disable auto discovery of the URL." }, "host": { "type": "string", "example": "www.example.wxc", "description": "Specify the host URL if the HTTP mode is set to `MANUAL`." }, "port": { "type": "string", "example": "3128", "description": "Specify the port if the HTTP mode is set to `MANUAL`." }, "packUrl": { "type": "string", "example": "www.example.wxc", "description": "Specify PAC URL if auto discovery is disabled." }, "authSettingsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable authentication settings." }, "username": { "type": "string", "example": "john", "description": "Specify a username if authentication settings are enabled." }, "password": { "type": "string", "example": "private", "description": "Specify a password if authentication settings are enabled." } } }, "JobListResponse": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/StartJobResponse" }, "description": "Lists all jobs for the customer in order of most recent one to oldest one irrespective of its status." } } }, "LdapObject": { "type": "object", "required": [ "enabled", "serverAddress", "serverPort", "commSecurityType", "bindDn", "bindPw", "baseDn", "primaryEmailAttribute", "alternateEmailAttribute" ], "properties": { "enabled": { "type": "boolean", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "serverAddress": { "type": "string", "example": "localhost", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "serverPort": { "type": "number", "example": 8080, "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "commSecurityType": { "$ref": "#/components/schemas/CommSecurityType", "description": "Indicates the selection of the protocol for LDAP service on the phone." }, "bindDn": { "type": "string", "example": "bindDn", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "bindPw": { "type": "string", "example": "bindPw", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "baseDn": { "type": "string", "example": "baseDn", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "primaryEmailAttribute": { "type": "string", "example": "primaryEmailAttribute", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "alternateEmailAttribute": { "type": "string", "example": "alternateEmailAttribute", "description": "Sets the values needed to enable use of the LDAP service on the phone." } } }, "LdapObjectDevice": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "serverAddress": { "type": "string", "example": "localhost", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "serverPort": { "type": "number", "example": 8080, "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "commSecurityType": { "$ref": "#/components/schemas/CommSecurityType", "description": "Indicates the selection of the protocol for LDAP service on the phone." }, "bindDn": { "type": "string", "example": "bindDn", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "bindPw": { "type": "string", "example": "bindPw", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "baseDn": { "type": "string", "example": "baseDn", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "primaryEmailAttribute": { "type": "string", "example": "primaryEmailAttribute", "description": "Sets the values needed to enable use of the LDAP service on the phone." }, "alternateEmailAttribute": { "type": "string", "example": "alternateEmailAttribute", "description": "Sets the values needed to enable use of the LDAP service on the phone." } } }, "LineKeyLEDPattern": { "type": "string", "enum": [ "DEFAULT", "PRESET_1" ] }, "LineKeyLabelSelection": { "type": "string", "enum": [ "PERSON_EXTENSION", "PERSON_FIRST_THEN_LAST_NAME", "PERSON_LAST_THEN_FIRST_NAME" ], "description": " * `PERSON_EXTENSION` - This will display the person extension, or if a person doesn't have an extension, the person's first name will be displayed.\n * `PERSON_FIRST_THEN_LAST_NAME` - Indicates that devices will display the name in first name then last name format.\n * `PERSON_LAST_THEN_FIRST_NAME` - Indicates that devices will display the name in last name then first name format.\n" }, "LineType": { "type": "string", "enum": [ "PRIMARY", "SHARED_CALL_APPEARANCE" ], "description": " * `PRIMARY` - Primary line for the member.\n * `SHARED_CALL_APPEARANCE` - Shared line for the member. A shared line allows users to receive and place calls to and from another user's extension, using their own device.\n" }, "DeviceLineType": { "type": "string", "enum": [ "PRIMARY", "SHARED_CALL_APPEARANCE", "MOBILITY", "HOTDESKING_GUEST" ], "description": " * `PRIMARY` - Primary line for the member.\n * `SHARED_CALL_APPEARANCE` - Shared line for the member. A shared line allows users to receive and place calls to and from another user's extension, using their own device.\n * `MOBILITY` - Device is a shared line.\n * `HOTDESKING_GUEST` - Device is a hotdesking guest.\n" }, "ListDectDeviceType": { "type": "object", "required": [ "devices" ], "properties": { "devices": { "type": "array", "items": { "$ref": "#/components/schemas/DectDeviceList" }, "description": "Contains a list of devices." } } }, "ListDeviceSettingsObject": { "type": "object", "required": [ "customizations", "updateInProgress", "deviceCount", "lastUpdateTime" ], "properties": { "customizations": { "$ref": "#/components/schemas/CustomizationObject", "description": "Customization object of the device settings." }, "updateInProgress": { "type": "boolean", "description": "Progress of the device update." }, "deviceCount": { "type": "number", "example": 22, "description": "Device count." }, "lastUpdateTime": { "type": "number", "example": 1659624763665, "description": "Last updated time." } } }, "MACAddressResponse": { "type": "object", "required": [ "status", "macStatus" ], "properties": { "status": { "type": "string", "enum": [ "OK", "ERRORS" ], "description": "Status of MAC address." }, "macStatus": { "type": "array", "items": { "$ref": "#/components/schemas/MacStatusObject" }, "description": "Contains an array of all the MAC address provided and their statuses." } } }, "MacStatusObject": { "type": "object", "required": [ "mac", "state" ], "properties": { "mac": { "type": "string", "example": "00005E0053B4", "description": "MAC address." }, "state": { "type": "string", "enum": [ "AVAILABLE", "UNAVAILABLE", "DUPLICATE_IN_LIST", "INVALID" ], "description": "State of the MAC address.\n * `AVAILABLE` - The requested MAC address is available.\n * `UNAVAILABLE` - The requested MAC address is unavailable.\n * `DUPLICATE_IN_LIST` - The requested MAC address is duplicated.\n * `INVALID` - The requested MAC address is invalid.\n" }, "errorCode": { "type": "number", "example": 5675, "description": "MAC address validation error code." }, "message": { "type": "string", "example": "[Error 5675] MAC Address is in use.", "description": "Provides a status message about the MAC address." } } }, "MemberObject": { "type": "object", "required": [ "id", "firstName", "lastName", "primaryOwner", "port", "lineType", "lineWeight", "hotlineEnabled", "hotlineDestination", "allowCallDeclineEnabled", "memberType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier for the member." }, "firstName": { "type": "string", "example": "John", "description": "First name of a person or workspace." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of a person or workspace." }, "phoneNumber": { "type": "string", "example": "2055552221", "description": "Phone Number of a person or workspace. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "extension": { "type": "string", "example": "000", "description": "Extension of a person or workspace." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "1234000", "description": "Routing prefix + extension of a person or workspace." }, "primaryOwner": { "type": "boolean", "example": true, "description": "This field indicates whether the person or the workspace is the owner of the device, and points to a primary Line/Port of the device." }, "port": { "type": "number", "example": 1, "description": "Port number assigned to person or workspace." }, "t38FaxCompressionEnabled": { "type": "boolean", "description": "T.38 Fax Compression setting and is available only for ATA Devices. Choose T.38 fax compression if the device requires this option. This will override user level compression options." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Line type is used to differentiate Primary and SCA, at which endpoint it is assigned." }, "lineWeight": { "type": "number", "example": 1, "description": "Number of lines that have been configured for the person on the device." }, "hostIP": { "type": "string", "example": "10.0.0.45", "description": "Registration Host IP address for the line port." }, "remoteIP": { "type": "string", "example": "192.102.12.84", "description": "Registration Remote IP address for the line port." }, "hotlineEnabled": { "type": "boolean", "example": true, "description": "Enable Hotline. Configure this line to automatically call a predefined number whenever taken off-hook. Once enabled, the line can only make calls to the predefined number set in hotlineDestination." }, "hotlineDestination": { "type": "string", "example": "+12055552222", "description": "The preconfigured number for Hotline. Required only if `hotlineEnabled` is set to true." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a person's device behaves when a call is declined. When set to true, a call decline request is extended to all the endpoints on the device. When set to false, a call decline request only declines the current endpoint." }, "lineLabel": { "type": "string", "example": "share line label", "description": "Device line label." }, "linePort": { "type": "string", "example": "evypzco5ds@55552222.int10.bcld.webex.com", "description": "SIP username used in SIP signaling, for example, in registration." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Indicates if the member is of type `PEOPLE` or `PLACE`." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object having a unique identifier for the location and its name." } } }, "MemberType": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": " * `PEOPLE` - Indicates the associated member is a person.\n * `PLACE` - Indicates the associated member is a workspace.\n * `VIRTUAL_LINE` - Indicates the associated member is a virtual line.\n" }, "MppAudioCodecPriorityObject": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "type": "string", "example": "CUSTOM", "description": "Indicates the selection of the Audio Codec Priority Object for an MPP object." }, "primary": { "type": "string", "example": "OPUS", "description": "Indicates the primary Audio Codec for an MPP object." }, "secondary": { "type": "string", "example": "G722", "description": "Indicates the secondary Audio Codec for an MPP object." }, "tertiary": { "type": "string", "example": "G711u", "description": "Indicates the tertiary Audio Codec for an MPP object." } } }, "MppAudioCodecPriorityObjectDevice": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "$ref": "#/components/schemas/SelectionType", "description": "Indicates the selection of the Audio Codec Priority Object for an MPP object." }, "primary": { "type": "string", "example": "OPUS", "description": "Indicates the primary Audio Codec for an MPP object." }, "secondary": { "type": "string", "example": "G722", "description": "Indicates the secondary Audio Codec for an MPP object." }, "tertiary": { "type": "string", "example": "G711u", "description": "Indicates the tertiary Audio Codec for an MPP object." } } }, "MppVlanObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the VLAN object of an MPP is enabled." }, "value": { "type": "number", "example": 1, "description": "Indicates the value of a VLAN object for an MPP object." }, "pcPort": { "type": "number", "example": 1, "description": "Indicates the PC port value of a VLAN object for an MPP object." } } }, "MppVlanObjectDevice": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the VLAN object of an MPP is enabled." }, "value": { "type": "number", "example": 1, "description": "Indicates the value of a VLAN object for an MPP object." }, "pcPort": { "type": "number", "example": 1, "description": "Indicates the PC port value of a VLAN object for an MPP object." } } }, "NoiseCancellationObject": { "type": "object", "required": [ "enabled", "allowEndUserOverrideEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable the Noise Cancellation." }, "allowEndUserOverrideEnabled": { "type": "boolean", "example": true, "description": "Enable/disable to preserve the existing values on the phone and not the value defined for the device setting." } } }, "PhoneLanguage": { "type": "string", "enum": [ "PERSON_LANGUAGE", "ARABIC", "BULGARIAN", "CATALAN", "CHINESE_SIMPLIFIED", "CHINESE_TRADITIONAL", "CROATIAN", "CZECH", "DANISH", "DUTCH", "ENGLISH_UNITED_STATES", "ENGLISH_UNITED_KINGDOM", "FINNISH", "FRENCH_CANADA", "FRENCH_FRANCE", "GERMAN", "GREEK", "HEBREW", "HUNGARIAN", "ITALIAN", "JAPANESE", "KOREAN", "NORWEGIAN", "POLISH", "PORTUGUESE_PORTUGAL", "RUSSIAN", "SPANISH_COLOMBIA", "SPANISH_SPAIN", "SLOVAK", "SWEDISH", "SLOVENIAN", "TURKISH", "UKRAINE" ], "description": " * `PERSON_LANGUAGE` - Indicates a person's announcement language.\n" }, "PoeMode": { "type": "string", "enum": [ "NORMAL", "MAXIMUM" ], "description": " * `NORMAL` - Use normal power consumption.\n * `MAXIMUM` - Use maximum power consumption.\n" }, "PskObject": { "type": "object", "required": [ "psk1", "psk4" ], "properties": { "psk1": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK1." }, "psk2": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK2." }, "psk3": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK3." }, "psk4": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK4." }, "psk5": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK5." }, "psk6": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK6." }, "psk7": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK7." }, "psk8": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK8." }, "psk9": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK9." }, "psk10": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK10." }, "psk11": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK11." }, "psk12": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK12." }, "psk13": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK13." }, "psk14": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK14." }, "psk15": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK15." }, "psk16": { "type": "string", "example": "fnc=sd;ext=*11;nme=Call Pull", "description": "Specify PSK16." } } }, "PutDeviceSettingsRequest": { "type": "object", "required": [ "customizations", "customEnabled" ], "properties": { "customizations": { "$ref": "#/components/schemas/CustomizationDeviceLevelObjectDevice", "description": "Indicates the customization object of the device settings." }, "customEnabled": { "type": "boolean", "example": true, "description": "Indicates if customization is allowed at a device level. If true, customized at a device level. If false, not customized; uses customer-level configuration." } } }, "PutMemberObject": { "type": "object", "required": [ "port", "id", "primaryOwner", "lineType", "lineWeight", "hotlineEnabled", "hotlineDestination", "allowCallDeclineEnabled" ], "properties": { "port": { "type": "number", "example": 1, "description": "Person's assigned port number." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier for the member." }, "t38FaxCompressionEnabled": { "type": "boolean", "description": "T.38 Fax Compression setting and is available only for ATA Devices. Choose T.38 fax compression if the device requires this option. This will override user level compression options." }, "primaryOwner": { "type": "boolean", "example": true, "description": "Whether the user is the owner of the device or not, and points to a primary Line/Port of device." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Line type is used to differentiate Primary and SCA, at which endpoint it is assigned." }, "lineWeight": { "type": "number", "example": 1, "description": "Number of lines that have been configured for the person on the device." }, "hotlineEnabled": { "type": "boolean", "example": true, "description": "Enable Hotline. Configure this line to automatically call a predefined number whenever taken off-hook. Once enabled, the line can only make calls to the predefined number set in hotlineDestination." }, "hotlineDestination": { "type": "string", "example": "+12055552222", "description": "The preconfigured number for Hotline. Required only if `hotlineEnabled` is set to true." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a person's device behaves when a call is declined. When set to true, a call decline request is extended to all the endpoints on the device. When set to false, a call decline request only declines the current endpoint." }, "lineLabel": { "type": "string", "example": "share line label", "description": "Device line label." } } }, "PutMembersRequest": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/PutMemberObject" }, "description": "This specifies the new list of device members, completely replacing the existing device members. If the member's list is omitted then all the users are removed except the primary user." } } }, "ScreenTimeoutObject": { "type": "object", "required": [ "enabled", "value" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Indicates whether the Screen Time object is enabled." }, "value": { "type": "number", "example": 400, "description": "Indicates the value of screen timeout." } } }, "SearchMemberObject": { "type": "object", "required": [ "id", "firstName", "lastName", "lineType", "allowCallDeclineEnabled", "memberType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier for the member." }, "firstName": { "type": "string", "example": "John", "description": "First name of a person or workspace." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of a person or workspace." }, "phoneNumber": { "type": "string", "example": "+12055552221", "description": "Phone Number of a person or workspace." }, "t38FaxCompressionEnabled": { "type": "boolean", "description": "T.38 Fax Compression setting and available only for ATA Devices. Choose T.38 fax compression if the device requires this option. this will override user level compression options." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Line type is used to differentiate Primary and SCA, at which endpoint it is assigned." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a person's device behaves when a call is declined. When set to true, a call decline request is extended to all the endpoints on the device. When set to false, a call decline request only declines the current endpoint." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Indicates if member is of type `PEOPLE` or `PLACE`." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object having a unique identifier for the location and its name." } } }, "SearchMemberResponse": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/SearchMemberObject" }, "description": "List of members available for the device." } } }, "SelectionType": { "type": "string", "enum": [ "REGIONAL", "CUSTOM" ], "description": " * `REGIONAL` - Indicates the regional selection type for audio codec priority.\n * `CUSTOM` - Indicates the custom selection type for audio codec priority.\n" }, "SnmpObject": { "type": "object", "required": [ "enabled", "trustedIP", "getCommunity", "setCommunity", "snmpV3Enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Denotes whether the Simple Network Management Protocol of an ATA is enabled." }, "trustedIP": { "type": "string", "example": "10.0.0.45", "description": "Trusted IPv4 address and subnet mask in this order: 0.0.0.0/0.0.0.0." }, "getCommunity": { "type": "string", "example": "public", "description": "Read-only community string that allows/denies access to other device's statistics. Default value is `public`." }, "setCommunity": { "type": "string", "example": "private", "description": "Read-write community string that protects the device against unauthorized changes. Must never be set to `public`." }, "snmpV3Enabled": { "type": "boolean", "description": "Denotes whether the SNMPv3 security is enabled." } } }, "SoftKeyLayoutObject": { "type": "object", "required": [ "softKeyMenu", "psk", "softKeyMenuDefaults", "pskDefaults" ], "properties": { "softKeyMenu": { "$ref": "#/components/schemas/SoftKeyMenuObject", "description": "Customize SoftKey menu settings." }, "psk": { "$ref": "#/components/schemas/PskObject", "description": "Customize PSK." }, "softKeyMenuDefaults": { "$ref": "#/components/schemas/SoftKeyMenuObject", "description": "Default SoftKey menu settings." }, "pskDefaults": { "$ref": "#/components/schemas/PskObject", "description": "Default PSK." } } }, "SoftKeyMenuObject": { "type": "object", "required": [ "idleKeyList", "offHookKeyList", "dialingInputKeyList", "progressingKeyList", "connectedKeyList", "connectedVideoKeyList", "startTransferKeyList", "startConferenceKeyList", "conferencingKeyList", "releasingKeyList", "holdKeyList", "ringingKeyList", "sharedActiveKeyList", "sharedHeldKeyList" ], "properties": { "idleKeyList": { "type": "string", "example": "guestin|;guestout|;acd_login|;acd_logout|;astate|;redial|;newcall|;cfwd|;recents|;dnd|;unpark|;psk1|;gpickup|;pickup|;dir|4;miss|5;selfview|;messages", "description": "Specify the idle key list." }, "offHookKeyList": { "type": "string", "example": "endcall|1;redial|2;dir|3;lcr|4;unpark|5;pickup|6;gpickup|7", "description": "Specify the off hook key list." }, "dialingInputKeyList": { "type": "string", "example": "dial|1;cancel|2;delchar|3;left|5;right|6", "description": "Specify the dialing input key list." }, "progressingKeyList": { "type": "string", "example": "endcall|2", "description": "Specify the progressing key list." }, "connectedKeyList": { "type": "string", "example": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "description": "Specify the connected key list." }, "connectedVideoKeyList": { "type": "string", "example": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "description": "Specify the connected video key list." }, "startTransferKeyList": { "type": "string", "example": "endcall|2;xfer|3", "description": "Start the transfer key list." }, "startConferenceKeyList": { "type": "string", "example": "endcall|2;conf|3", "description": "Start the conference key list." }, "conferencingKeyList": { "type": "string", "example": "endcall;join;crdstart;crdstop;crdpause;crdresume", "description": "Specify the conferencing key list." }, "releasingKeyList": { "type": "string", "example": "endcall|2", "description": "Specify the releasing key list." }, "holdKeyList": { "type": "string", "example": "resume|1;endcall|2;newcall|3;redial|4;dir|5", "description": "Specify the hold key list." }, "ringingKeyList": { "type": "string", "example": "answer|1;ignore|2", "description": "Specify the ringing key list." }, "sharedActiveKeyList": { "type": "string", "example": "newcall|1;psk1|2;dir|3;back|4", "description": "Specify the shared active key list." }, "sharedHeldKeyList": { "type": "string", "example": "resume|1;dir|4", "description": "Specify the shared held key list." } } }, "StartJobResponse": { "type": "object", "required": [ "name", "id", "jobType", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "operationType", "sourceLocationId", "targetLocationId", "counts" ], "properties": { "name": { "type": "string", "description": "Job name." }, "id": { "type": "string", "description": "Unique identifier of the job." }, "jobType": { "type": "string", "description": "Job type." }, "trackingId": { "type": "string", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "description": "Unique identifier to identify the instance of the job." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/JobExecutionStatusObject1" }, "description": "Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job." }, "latestExecutionStatus": { "type": "string", "description": "Indicates the most recent status (STARTING, STARTED, COMPLETED, FAILED) of the job at the time of invocation." }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS" ], "description": "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n" }, "operationType": { "type": "string", "description": "Indicates operation type that was carried out." }, "sourceLocationId": { "type": "string", "description": "Unique location identifier for which the job was run." }, "targetLocationId": { "type": "string", "description": "Unique location identifier for which the numbers have been moved." }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." } } }, "UsbPortsObject": { "type": "object", "required": [ "enabled", "sideUsbEnabled", "rearUsbEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "New Control to Enable/Disable the side USB port." }, "sideUsbEnabled": { "type": "boolean", "example": true, "description": "Enable/disable use of the side USB port on the MPP device. Enabled by default." }, "rearUsbEnabled": { "type": "boolean", "example": true, "description": "Enable/disable use of the rear USB port on the MPP device." } } }, "ValidateMACRequest": { "type": "object", "required": [ "macs" ], "properties": { "macs": { "type": "array", "items": { "type": "string", "example": "ab125678cdef,00005E0053B4" }, "description": "MAC addresses to be validated." } } }, "VlanObject": { "type": "object", "required": [ "enabled", "value" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Denotes whether the VLAN object of an ATA is enabled." }, "value": { "type": "number", "example": 1, "description": "The value of the VLAN Object of an ATA object." } } }, "VlanObjectDevice": { "type": "object", "required": [ "enabled", "value" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Denotes whether the VLAN object of an ATA is enabled." }, "value": { "type": "number", "example": 1, "description": "The value of the VLAN Object of an ATA object." } } }, "VolumeSettingsObject": { "type": "object", "required": [ "ringerVolume", "speakerVolume", "handsetVolume", "headsetVolume", "eHookEnabled", "allowEndUserOverrideEnabled" ], "properties": { "ringerVolume": { "type": "number", "example": 9, "description": "Specify a ringer volume level through a numeric value between 0 and 15." }, "speakerVolume": { "type": "number", "example": 11, "description": "Specify a speaker volume level through a numeric value between 0 and 15." }, "handsetVolume": { "type": "number", "example": 10, "description": "Specify a handset volume level through a numeric value between 0 and 15." }, "headsetVolume": { "type": "number", "example": 10, "description": "Specify a headset volume level through a numeric value between 0 and 15." }, "eHookEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the wireless headset hookswitch control." }, "allowEndUserOverrideEnabled": { "type": "boolean", "example": true, "description": "Enable/disable to preserve the existing values on the phone and not the values defined for the device settings." } } }, "WebAccessObject": { "type": "object", "required": [ "enabled", "password" ], "properties": { "enabled": { "type": "boolean", "description": "Ability to enable or disable the web browser access for the 840/860." }, "password": { "type": "string", "example": "password", "description": "Ability to set a Web Server Password." } } }, "WifiAudioCodecPriorityObject": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "$ref": "#/components/schemas/SelectionType", "description": "Indicates the selection of the Audio Codec Priority Object for an WiFi object." }, "primary": { "type": "string", "example": "OPUS", "description": "Indicates the primary Audio Codec for an WiFi object." }, "secondary": { "type": "string", "example": "G722", "description": "Indicates the secondary Audio Codec for an WiFi object." }, "tertiary": { "type": "string", "example": "G711u", "description": "Indicates the tertiary Audio Codec for an WiFi object." } } }, "WifiAudioCodecPriorityObjectDevice": { "type": "object", "required": [ "selection", "primary", "secondary", "tertiary" ], "properties": { "selection": { "type": "string", "example": "CUSTOM", "description": "Indicates the selection of the Audio Codec Priority Object for an WiFi object." }, "primary": { "type": "string", "example": "OPUS", "description": "Indicates the primary Audio Codec for an WiFi object." }, "secondary": { "type": "string", "example": "G722", "description": "Indicates the secondary Audio Codec for an WiFi object." }, "tertiary": { "type": "string", "example": "G711u", "description": "Indicates the tertiary Audio Codec for an WiFi object." } } }, "WifiNetworkObject": { "type": "object", "required": [ "enabled", "authenticationMethod", "ssidName", "userId" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the wifi network is enabled." }, "authenticationMethod": { "$ref": "#/components/schemas/AuthenticationMethodObject", "description": "Authentication method of wifi network." }, "ssidName": { "type": "string", "example": "my_wifi_network", "description": "SSID name of the wifi network." }, "userId": { "type": "string", "example": "test-user", "description": "User Id of the wifi network." } } }, "WifiNetworkObjectDevice": { "type": "object", "required": [ "enabled", "authenticationMethod", "ssidName", "userId" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the wifi network is enabled." }, "authenticationMethod": { "$ref": "#/components/schemas/AuthenticationMethodObject", "description": "Authentication method of the WiFi network." }, "ssidName": { "type": "string", "example": "my_wifi_network", "description": "SSID name of the wifi network." }, "userId": { "type": "string", "example": "test-user", "description": "User ID for the WiFi network." } } }, "ataObject": { "type": "object", "required": [ "audioCodecPriority", "ataDtmfMode", "ataDtmfMethod", "cdpEnabled", "lldpEnabled", "qosEnabled", "vlan", "webAccessEnabled", "nightlyResyncEnabled", "snmp" ], "properties": { "audioCodecPriority": { "$ref": "#/components/schemas/AudioCodecPriorityObject", "description": "Choose up to three predefined codec priority options available for your region." }, "ataDtmfMode": { "$ref": "#/components/schemas/AtaDtmfModeObject", "description": "DTMF Detection Tx Mode selection for Cisco ATA devices." }, "ataDtmfMethod": { "$ref": "#/components/schemas/AtaDtmfMethodObject", "description": "Method for transmitting DTMF signals to the far end." }, "cdpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Cisco Discovery Protocol for local devices." }, "lldpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Link Layer Discovery Protocol for local devices." }, "qosEnabled": { "type": "boolean", "example": true, "description": "Enable/disable quality of service tagging of packets from the local device to the Webex Calling platform." }, "vlan": { "$ref": "#/components/schemas/VlanObject", "description": "Specify a numeric Virtual LAN ID for devices." }, "webAccessEnabled": { "type": "boolean", "example": true, "description": "Enable/disable user level web access to the local device." }, "nightlyResyncEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the automatic nightly configuration resync of the MPP device." }, "snmp": { "$ref": "#/components/schemas/SnmpObject", "description": "Specify values needed to enable use of the SNMP service from the phone." } } }, "ataObjectDevice": { "type": "object", "required": [ "audioCodecPriority", "ataDtmfMode", "ataDtmfMethod", "cdpEnabled", "lldpEnabled", "qosEnabled", "vlan", "webAccessEnabled", "nightlyResyncEnabled", "snmp" ], "properties": { "audioCodecPriority": { "$ref": "#/components/schemas/AudioCodecPriorityObjectDevice", "description": "Choose up to three predefined codec priority options available for your region." }, "ataDtmfMode": { "$ref": "#/components/schemas/AtaDtmfModeObject", "description": "DTMF Detection Tx Mode selection for Cisco ATA devices." }, "ataDtmfMethod": { "$ref": "#/components/schemas/AtaDtmfMethodObject", "description": "Method for transmitting DTMF signals to the far end." }, "cdpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Cisco Discovery Protocol for local devices." }, "lldpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Link Layer Discovery Protocol for local devices." }, "qosEnabled": { "type": "boolean", "example": true, "description": "Enable/disable quality of service tagging of packets from the local device to the Webex Calling platform." }, "vlan": { "$ref": "#/components/schemas/VlanObjectDevice", "description": "Specify a numeric Virtual LAN ID for devices." }, "webAccessEnabled": { "type": "boolean", "example": true, "description": "Enable/disable user level web access to the local device." }, "nightlyResyncEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the automatic nightly configuration resync of the MPP device." }, "snmp": { "$ref": "#/components/schemas/SnmpObject", "description": "Specify values needed to enable use of the SNMP service from the phone." } } }, "dectObject": { "type": "object", "required": [ "audioCodecPriority", "cdpEnabled", "dect6825HandsetEmergencyNumber", "lldpEnabled", "multicast", "qosEnabled", "vlan", "webAccessEnabled", "nightlyResyncEnabled" ], "properties": { "audioCodecPriority": { "$ref": "#/components/schemas/DectAudioCodecPriorityObject", "description": "Choose up to three predefined codec priority options available for your region." }, "cdpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Cisco Discovery Protocol for local devices." }, "dect6825HandsetEmergencyNumber": { "type": "string", "description": "Specify the destination number to be dialled from the DECT Handset top button when pressed." }, "lldpEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Link Layer Discovery Protocol for local devices." }, "multicast": { "type": "string", "description": "Specify up to 3 multicast group URLs each with a unique listening port." }, "qosEnabled": { "type": "boolean", "example": true, "description": "Enable/disable quality of service tagging of packets from the local device to the Webex Calling platform." }, "vlan": { "$ref": "#/components/schemas/DectVlanObject", "description": "Specify a numeric Virtual LAN ID for devices." }, "webAccessEnabled": { "type": "boolean", "example": true, "description": "Enable/disable user level web access to the local device." }, "nightlyResyncEnabled": { "type": "boolean", "example": true, "description": "Enable/disable phone's default behavior regarding the nightly maintenance synchronization with the Webex Calling platform." } } }, "deviceList": { "type": "object", "required": [ "devices", "maxDeviceCount", "maxOwnedDeviceCount" ], "properties": { "devices": { "type": "array", "items": { "$ref": "#/components/schemas/devices" }, "description": "Array of devices available to person." }, "maxDeviceCount": { "type": "number", "description": "Maximum number of devices a person can be assigned to." }, "maxOwnedDeviceCount": { "type": "number", "description": "Maximum number of devices a person can own." } } }, "deviceOwner": { "type": "object", "required": [ "id", "type", "firstName", "lastName" ], "properties": { "id": { "type": "string", "description": "Unique identifier of a person or a workspace." }, "type": { "$ref": "#/components/schemas/MemberType", "description": "Enumeration that indicates if the member is of type `PEOPLE` or `PLACE`." }, "firstName": { "type": "string", "description": "First name of device owner." }, "lastName": { "type": "string", "description": "Last name of device owner." } } }, "devices": { "type": "object", "required": [ "id", "model", "primaryOwner", "type", "hoteling", "owner", "activationState" ], "properties": { "id": { "type": "string", "description": "Unique identifier for a device." }, "description": { "type": "array", "items": { "type": "string" }, "description": "Comma separated array of tags used to describe device." }, "model": { "type": "string", "description": "Identifier for device model." }, "modelType": { "$ref": "#/components/schemas/DeviceType", "description": "Identifier for device model type." }, "mac": { "type": "string", "description": "MAC address of device." }, "ipAddress": { "type": "string", "description": "IP address of device." }, "primaryOwner": { "type": "boolean", "description": "Indicates whether the person or the workspace is the owner of the device, and points to a primary Line/Port of the device." }, "type": { "$ref": "#/components/schemas/DeviceLineType", "description": "Indicates if the line is acting as a primary line or a shared line for this device." }, "hoteling": { "$ref": "#/components/schemas/HotelingRequest", "description": "Hoteling login settings, which are available when the device is the owner's primary device and device type is PRIMARY. Hoteling login settings are set at the owner level." }, "owner": { "$ref": "#/components/schemas/deviceOwner", "description": "Owner of device." }, "activationState": { "$ref": "#/components/schemas/ActivationStates", "description": "Activation state of device." } } }, "DeviceType": { "type": "string", "enum": [ "MPP", "ATA", "GENERIC_SIP", "ESIM", "ROOM_OS", "MOBILE", "DESK_PHONE" ], "description": " * `MPP` - Cisco Multiplatform Phone\n * `ATA` - Analog Telephone Adapters\n * `GENERIC_SIP` - GENERIC Session Initiation Protocol\n * `ESIM` - Esim Supported Webex Go\n * `ROOM_OS` - Cisco Webex Room OS and the Room Series device\n * `MOBILE` - Mobile\n * `DESK_PHONE` - Desk Phone\n" }, "jobIdResponseObject": { "type": "object", "required": [ "name", "id", "jobType", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "operationType", "sourceLocationId", "targetLocationId", "sourceLocationName", "targetLocationName", "counts" ], "properties": { "name": { "type": "string", "description": "Job name." }, "id": { "type": "string", "description": "Unique identifier of the job." }, "jobType": { "type": "string", "description": "Job type." }, "trackingId": { "type": "string", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "description": "Unique identifier to identify the instance of the job." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/JobExecutionStatusObject" }, "description": "Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job." }, "latestExecutionStatus": { "type": "string", "description": "Indicates the most recent status (STARTING, STARTED, COMPLETED, FAILED) of the job at the time of invocation." }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS" ], "description": "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n" }, "operationType": { "type": "string", "description": "Indicates the operation type that was carried out." }, "sourceLocationId": { "type": "string", "description": "Unique location identifier for which the job was run." }, "targetLocationId": { "type": "string", "description": "Unique location identifier for which the numbers have been moved." }, "sourceLocationName": { "type": "string", "description": "The location name for which the job was run." }, "targetLocationName": { "type": "string", "description": "The location name for which the numbers have been moved." }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." } } }, "location": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw", "description": "Location identifier associated with the members." }, "name": { "type": "string", "example": "MainOffice", "description": "Location name associated with the member." } } }, "mppObject": { "type": "object", "required": [ "pnacEnabled", "audioCodecPriority", "backlightTimer", "background", "cdpEnabled", "defaultLoggingLevel", "dndServicesEnabled", "acd", "shortInterdigitTimer", "longInterdigitTimer", "lineKeyLabelFormat", "lineKeyLEDPattern", "lldpEnabled", "mppUserWebAccessEnabled", "multicast", "enhancedMulticast", "offHookTimer", "phoneLanguage", "poeMode", "qosEnabled", "screenTimeout", "usbPortsEnabled", "vlan", "wifiNetwork", "callHistory", "contacts", "webexMeetingsEnabled", "volumeSettings", "cfExpandedSoftKey", "httpProxy", "bluetooth", "passThroughPortEnabled", "userPasswordOverrideEnabled", "activeCallFocusEnabled", "peerFirmwareEnabled", "noiseCancellation", "voiceFeedbackAccessibilityEnabled", "dialAssistEnabled", "callsPerLine", "nightlyResyncEnabled", "missedCallNotificationEnabled", "softKeyLayout", "backgroundImage8875", "backlightTimer68XX78XX", "allowMonitorLinesEnabled" ], "properties": { "pnacEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the PNAC of MPP object is enabled or not." }, "audioCodecPriority": { "$ref": "#/components/schemas/MppAudioCodecPriorityObject", "description": "Choose up to three predefined codec priority options available for your region." }, "backlightTimer": { "$ref": "#/components/schemas/BacklightTimerObject", "description": "Choose the length of time (in minutes) for the phone's backlight to remain on." }, "background": { "type": "object", "properties": { "image": { "$ref": "#/components/schemas/BackgroundImage" }, "customUrl": { "type": "string" } } }, "displayNameFormat": { "$ref": "#/components/schemas/DisplayNameSelection", "description": "The display name that appears on the phone screen." }, "cdpEnabled": { "type": "boolean", "description": "Allows you to enable/disable CDP for local devices." }, "defaultLoggingLevel": { "$ref": "#/components/schemas/DefaultLoggingLevelObject", "description": "Choose the desired logging level for an MPP devices." }, "dndServicesEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Do-Not-Disturb capabilities for Multi-Platform Phones." }, "acd": { "$ref": "#/components/schemas/AcdObject", "description": "Holds the Acd object value." }, "shortInterdigitTimer": { "type": "number", "example": 14, "description": "Indicates the short inter digit timer value." }, "longInterdigitTimer": { "type": "number", "example": 16, "description": "Indicates the long inter digit timer value.." }, "lineKeyLabelFormat": { "$ref": "#/components/schemas/LineKeyLabelSelection", "description": "Line key labels define the format of what's shown next to line keys." }, "lineKeyLEDPattern": { "$ref": "#/components/schemas/LineKeyLEDPattern", "description": "LED patterns define lighting schemes for the line keys on the MPP devices. Note that this parameter is not supported on the MPP 8875" }, "lldpEnabled": { "type": "boolean", "description": "Enable/disable Link Layer Discovery Protocol for local devices." }, "mppUserWebAccessEnabled": { "type": "boolean", "example": true, "description": "Enable/disable user-level access to the web interface of Multi-Platform Phones." }, "multicast": { "type": "array", "items": { "type": "string", "example": "[\"192.86.108.226:22\"]" }, "description": "Select up to 10 Multicast Group URLs (each with a unique Listening Port)." }, "enhancedMulticast": { "$ref": "#/components/schemas/EnhancedMulticastObject", "description": "Specify the enhanced multicast settings for the MPP device." }, "offHookTimer": { "type": "number", "example": 30, "description": "Specify the amount of time (in seconds) that a phone can remain off-hook." }, "phoneLanguage": { "$ref": "#/components/schemas/PhoneLanguage", "description": "Select the language for your MPP phone. Setting this overrides the default language setting in place for your provisioned location." }, "poeMode": { "$ref": "#/components/schemas/PoeMode", "description": "Enable/disable the Power-Over-Ethernet mode for Multi-Platform Phones." }, "qosEnabled": { "type": "boolean", "example": true, "description": "Allows you to enable/disable tagging of packets from the local device to the Webex Calling platform." }, "screenTimeout": { "$ref": "#/components/schemas/ScreenTimeoutObject", "description": "Specify the amount of inactive time needed (in seconds) before the phone's screen saver activates." }, "usbPortsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the use of the USB ports on Multi-Platform phones." }, "vlan": { "$ref": "#/components/schemas/MppVlanObject", "description": "Specify a numeric Virtual LAN ID for devices." }, "wifiNetwork": { "$ref": "#/components/schemas/WifiNetworkObject", "description": "Specify the Wi-Fi SSID and password for wireless-enabled MPP phones." }, "callHistory": { "$ref": "#/components/schemas/CallHistoryMethod", "description": "Specify the call history information to use. Only applies to user devices." }, "contacts": { "$ref": "#/components/schemas/DirectoryMethod", "description": "Specify the directory services to use." }, "webexMeetingsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the availability of the webex meetings functionality from the phone." }, "volumeSettings": { "$ref": "#/components/schemas/VolumeSettingsObject", "description": "Specify all volume level values on the phone." }, "cfExpandedSoftKey": { "$ref": "#/components/schemas/CallForwardExpandedSoftKey", "description": "Specify the call forward expanded soft key behavior." }, "httpProxy": { "$ref": "#/components/schemas/HttpProxyObject", "description": "Specify HTTP Proxy values." }, "bluetooth": { "$ref": "#/components/schemas/BluetoothObject", "description": "Enable/disable the visibility of the bluetooth menu on the MPP device." }, "passThroughPortEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the use of the PC passthrough ethernet port on supported phone models." }, "userPasswordOverrideEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the ability for an end user to set a local password on the phone to restrict local access to the device." }, "activeCallFocusEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the default screen behavior when inbound calls are received." }, "peerFirmwareEnabled": { "type": "boolean", "example": true, "description": "Enable/disable peer firmware sharing." }, "noiseCancellation": { "$ref": "#/components/schemas/NoiseCancellationObject", "description": "Enable/disable local noise cancellation on active calls from the device." }, "voiceFeedbackAccessibilityEnabled": { "type": "boolean", "example": true, "description": "Enable/disable visibility of the Accessibility Voice Feedback menu on the MPP device." }, "dialAssistEnabled": { "type": "boolean", "example": true, "description": "Enable/disable availability of dial assist feature on the phone." }, "callsPerLine": { "type": "number", "example": 9, "description": "Specify the number of calls per unique line appearance on the phone." }, "nightlyResyncEnabled": { "type": "boolean", "example": true, "description": "Enable/disable automatic nightly configuration resync of the MPP device." }, "missedCallNotificationEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the visual indication of missed calls." }, "softKeyLayout": { "$ref": "#/components/schemas/SoftKeyLayoutObject", "description": "Specify the softkey layout per phone menu state." }, "backgroundImage8875": { "$ref": "#/components/schemas/BackgroundImageColor", "description": "Specify the image option for the MPP 8875 phone background." }, "backlightTimer68XX78XX": { "$ref": "#/components/schemas/BacklightTimer68XX", "description": "Specify the use of the backlight feature on 6800 nad 7800 series devices." }, "allowMonitorLinesEnabled": { "type": "boolean", "description": "Enable/disable monitoring for MPP non-primary device." }, "iceEnabled": { "type": "boolean", "example": true, "description": "Enable/disable SIP media streams to go directly between phones on the same local network." } } }, "mppObjectDevice": { "type": "object", "required": [ "pnacEnabled", "audioCodecPriority", "backlightTimer", "background", "cdpEnabled", "defaultLoggingLevel", "dndServicesEnabled", "acd", "shortInterdigitTimer", "longInterdigitTimer", "lineKeyLabelFormat", "lineKeyLEDPattern", "lldpEnabled", "mppUserWebAccessEnabled", "multicast", "enhancedMulticast", "offHookTimer", "phoneLanguage", "poeMode", "qosEnabled", "screenTimeout", "usbPortsEnabled", "usbPorts", "vlan", "wifiNetwork", "callHistory", "contacts", "webexMeetingsEnabled", "volumeSettings", "cfExpandedSoftKey", "httpProxy", "bluetooth", "passThroughPortEnabled", "userPasswordOverrideEnabled", "activeCallFocusEnabled", "peerFirmwareEnabled", "noiseCancellation", "voiceFeedbackAccessibilityEnabled", "dialAssistEnabled", "callsPerLine", "nightlyResyncEnabled", "missedCallNotificationEnabled", "softKeyLayout", "backgroundImage8875", "backlightTimer68XX78XX", "allowMonitorLinesEnabled" ], "properties": { "pnacEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the PNAC of MPP object is enabled or not." }, "audioCodecPriority": { "$ref": "#/components/schemas/MppAudioCodecPriorityObjectDevice", "description": "Choose up to three predefined codec priority options available for your region." }, "backlightTimer": { "$ref": "#/components/schemas/BacklightTimerObjectDevice", "description": "Choose the length of time (in minutes) for the phone's backlight to remain on." }, "background": { "type": "object", "properties": { "image": { "$ref": "#/components/schemas/BackgroundImage" }, "customUrl": { "type": "string" } } }, "displayNameFormat": { "$ref": "#/components/schemas/DisplayNameSelection", "description": "The display name that appears on the phone screen." }, "cdpEnabled": { "type": "boolean", "description": "Allows you to enable/disable CDP for local devices." }, "defaultLoggingLevel": { "$ref": "#/components/schemas/DefaultLoggingLevelObject", "description": "Choose the desired logging level for an MPP devices." }, "dndServicesEnabled": { "type": "boolean", "example": true, "description": "Enable/disable Do-Not-Disturb capabilities for Multi-Platform Phones." }, "acd": { "$ref": "#/components/schemas/AcdObjectDevice", "description": "Holds the Acd object value." }, "shortInterdigitTimer": { "type": "number", "example": 14, "description": "Indicates the short inter digit timer value." }, "longInterdigitTimer": { "type": "number", "example": 16, "description": "Indicates the long inter digit timer value.." }, "lineKeyLabelFormat": { "$ref": "#/components/schemas/LineKeyLabelSelection", "description": "Line key labels define the format of what's shown next to line keys." }, "lineKeyLEDPattern": { "$ref": "#/components/schemas/LineKeyLEDPattern", "description": "LED patterns define lighting schemes for the line keys on the MPP devices. Note that this parameter is not supported on the MPP 8875" }, "lldpEnabled": { "type": "boolean", "description": "Enable/disable Link Layer Discovery Protocol for local devices." }, "mppUserWebAccessEnabled": { "type": "boolean", "example": true, "description": "Enable/disable user-level access to the web interface of Multi-Platform Phones." }, "multicast": { "type": "array", "items": { "type": "string", "example": "[\"192.86.108.226:22\"]" }, "description": "Select up to 10 Multicast Group URLs (each with a unique Listening Port)." }, "enhancedMulticast": { "$ref": "#/components/schemas/EnhancedMulticastObject", "description": "Specify the enhanced multicast settings for the MPP device." }, "offHookTimer": { "type": "number", "example": 30, "description": "Specify the amount of time (in seconds) that a phone can remain off-hook." }, "phoneLanguage": { "$ref": "#/components/schemas/PhoneLanguage", "description": "Select the language for your MPP phone. Setting this overrides the default language setting in place for your provisioned location." }, "poeMode": { "$ref": "#/components/schemas/PoeMode", "description": "Enable/disable the Power-Over-Ethernet mode for Multi-Platform Phones." }, "qosEnabled": { "type": "boolean", "example": true, "description": "Allows you to enable/disable tagging of packets from the local device to the Webex Calling platform." }, "screenTimeout": { "$ref": "#/components/schemas/ScreenTimeoutObject", "description": "Specify the amount of inactive time needed (in seconds) before the phone's screen saver activates." }, "usbPortsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the use of the USB ports on Multi-Platform phones." }, "usbPorts": { "$ref": "#/components/schemas/UsbPortsObject", "description": "By default the Side USB port is enabled to support KEMs and other peripheral devices. Use the option to disable use of this port." }, "vlan": { "$ref": "#/components/schemas/MppVlanObjectDevice", "description": "Specify a numeric Virtual LAN ID for devices." }, "wifiNetwork": { "$ref": "#/components/schemas/WifiNetworkObjectDevice", "description": "Specify the Wi-Fi SSID and password for wireless-enabled MPP phones." }, "callHistory": { "$ref": "#/components/schemas/CallHistoryMethod", "description": "Specify the call history information to use. Only applies to user devices." }, "contacts": { "$ref": "#/components/schemas/DirectoryMethod", "description": "Specify the directory services to use." }, "webexMeetingsEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the availability of the webex meetings functionality from the phone." }, "volumeSettings": { "$ref": "#/components/schemas/VolumeSettingsObject", "description": "Specify all volume level values on the phone." }, "cfExpandedSoftKey": { "$ref": "#/components/schemas/CallForwardExpandedSoftKey", "description": "Specify the call forward expanded soft key behavior." }, "httpProxy": { "$ref": "#/components/schemas/HttpProxyObjectDevice", "description": "Specify HTTP Proxy values." }, "bluetooth": { "$ref": "#/components/schemas/BluetoothObjectDevice", "description": "Enable/disable the visibility of the bluetooth menu on the MPP device." }, "passThroughPortEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the use of the PC passthrough ethernet port on supported phone models." }, "userPasswordOverrideEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the ability for an end user to set a local password on the phone to restrict local access to the device." }, "activeCallFocusEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the default screen behavior when inbound calls are received." }, "peerFirmwareEnabled": { "type": "boolean", "example": true, "description": "Enable/disable peer firmware sharing." }, "noiseCancellation": { "$ref": "#/components/schemas/NoiseCancellationObject", "description": "Enable/disable local noise cancellation on active calls from the device." }, "voiceFeedbackAccessibilityEnabled": { "type": "boolean", "example": true, "description": "Enable/disable visibility of the Accessibility Voice Feedback menu on the MPP device." }, "dialAssistEnabled": { "type": "boolean", "example": true, "description": "Enable/disable availability of dial assist feature on the phone." }, "callsPerLine": { "type": "number", "example": 9, "description": "Specify the number of calls per unique line appearance on the phone." }, "nightlyResyncEnabled": { "type": "boolean", "example": true, "description": "Enable/disable automatic nightly configuration resync of the MPP device." }, "missedCallNotificationEnabled": { "type": "boolean", "example": true, "description": "Enable/disable the visual indication of missed calls." }, "softKeyLayout": { "$ref": "#/components/schemas/SoftKeyLayoutObject", "description": "Specify the softkey layout per phone menu state." }, "backgroundImage8875": { "$ref": "#/components/schemas/BackgroundImageColor", "description": "Specify the image option for the MPP 8875 phone background." }, "backlightTimer68XX78XX": { "$ref": "#/components/schemas/BacklightTimer68XXDevice", "description": "Specify the use of the backlight feature on 6800 nad 7800 series devices." }, "allowMonitorLinesEnabled": { "type": "boolean", "description": "Enable/disable monitoring for MPP non-primary device." }, "iceEnabled": { "type": "boolean", "example": true, "description": "Enable/disable SIP media streams to go directly between phones on the same local network." } } }, "placeDeviceList": { "type": "object", "required": [ "devices", "maxDeviceCount", "maxOwnedDeviceCount" ], "properties": { "devices": { "type": "array", "items": { "$ref": "#/components/schemas/placeDevices" }, "description": "Array of devices associated with a workspace." }, "maxDeviceCount": { "type": "number", "description": "Maximum number of devices a workspace can be assigned to." }, "maxOwnedDeviceCount": { "type": "number", "description": "Maximum number of devices a workspace can own." } } }, "placeDevices": { "type": "object", "required": [ "id", "model", "primaryOwner", "type", "hoteling", "owner", "activationState" ], "properties": { "id": { "type": "string", "description": "Unique identifier for a device." }, "description": { "type": "array", "items": { "type": "string" }, "description": "Comma separated array of tags used to describe device." }, "model": { "type": "string", "description": "Identifier for device model." }, "mac": { "type": "string", "description": "MAC address of device." }, "ipAddress": { "type": "string", "description": "IP address of device." }, "primaryOwner": { "type": "boolean", "description": "Indicates whether the person or the workspace is the owner of the device and points to a primary Line/Port of the device." }, "type": { "$ref": "#/components/schemas/LineType", "description": "Indicates if the line is acting as a primary line or a shared line for this device." }, "hoteling": { "$ref": "#/components/schemas/Hoteling", "description": "Indicates Hoteling details of a device." }, "owner": { "$ref": "#/components/schemas/deviceOwner", "description": "Owner of the device." }, "activationState": { "$ref": "#/components/schemas/DeviceActivationStates", "description": "Activation state of a device." } } }, "wifiObject": { "type": "object", "required": [ "audioCodecPriority", "ldap", "webAccess", "phoneSecurityPwd" ], "properties": { "audioCodecPriority": { "$ref": "#/components/schemas/WifiAudioCodecPriorityObject", "description": "Choose up to three predefined codec priority options available for your region." }, "ldap": { "$ref": "#/components/schemas/LdapObject", "description": "Set the values needed to enable use of the LDAP service on the phone." }, "webAccess": { "$ref": "#/components/schemas/WebAccessObject", "description": "Set the availability of the local end user web access for an 840/860 WiFi phone." }, "phoneSecurityPwd": { "type": "string", "example": "phoneSecurityPwd", "description": "Set the local security password on an 840/860 WiFi phone." } } }, "wifiObjectDevice": { "type": "object", "required": [ "audioCodecPriority", "ldap", "webAccess", "phoneSecurityPwd" ], "properties": { "audioCodecPriority": { "$ref": "#/components/schemas/WifiAudioCodecPriorityObjectDevice", "description": "Choose up to three predefined codec priority options available for your region." }, "ldap": { "$ref": "#/components/schemas/LdapObjectDevice", "description": "Set the values needed to enable use of the LDAP service on the phone." }, "webAccess": { "$ref": "#/components/schemas/WebAccessObject", "description": "Set the availability of the local end user web access for an 840/860 WiFi phone." }, "phoneSecurityPwd": { "type": "string", "example": "phoneSecurityPwd", "description": "Set the local security password on an 840/860 WiFi phone." } } }, "GetLineKeyTemplateResponse": { "type": "object", "required": [ "id", "templateName", "deviceModel", "modelDisplayName", "userReorderEnabled", "lineKeys" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS81NzVhMWY3Zi03MjRkLTRmZGUtODk4NC1mNjNhNDljMzYxZmQ", "description": "Unique identifier for the Line Key Template." }, "templateName": { "type": "string", "example": "Basic Template", "description": "Name of the Line Key Template." }, "deviceModel": { "type": "string", "example": "'DMS Cisco 6821'", "description": "The Device Model for which the Line Key Template is applicable." }, "modelDisplayName": { "type": "string", "example": "Cisco 6821", "description": "The friendly display name used to represent the device model in Control Hub." }, "userReorderEnabled": { "type": "boolean", "description": "Indicates whether user can reorder the line keys." }, "lineKeys": { "type": "array", "items": { "$ref": "#/components/schemas/ProgrammableLineKeys" }, "description": "Contains a mapping of Line Keys and their corresponding actions." } } }, "LineKeyType": { "type": "string", "enum": [ "PRIMARY_LINE", "SHARED_LINE", "MONITOR", "CALL_PARK_EXTENSION", "SPEED_DIAL", "OPEN", "CLOSED", "MODE_MANAGEMENT" ], "description": " * `PRIMARY_LINE` - PRIMARY_LINE is the user's primary extension. This is the default assignment for Line Key Index 1 and cannot be modified.\n * `SHARED_LINE` - Shows the appearance of other users on the owner's phone.\n * `MONITOR` - Enables User and Call Park monitoring.\n * `CALL_PARK_EXTENSION` - Enables the configure layout feature in Control Hub to set call park extension implicitly.\n * `SPEED_DIAL` - Allows users to reach a telephone number, extension or a SIP URI.\n * `OPEN` - An open key will automatically take the configuration of a monitor button starting with the first open key. These buttons are also usable by the user to configure speed dial numbers on these keys.\n * `CLOSED` - Button not usable but reserved for future features.\n * `MODE_MANAGEMENT` - Allows users to manage call forwarding for features via schedule-based routing.\n" }, "ApplyLineKeyTemplateJobList": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ApplyLineKeyTemplateJobDetails" }, "description": "List of Apply Line Key Template jobs." } } }, "ApplyLineKeyTemplateJobDetails": { "type": "object", "required": [ "name", "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "percentageComplete", "updatedCount", "advisoryCount" ], "properties": { "name": { "type": "string", "description": "Job name." }, "id": { "type": "string", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "description": "Unique identifier to identify the instance of the job." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/JobExecutionStatusObject" }, "description": "Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job." }, "latestExecutionStatus": { "type": "string", "description": "Indicates the most recent status (`STARTING`, `STARTED`, `COMPLETED`, `FAILED`) of the job at the time of invocation." }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS" ], "description": "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n" }, "percentageComplete": { "type": "integer", "description": "Indicates the progress of the job." }, "updatedCount": { "type": "integer", "description": "Number of job steps completed." }, "advisoryCount": { "type": "integer", "description": "Number of job steps completed with advisories." } } }, "ApplyLineKeyTemplateJobErrors": { "type": "object", "required": [ "trackingId" ], "properties": { "trackingId": { "type": "string", "description": "Unique identifier to track the HTTP requests." }, "error": { "$ref": "#/components/schemas/ErrorMessageObject", "description": "Description of errors in the job." } } }, "LineKeyTemplateAdvisoryTypes": { "type": "object", "properties": { "moreSharedAppearancesEnabled": { "type": "boolean", "example": true, "description": "Refine search to apply changes to devices that contain the warning \"More shared/virtual line appearances than shared/virtual lines requested\"." }, "fewSharedAppearancesEnabled": { "type": "boolean", "example": true, "description": "Refine search to apply changes to devices that contain the warning \"More shared/virtual lines requested than shared/virtual line appearances\"." }, "moreMonitorAppearancesEnabled": { "type": "boolean", "example": true, "description": "Refine search to apply changes to devices that contain the warning \"More monitored line appearances than monitored lines in the user's monitoring list\"." }, "moreCPEAppearancesEnabled": { "type": "boolean", "example": true, "description": "Refine search to apply changes to devices that contain the warning \"More call park extension line appearances than call park extensions in user's monitoring list\"." }, "moreModeManagementAppearancesEnabled": { "type": "boolean", "example": true, "description": "Refine search to apply changes to devices that contain the warning \"More mode management lines configured for the device\". The default value is false." } } }, "PostApplyLineKeyTemplateRequest": { "type": "object", "required": [ "action", "templateId" ], "properties": { "action": { "type": "string", "enum": [ "APPLY_TEMPLATE", "APPLY_DEFAULT_TEMPLATES" ], "description": "Line key Template action to perform.\n * `APPLY_TEMPLATE` - Used to apply LinekeyTemplate to devices.\n * `APPLY_DEFAULT_TEMPLATES` - Used to reset devices to its default Linekey Template configurations.\n" }, "templateId": { "type": "string", "example": "Y2lzY29zcGFyazovL1VTL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM=", "description": "`templateId` is required for `APPLY_TEMPLATE` action." }, "locationIds": { "type": "array", "items": { "type": "string" }, "description": "Used to search for devices only in the given locations." }, "excludeDevicesWithCustomLayout": { "type": "boolean", "description": "Indicates whether to exclude devices with custom layout." }, "includeDeviceTags": { "type": "array", "items": { "type": "string" }, "description": "Include devices only with these tags." }, "excludeDeviceTags": { "type": "array", "items": { "type": "string" }, "description": "Exclude devices with these tags." }, "advisoryTypes": { "$ref": "#/components/schemas/LineKeyTemplateAdvisoryTypes", "description": "Refine search with advisories." } } }, "PostLineKeyTemplateRequest": { "type": "object", "required": [ "templateName", "deviceModel", "lineKeys" ], "properties": { "templateName": { "type": "string", "example": "template for 8845", "description": "Name of the Line Key Template." }, "deviceModel": { "type": "string", "example": "DMS Cisco 8845", "description": "The model of the device for which the Line Key Template is applicable. The corresponding device model display name sometimes called the product name, can also be used to specify the model." }, "userReorderEnabled": { "type": "boolean", "example": true, "description": "User Customization Enabled." }, "lineKeys": { "type": "array", "items": { "$ref": "#/components/schemas/ProgrammableLineKeys" }, "description": "Contains a mapping of Line Keys and their corresponding actions." } } }, "ProgrammableLineKeys": { "type": "object", "required": [ "lineKeyIndex", "lineKeyType", "sharedLineIndex" ], "properties": { "lineKeyIndex": { "type": "number", "example": 2, "description": "An index representing a Line Key. Index starts from 1 representing the first key on the left side of the phone." }, "lineKeyType": { "$ref": "#/components/schemas/LineKeyType", "description": "The action that would be performed when the Line Key is pressed." }, "lineKeyLabel": { "type": "string", "example": "Help Line", "description": "This is applicable only when the lineKeyType is `SPEED_DIAL`." }, "lineKeyValue": { "type": "string", "example": "5646", "description": "Applicable only when the `lineKeyType` is `SPEED_DIAL`. Value must be a valid telephone number, ext, or SIP URI (format: `user@host` using A-Z,a-z,0-9,-_ .+ for `user` and `host`)." }, "sharedLineIndex": { "type": "number", "example": 4, "description": "Shared line index is the line label number of the shared or virtual line assigned in the configured lines. Since you can add multiple appearances of the same shared or virtual line on a phone, entering the index number assigns the respective line to a line key. This is applicable only when the `lineKeyType` is SHARED_LINE. `sharedLineIndex` starts at 1 and increments by one for each shared line." } } }, "PutLineKeyTemplateRequest": { "type": "object", "required": [ "lineKeys" ], "properties": { "userReorderEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the user can reorder the line keys." }, "lineKeys": { "type": "array", "items": { "$ref": "#/components/schemas/ProgrammableLineKeys" }, "description": "List of line keys that are being updated." } } }, "lineKeyTemplatesResponse": { "type": "object", "required": [ "id", "templateName", "deviceModel", "modelDisplayName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL1VTL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM=", "description": "Unique identifier for the Line Key Template." }, "templateName": { "type": "string", "example": "template for 8845", "description": "Name of the Line Key Template." }, "deviceModel": { "type": "string", "example": "DMS Cisco 8845", "description": "The Device Model for which the Line Key Template is applicable." }, "modelDisplayName": { "type": "string", "example": "Cisco 8845", "description": "The friendly display name used to represent the device model in Control Hub." } } }, "GetThirdPartyDeviceObject": { "type": "object", "required": [ "manufacturer", "managedBy", "id", "ip", "model", "upgradeChannelEnabled" ], "properties": { "manufacturer": { "type": "string", "example": "THIRD_PARTY", "description": "Manufacturer of the device." }, "managedBy": { "type": "string", "example": "CUSTOMER", "description": "Device manager(s)." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "description": "A unique identifier for the device." }, "ip": { "type": "string", "example": "100.110.120.130", "description": "The current IP address of the device." }, "mac": { "type": "string", "example": "11223344AAFF", "description": "The unique address for the network adapter." }, "model": { "type": "string", "example": "DMS Cisco 8811", "description": "A model type of the device." }, "activationState": { "$ref": "#/components/schemas/ActivationStates", "description": "Activation state of the device. This field is only populated for a device added by a unique activation code generated by Control Hub for use with Webex." }, "description": { "type": "array", "items": { "type": "string", "example": "device description" }, "description": "Comma-separated array of tags used to describe the device." }, "upgradeChannelEnabled": { "type": "boolean", "example": true, "description": "Enabled / disabled status of the upgrade channel." }, "owner": { "type": "object", "required": [ "sipUserName" ], "properties": { "sipUserName": { "type": "string", "example": "392829", "description": "SIP authentication user name for the owner of the device." }, "linePort": { "type": "string", "example": "lg1_sias10_cpapi16004_LGU@64941297.int10.bcld.webex.com", "description": "Identifies a device endpoint in standalone mode or a SIP URI public identity in IMS mode." } } }, "proxy": { "type": "object", "properties": { "outboundProxy": { "type": "string", "example": "hs17.hosted-int.bcld.webex.com", "description": "Outgoing server which the phone should use for all SIP requests. Not set if the response has no body." } } } } }, "PutThirdPartyDevice": { "type": "object", "required": [ "sipPassword" ], "properties": { "sipPassword": { "type": "string", "example": "Test4Password123&", "description": "Password to be updated." } } }, "DeviceLayout": { "type": "object", "required": [ "layoutMode", "lineKeys" ], "properties": { "layoutMode": { "$ref": "#/components/schemas/LayoutMode", "description": "Defines the layout mode of the device, i.e. DEFAULT or CUSTOM." }, "userReorderEnabled": { "type": "boolean", "example": true, "description": "If `true`, user customization is enabled." }, "lineKeys": { "type": "array", "items": { "$ref": "#/components/schemas/ProgrammableLineKeys" }, "description": "Contains a mapping of Line Keys and their corresponding actions." }, "kemModuleType": { "$ref": "#/components/schemas/KemModuleType", "description": "Type of KEM module." }, "kemKeys": { "type": "array", "items": { "$ref": "#/components/schemas/KEMKeys" }, "description": "Contains a mapping of KEM Keys and their corresponding actions. For KEM keys not included in the request, they will be set to OPEN." } } }, "KEMKeys": { "type": "object", "required": [ "kemModuleIndex", "kemKeyIndex", "kemKeyType", "sharedLineIndex" ], "properties": { "kemModuleIndex": { "type": "number", "example": 1, "description": "An index representing a KEM Module. The Index starts from 1 representing the first KEM Module." }, "kemKeyIndex": { "type": "number", "example": 1, "description": "An index representing a KEM Key. The Index starts from 1 representing the first key on the left side of the phone." }, "kemKeyType": { "$ref": "#/components/schemas/LineKeyType", "description": "The action that would be performed when the KEM Key is pressed." }, "kemKeyLabel": { "type": "string", "example": "Office", "description": "Applicable only when the kemKeyType is `SPEED_DIAL`." }, "kemKeyValue": { "type": "string", "example": "213457", "description": "Applicable only when the `lineKeyType` is `SPEED_DIAL`. Value must be a valid telephone number, ext, or SIP URI (format: `user@host` using A-Z,a-z,0-9,-_ .+ for `user` and `host`)." }, "sharedLineIndex": { "type": "number", "example": 4, "description": "Shared line index is the line label number of the shared or virtual line assigned in the configured lines. Since you can add multiple appearances of the same shared or virtual line on a phone, entering the index number assigns the respective line to a line key. This is applicable only when the `lineKeyType` is SHARED_LINE. `sharedLineIndex` starts at 1 and increments by one for each shared line." } } }, "LayoutMode": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": " * `DEFAULT` - Default layout mode when a new device is added.\n * `CUSTOM` - Enables a device to have its custom layout.\n" }, "RebuildPhonesPostRequest": { "type": "object", "required": [ "locationId" ], "properties": { "locationId": { "type": "string", "description": "Unique identifier of the location." } } }, "RebuildPhonesList": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RebuildPhonesJob" }, "description": "List of rebuild phones jobs." } } }, "RebuildPhonesJob": { "type": "object", "required": [ "name", "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "target", "percentageComplete" ], "properties": { "name": { "type": "string", "example": "rebuildphones", "description": "Name of the job which in this case, is `rebuildphones`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wNjZkOTQzNC1kODEyLTQzODItODVhMC00MjBlOTFlODg3ZTY", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ROUTERGW_1d458245-ee34-48c8-8ed6-92ea16ed48aa", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81MDRhZmQ1YS0zODRiLTQ0NjYtYTJlNC05Y2ExZjUwMDRlYWQ", "description": "Unique identifier of the user who has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "description": "Unique identifier of the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "description": "Unique identifier of the customer for which the job was run." }, "instanceId": { "type": "number", "example": 428989, "description": "Unique identifier to identify the instance of the job." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/JobExecutionStatusObject" }, "description": "Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job." }, "latestExecutionStatus": { "$ref": "#/components/schemas/LatestExecutionStatus", "description": "Indicates the most recent status of the job at the time of invocation." }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS" ], "description": "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n" }, "target": { "type": "string", "example": "LOCATION", "description": "Indicates the target entity, i.e. LOCATION." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzQ0Y2UwNDBhLTEzNmMtNDc3NS1hMjIzLTY5OTczYmEyYWNhYw", "description": "Unique identifier of a location." }, "percentageComplete": { "type": "integer", "example": 10, "description": "Indicates the progress of the job." }, "deviceCount": { "type": "number", "example": 10, "description": "Count of number of devices rebuilt." } } }, "EnhancedMulticastObject": { "type": "object", "required": [ "multicastList" ], "properties": { "xmlAppUrl": { "type": "string", "example": "http://127.0.0.1:8080/", "description": "Specify the URL for the XML application." }, "multicastList": { "type": "array", "items": { "$ref": "#/components/schemas/MulticastObject" }, "description": "Specify up to 10 multicast group URLs each with a unique listening port, an XML application URL, and a timeout." } } }, "MulticastObject": { "type": "object", "required": [ "hostAndPort", "hasXmlAppUrl" ], "properties": { "hostAndPort": { "type": "string", "example": "224.0.0.0:22", "description": "Specify the multicast group URL and listening port." }, "hasXmlAppUrl": { "type": "boolean", "example": true, "description": "Specify whether the multicast group URL has an XML application URL." }, "xmlAppTimeout": { "type": "number", "example": 10, "description": "Specify the timeout for the XML application." } } }, "listBackgroundImagesObject": { "type": "object", "required": [ "backgroundImageUrl", "fileName" ], "properties": { "backgroundImageUrl": { "type": "string", "example": "\"/dms/Cisco_Phone_Background/background001\"", "description": "The URL of the image file." }, "fileName": { "type": "string", "example": "CompanyLogoBlue", "description": "The name of the image file." } } }, "deleteImageResponseObject": { "type": "object", "required": [ "fileName", "result" ], "properties": { "fileName": { "type": "string", "example": "CompanyLogoBlue", "description": "The name of the image file." }, "result": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "number", "example": 400, "description": "The status of the deletion." }, "error": { "type": "object", "required": [ "message", "errorCode" ], "properties": { "message": { "type": "string", "example": "The image could not be deleted.", "description": "The error message." }, "errorCode": { "type": "number", "example": 4305, "description": "The error code." } }, "description": "The error message if the deletion failed." } }, "description": "The result of the deletion." } } }, "deleteImageResponseSuccessObject": { "type": "object", "required": [ "fileName", "result" ], "properties": { "fileName": { "type": "string", "example": "CompanyLogoBlue", "description": "The name of the image file." }, "result": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "number", "example": 200, "description": "The status of the deletion." } }, "description": "The result of the deletion." } } }, "deleteImageRequestObject": { "type": "object", "required": [ "fileName" ], "properties": { "fileName": { "type": "string", "example": "CompanyLogoBlue", "description": "The name of the image file to be deleted." }, "forceDelete": { "type": "boolean", "example": true, "description": "Flag to force delete the image. When `forceDelete` = true, if any device, location, or org level custom background URL is configured with the `backgroundImageURL` containing the filename being deleted, the background image is set to `None`." } } }, "userDeviceCount": { "type": "object", "required": [ "totalDeviceCount", "applicationsCount" ], "properties": { "totalDeviceCount": { "type": "number", "example": 3, "description": "The total count of devices associated with the user as a sum of:\n\n- Count of total primary physical devices.\n\n- Count of Webex-Team system device endpoints.\n\n- Count of 1 for any or all applications present." }, "applicationsCount": { "type": "number", "example": 4, "description": "The total count of applications associated with the user." } } }, "DeviceDynamicSettingsValidationSchemaGet": { "type": "object", "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%G711U_ORDER%", "friendlyName": "voice.codecPref.G711Mu", "tooltip": "Tag tooltip.", "level": [ "location", "device" ], "validationRule": { "type": "int", "min": 0, "max": 10, "increment": 1 } } ] }, "properties": { "tags": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceTag" }, "description": "Array of device settings tags with their validation rules." } } }, "DeviceDynamicSettingsSettingsGroupsGet": { "type": "object", "example": { "settingsGroups": [ { "path": "Voice.Codec Preferences", "friendlyName": "voice.codecPref.G711Mu", "tab": "Poly", "familyOrModelDisplayName": "Poly", "tags": [ { "tagBlock": [ "%G711U_ORDER%" ] } ] } ], "settingsTabs": [ "Poly", "MPP" ] }, "properties": { "settingsGroups": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceSettingsGroup" }, "description": "Array of settings groups defining structure and association of tags." }, "settingsTabs": { "type": "array", "items": { "type": "string" }, "description": "Array of settings tabs names. Can be filtered using the `includeSettingsType` parameter." } } }, "DeviceTag": { "type": "object", "properties": { "familyOrModelDisplayName": { "type": "string", "description": "The family or model name of the device to which these settings apply.", "example": "Poly" }, "tag": { "type": "string", "description": "The unique identifier for the setting.", "example": "%G711U_ORDER%" }, "friendlyName": { "type": "string", "description": "A user-friendly name for the setting. It helps to correlate the tag with the UI in settings groups.", "example": "voice.codecPref.G711Mu" }, "tooltip": { "type": "string", "description": "Explanatory text for the setting.", "example": "Tag tooltip." }, "alert": { "type": "string", "description": "Alert message related to this setting, if applicable.", "example": "Alert text." }, "level": { "type": "array", "items": { "type": "string" }, "description": "The levels at which this setting can be configured. When fetching tags or updating tags, the tag should be allowed at the level the request is made for.", "example": [ "organization", "location", "device" ] }, "validationRule": { "$ref": "#/components/schemas/ValidationRule" } } }, "DeviceSettingsGroup": { "type": "object", "properties": { "path": { "type": "string", "description": "Path of the settings group. Creates an easily navigable settings hierarchy.", "example": "Voice.Codec Preferences" }, "friendlyName": { "type": "string", "description": "Friendly name of the settings group.", "example": "voice.codecPref.G711Mu" }, "tab": { "type": "string", "description": "Tab name associated with the settings group.", "example": "Poly" }, "familyOrModelDisplayName": { "type": "string", "description": "Family or model display name associated with the settings group.", "example": "Poly" }, "tags": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceSettingsGroupTag" }, "description": "List of `tagBlock` objects associated with the settings group." } } }, "DeviceSettingsGroupTag": { "type": "object", "properties": { "tagBlock": { "type": "array", "items": { "type": "string" }, "description": "Array of tags associated with the settings group.", "example": [ "%G711U_ORDER%" ] } } }, "ValidationRule": { "type": "object", "description": "Validation rules and constraints for device setting values.", "properties": { "type": { "type": "string", "description": "The data type of the setting. Possible values are `string`, `integer`, `boolean`, `enum` , `password` or `network`.", "example": "\"int\"" }, "values": { "type": "array", "items": { "type": "string" }, "description": "Possible values for `enum` or `boolean` types.", "example": [ "0", "1", "2", "NumberOnly" ] }, "min": { "type": "integer", "description": "Minimum value for numeric types.", "example": 0 }, "max": { "type": "integer", "description": "Maximum value for numeric types.", "example": 10 }, "increment": { "type": "integer", "description": "Increment value for numeric types.", "example": 1 }, "regex": { "type": "string", "description": "Regular expression pattern for string validation.", "example": "[A-Za-z0-9]+" }, "maxLength": { "type": "integer", "description": "Maximum length for string values.", "example": 255 }, "validationHint": { "type": "string", "description": "Hint to display to users about validation requirements.", "example": "5-60" } } }, "CustomerDeviceDynamicSettingsListPostRequest": { "type": "object", "properties": { "tags": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 64 }, "description": "Optional array of device tag identifiers to request settings for. Each identifier must have a length between 1 and 64 characters.", "minItems": 0 } } }, "CustomerDeviceDynamicSettingsListPostResponse": { "type": "object", "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%DO_MENU_ITEM_BACKGROUND%", "value": "#RRGGBB", "parentValue": "#FFFFFF", "parentLevel": "ORGANIZATION" } ], "lastUpdateTime": 1651396800000, "updateInProgress": false }, "properties": { "tags": { "type": "array", "items": { "$ref": "#/components/schemas/CustomerDevicePostTag" }, "description": "Array of device setting values matching the requested tags." }, "lastUpdateTime": { "type": "integer", "format": "int64", "description": "Timestamp of the last update to these settings." }, "updateInProgress": { "type": "boolean", "description": "Flag indicating if an update to these settings is currently in progress." } } }, "CustomerDevicePostTag": { "type": "object", "properties": { "familyOrModelDisplayName": { "type": "string", "description": "The `familyOrModelDisplayName` of the device.", "example": "Poly" }, "tag": { "type": "string", "description": "The unique identifier for the setting.", "example": "%G711U_ORDER%" }, "value": { "type": "string", "description": "The current value of the setting at `ORGANIZATION` level. If the tag value is not set at the `ORGANIZATION` level, this field will not be included in the response.", "example": "4" }, "parentValue": { "type": "string", "description": "The value inherited from the immediate parent level above `ORGANIZATION`. It can be `SYSTEM_DEFAULT`, `REGIONAL_DEFAULT`, or `ORGANIZATION`, depending on which level the setting is actually configured at. If there is no parent level for this tag, this field will not be included in the response.", "example": "3" }, "parentLevel": { "$ref": "#/components/schemas/DynamicDeviceSettingsCustomerParentLevel" } } }, "DynamicDeviceSettingsCustomerParentLevel": { "type": "string", "enum": [ "SYSTEM_DEFAULT", "REGIONAL_DEFAULT", "ORGANIZATION" ], "description": "The level from which the tag's parent value is inherited. If there is no parent level for this tag, this field will not be included in the response." }, "LocationDeviceDynamicSettingsListPostRequest": { "type": "object", "properties": { "tags": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 64 }, "description": "Optional array of device tag identifiers to request settings for. Each identifier must have a length between 1 and 64 characters.", "minItems": 0 } } }, "LocationDeviceDynamicSettingsListPostResponse": { "type": "object", "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%G711U_ORDER%", "value": "4", "parentValue": "3", "parentLevel": "ORGANIZATION" } ], "lastUpdateTime": 1651396800000, "updateInProgress": false }, "properties": { "tags": { "type": "array", "items": { "$ref": "#/components/schemas/LocationDevicePostResponseTag" }, "description": "Array of device setting values matching the requested tags." }, "lastUpdateTime": { "type": "integer", "format": "int64", "description": "Timestamp of the last update to these settings." }, "updateInProgress": { "type": "boolean", "description": "Flag indicating if an update to these settings is currently in progress." } } }, "LocationDevicePostResponseTag": { "type": "object", "properties": { "familyOrModelDisplayName": { "type": "string", "description": "The `familyOrModelDisplayName` of the device.", "example": "Poly" }, "tag": { "type": "string", "description": "The unique identifier for the setting.", "example": "%G711U_ORDER%" }, "value": { "type": "string", "description": "The current value of the setting at `LOCATION` level. If the tag value is not set at the `LOCATION` level, this field will not be included in the response.", "example": "4" }, "parentValue": { "type": "string", "description": "The value inherited from the immediate parent level above `LOCATION`. It can be `SYSTEM_DEFAULT`, `REGIONAL_DEFAULT`, `ORGANIZATION`, or `LOCATION`, depending on which level the setting is actually configured at. If there is no parent level for this tag, this field will not be included in the response.", "example": "3" }, "parentLevel": { "$ref": "#/components/schemas/LocationParentLevel" } } }, "LocationParentLevel": { "type": "string", "enum": [ "SYSTEM_DEFAULT", "REGIONAL_DEFAULT", "ORGANIZATION", "LOCATION" ], "description": "The level from which the tag's parent value is inherited. If there is no parent level for this tag, this field will not be included in the response." }, "DeviceDynamicSettingsListPostRequest": { "type": "object", "properties": { "tags": { "type": "array", "items": { "type": "string" }, "description": "Optional array of tag identifiers representing specific settings to fetch. If omitted or provided as an empty array, all settings for the device will be returned.", "minItems": 0 } } }, "DeviceDynamicSettingsListPostResponse": { "type": "object", "required": [ "tags" ], "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%G711U_ORDER%", "value": "4", "parentValue": "3", "parentLevel": "ORGANIZATION" } ], "lastUpdateTime": 1651396800000 }, "properties": { "tags": { "type": "array", "items": { "$ref": "#/components/schemas/DevicePostResponseTag" }, "description": "Array of device setting values matching the requested tags." }, "lastUpdateTime": { "type": "integer", "format": "int64", "description": "Timestamp of the last update to these settings." } } }, "DeviceDynamicSettingsPutRequest": { "type": "object", "properties": { "tags": { "type": "array", "items": { "$ref": "#/components/schemas/DevicePutItem" }, "description": "Optional array of `tag` identifiers representing specific settings to update. If omitted or provided as an empty array, the request will have no effect.", "minItems": 0 } } }, "DevicePostResponseTag": { "type": "object", "required": [ "familyOrModelDisplayName", "tag" ], "properties": { "familyOrModelDisplayName": { "type": "string", "description": "The display name of the device family or model associated with the returned tag.", "example": "Poly" }, "tag": { "type": "string", "description": "The unique identifier for the device setting.", "example": "%G711U_ORDER%" }, "value": { "type": "string", "description": "The current value of the setting at device level. If the tag value is not set at the device level, this field will not be included in the response.", "example": "4" }, "parentValue": { "type": "string", "description": "The setting value at the next available `parentLevel`. It is used if `value` is not set and is omitted when no parent level exists for the tag.", "example": "3" }, "parentLevel": { "$ref": "#/components/schemas/DeviceParentLevel" } } }, "DeviceParentLevel": { "type": "string", "enum": [ "SYSTEM_DEFAULT", "REGIONAL_DEFAULT", "ORGANIZATION", "LOCATION" ], "description": "The level from which the tag's parent value is inherited. If there is no parent level for this tag, this field will not be included in the response." }, "DevicePutItem": { "type": "object", "required": [ "tag", "action" ], "properties": { "tag": { "type": "string", "description": "The unique identifier for the setting to be updated.", "example": "%G711U_ORDER%", "minLength": 1, "maxLength": 64 }, "action": { "$ref": "#/components/schemas/Action" }, "value": { "type": "string", "description": "The new value to set for the setting. This field is required when `action` is `SET` and ignored otherwise.", "example": "4", "minLength": 1, "maxLength": 256 } } }, "Action": { "type": "string", "enum": [ "SET", "CLEAR" ], "description": "The action to perform on the setting. When action is `SET`, `tag` is updated to specified value. When action is `CLEAR`, the `tag` value at device level is removed, and the device will inherit the value from the parent level, if it exists.", "example": "SET" }, "PostDynamicDeviceSettingsJobResponse": { "type": "object", "required": [ "name", "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "jobExecutionStatus", "latestExecutionStatus", "latestExecutionExitCode", "target", "percentageComplete" ], "example": { "name": "dynamicdevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wNjZkOTQzNC1kODEyLTQzODItODVhMC00MjBlOTFlODg3ZTY", "trackingId": "ROUTERGW_1d458245-ee34-48c8-8ed6-92ea16ed48aa", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81MDRhZmQ1YS0zODRiLTQ0NjYtYTJlNC05Y2ExZjUwMDRlYWQ", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "instanceId": 428989, "jobExecutionStatus": [ { "id": 0, "startTime": "2025-05-13T10:59:44.106Z", "lastUpdated": "2025-05-13T10:59:44.106Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "createdTime": "2025-05-13T10:50:01.352Z", "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "STARTED", "latestExecutionExitCode": "UNKNOWN", "target": "CUSTOMER", "locationId": "", "percentageComplete": 100 }, "properties": { "name": { "type": "string", "example": "dynamicdevicesettings", "description": "Name of the job which in this case, is `dynamicdevicesettings`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wNjZkOTQzNC1kODEyLTQzODItODVhMC00MjBlOTFlODg3ZTY", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ROUTERGW_1d458245-ee34-48c8-8ed6-92ea16ed48aa", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81MDRhZmQ1YS0zODRiLTQ0NjYtYTJlNC05Y2ExZjUwMDRlYWQ", "description": "Unique identifier of the user who has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "description": "Unique identifier of the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lYTRiZTEyNS00Y2ZjLTQ5OTItOGMwNi00Y2U4Mzc2ZDU4MmE", "description": "Unique identifier of the customer for which the job was run." }, "instanceId": { "type": "number", "example": 428989, "description": "Unique identifier to identify the instance of the job." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/JobExecutionStatusObject" }, "description": "Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job." }, "latestExecutionStatus": { "$ref": "#/components/schemas/LatestExecutionStatus" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS" ], "description": "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n" }, "target": { "type": "string", "enum": [ "CUSTOMER", "LOCATION" ], "example": "LOCATION", "description": "Indicates the target entity." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzQ0Y2UwNDBhLTEzNmMtNDc3NS1hMjIzLTY5OTczYmEyYWNhYw", "description": "Unique identifier of a location." }, "locationName": { "type": "string", "example": "Brampton", "description": "Name of the location. Included only when `target` is `LOCATION`." }, "percentageComplete": { "type": "integer", "example": 10, "description": "Indicates the progress of the job." } } }, "LatestExecutionStatus": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED" ], "description": " * `STARTING` - Indicates the job has started.\n * `STARTED` - Indicates the job is in progress.\n * `COMPLETED` - Indicates the job has completed.\n * `FAILED` - Indicates the job has failed.\n" }, "JobExecutionStatusObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "number", "example": 436272, "description": "Unique identifier that identifies each instance of the job." }, "startTime": { "type": "string", "example": "2025-05-13T10:59:44.106Z", "description": "Step execution start time in UTC format." }, "endTime": { "type": "string", "example": "2025-05-13T10:59:44.692Z", "description": "Step execution end time in UTC format." }, "lastUpdated": { "type": "string", "example": "2025-05-13T10:59:44.854Z", "description": "Last updated time (in UTC format) post one of the step execution completion." }, "statusMessage": { "type": "string", "example": "STARTING", "description": "Displays status for overall steps that are part of the job." }, "exitCode": { "type": "string", "example": "UNKNOWN", "description": "Exit Code for a job." }, "createdTime": { "type": "string", "example": "2024-03-13T14:57:04.678Z", "description": "Job creation time in UTC format." }, "timeElapsed": { "type": "string", "example": "PT0S", "description": "Time lapsed since the job execution started." }, "stepExecutionStatuses": { "type": "array", "items": { "$ref": "#/components/schemas/stepExecutionStatusesObject" }, "description": "Status of each step within a job." } } }, "JobExecutionStatusObject1": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "number", "description": "Unique identifier that identifies each instance of the job." }, "lastUpdated": { "type": "string", "description": "Last updated time (in UTC format) post one of the step execution completion." }, "statusMessage": { "type": "string", "description": "Displays status for overall steps that are part of the job." }, "exitCode": { "type": "string", "description": "Exit Code for a job." }, "createdTime": { "type": "string", "description": "Job creation time in UTC format." }, "timeElapsed": { "type": "string", "description": "Time lapsed since the job execution started." } } }, "stepExecutionStatusesObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "number", "example": 1998857, "description": "Unique identifier that identifies each step in a job." }, "startTime": { "type": "string", "example": "2024-03-13T03:58:36.886Z", "description": "Step execution start time in UTC format." }, "endTime": { "type": "string", "example": "2024-03-13T03:58:48.471Z", "description": "Step execution end time in UTC format." }, "lastUpdated": { "type": "string", "example": "2024-03-13T03:58:48.472Z", "description": "Last updated time for a step in UTC format." }, "statusMessage": { "type": "string", "example": "COMPLETED", "description": "Displays the status of a step." }, "exitCode": { "type": "string", "example": "COMPLETED", "description": "Exit Code for a step." }, "name": { "type": "string", "example": "dynamicdevicesettingsUpdate", "description": "Name of different steps the job goes through." }, "timeElapsed": { "type": "string", "example": "PT11.585S", "description": "Time lapsed since the step execution started." } } }, "PostDynamicSettingsUpdateStartJobRequest": { "type": "object", "required": [ "tags" ], "properties": { "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "If present, the requested settings will be updated to devices under this location." }, "tags": { "type": "array", "items": { "$ref": "#/components/schemas/DynamicSettingsUpdateJobDevicePostItem" }, "description": "Array of tag identifiers for settings to be updated. Each setting is identified by a `familyOrModelDisplayName` and `tag`. Supports updating multiple settings across different device families in a single request.", "minItems": 1 } } }, "DynamicSettingsUpdateJobDevicePostItem": { "type": "object", "required": [ "familyOrModelDisplayName", "tag", "action" ], "properties": { "familyOrModelDisplayName": { "type": "string", "description": "The `familyOrModelDisplayName` of the device to which the tag applies. This value must exist in the validation schema.", "example": "Poly", "minLength": 1, "maxLength": 40 }, "tag": { "type": "string", "description": "The unique identifier for the setting to be updated.", "example": "%G711U_ORDER%", "minLength": 1, "maxLength": 64 }, "action": { "$ref": "#/components/schemas/Action" }, "value": { "type": "string", "description": "The new value to set for the setting. This field is required when `action` is `SET` and ignored otherwise.", "example": "4", "minLength": 1, "maxLength": 256 } } }, "DynamicDeviceSettingsJobListResponse": { "type": "object", "required": [ "items" ], "example": { "items": [ { "name": "dynamicdevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg", "percentageComplete": 100 } ] }, "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/PostDynamicDeviceSettingsJobResponse" }, "description": "Lists all jobs for the customer of type `dynamicdevicesettings` in order of most recent one to oldest one irrespective of its status." } } }, "ErrorResponseObject": { "type": "object", "example": { "items": [ { "itemNumber": 0, "error": { "key": "error.key", "message": [ { "description": "Error description", "code": "1001", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMzZjBlZDFiLWQ1YjctNGI4Mi1iMzIzLTg4ZTFmODMzNGNmMw" } ] }, "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137" } ] }, "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ItemObject" }, "description": "Array of error items for failed operations.", "example": [ { "itemNumber": 0, "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137" } ] } } }, "ItemObject": { "type": "object", "properties": { "itemNumber": { "type": "number", "description": "Index of error number." }, "trackingId": { "type": "string", "description": "Unique identifier to track the HTTP requests." }, "error": { "$ref": "#/components/schemas/ErrorObject" } } }, "ErrorObject": { "type": "object", "description": "Error details object containing error information.", "properties": { "key": { "type": "string", "description": "HTTP error code." }, "message": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorMessageObject" }, "description": "Message string with further error information." } } }, "ErrorMessageObject": { "type": "object", "properties": { "description": { "type": "string", "description": "Error message." }, "code": { "type": "string", "description": "Internal error code." }, "locationId": { "type": "string", "description": "Error messages describing the location ID in which the error occurs." } } }, "supportedDevicesObject": { "type": "object", "required": [ "devices", "upgradeChannelList" ], "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, "kemLinesSupportEnabled": false, "kemModuleType": [ "KEM_20_KEYS" ], "upgradeChannelEnabled": false, "additionalPrimaryLineAppearancesEnabled": false, "basicEmergencyNomadicEnabled": false, "customizedBehaviorsEnabled": false, "allowConfigurePortsEnabled": false, "customizableLineLabelEnabled": false, "supportsLinePortReorderingEnabled": false, "portNumberSupportEnabled": false, "t38Enabled": false, "callDeclinedEnabled": false, "touchScreenPhone": false, "numberOfLineKeyButtons": 0, "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, "kemLinesSupportEnabled": false, "upgradeChannelEnabled": false, "additionalPrimaryLineAppearancesEnabled": true, "basicEmergencyNomadicEnabled": false, "customizedBehaviorsEnabled": true, "allowConfigurePortsEnabled": false, "customizableLineLabelEnabled": false, "supportsLinePortReorderingEnabled": true, "portNumberSupportEnabled": false, "t38Enabled": false, "callDeclinedEnabled": true, "touchScreenPhone": false, "numberOfLineKeyButtons": 0, "deviceSettingsConfiguration": "WEBEX_CALLING_DYNAMIC_DEVICE_CONFIGURATION", "allowHotelingHostEnabled": true, "supportsLogCollection": "NONE", "supportsApplyChangesEnabled": true, "allowConfigureLinesEnabled": true, "allowConfigurePhoneSettingsEnabled": true, "supportsHotlineEnabled": true } ] }, "properties": { "upgradeChannelList": { "type": "array", "items": { "$ref": "#/components/schemas/UpgradeChannelObject" }, "description": "List of available upgrade channels.\n * `STABLE` - These are standard stable releases.\n * `STABLE_DELAY` - These are delayed stable releases.\n * `PREVIEW` - These are Preview/pre-release versions.\n * `BETA` - These are Beta testing versions.\n * `TESTING` - These are testing versions.\n" }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceObject" }, "description": "List of supported devices." } } }, "UpgradeChannelObject": { "type": "string", "enum": [ "STABLE", "STABLE_DELAY", "PREVIEW", "BETA", "TESTING" ] }, "DeviceObject": { "type": "object", "required": [ "model", "displayName", "type", "manufacturer", "managedBy", "supportedFor", "onboardingMethod", "allowConfigureLayoutEnabled", "numberOfLinePorts", "kemSupportEnabled", "kemLinesSupportEnabled", "upgradeChannelEnabled", "additionalPrimaryLineAppearancesEnabled", "basicEmergencyNomadicEnabled", "customizedBehaviorsEnabled", "allowConfigurePortsEnabled", "customizableLineLabelEnabled", "supportsLinePortReorderingEnabled", "portNumberSupportEnabled", "t38Enabled", "callDeclinedEnabled", "touchScreenPhone", "numberOfLineKeyButtons", "allowHotelingHostEnabled", "supportsApplyChangesEnabled", "allowConfigureLinesEnabled", "allowConfigurePhoneSettingsEnabled", "supportsHotlineEnabled" ], "properties": { "model": { "type": "string", "example": "2N Customer Managed", "description": "Model name of the device." }, "displayName": { "type": "string", "example": "2N Customer Managed", "description": "Display name of the device." }, "familyDisplayName": { "type": "string", "example": "Poly", "description": "The display name of the device family." }, "type": { "$ref": "#/components/schemas/TypeObject" }, "manufacturer": { "$ref": "#/components/schemas/ManufacturerObject" }, "managedBy": { "$ref": "#/components/schemas/ManagedByObject" }, "supportedFor": { "type": "array", "items": { "$ref": "#/components/schemas/SupportedForObject" }, "description": "List of places the device is supported for." }, "onboardingMethod": { "type": "array", "items": { "$ref": "#/components/schemas/OnboardingMethodObject" }, "description": "Onboarding method." }, "allowConfigureLayoutEnabled": { "type": "boolean", "description": "Enables / Disables layout configuration for devices." }, "numberOfLinePorts": { "type": "number", "description": "Number of port lines." }, "kemSupportEnabled": { "type": "boolean", "example": true, "description": "Indicates whether Kem support is enabled or not." }, "kemModuleCount": { "type": "number", "description": "Module count." }, "kemLinesSupportEnabled": { "type": "boolean", "description": "Enables / disables Kem lines support." }, "kemModuleType": { "type": "array", "items": { "$ref": "#/components/schemas/KemModuleType" }, "description": "Key expansion module type of the device." }, "upgradeChannelEnabled": { "type": "boolean", "description": "Enables / Disables the upgrade channel." }, "defaultUpgradeChannel": { "type": "string", "description": "The default upgrade channel." }, "additionalPrimaryLineAppearancesEnabled": { "type": "boolean", "description": "Enables / disables the additional primary line appearances." }, "basicEmergencyNomadicEnabled": { "type": "boolean", "description": "Enables / disables Basic emergency nomadic." }, "customizedBehaviorsEnabled": { "type": "boolean", "description": "Enables / disables customized behavior support on devices." }, "allowConfigurePortsEnabled": { "type": "boolean", "description": "Enables / disables configuring port support on device." }, "customizableLineLabelEnabled": { "type": "boolean", "description": "Enables / disables customizable line label." }, "supportsLinePortReorderingEnabled": { "type": "boolean", "description": "Enables / disables support line port reordering." }, "portNumberSupportEnabled": { "type": "boolean", "description": "Enables / disables port number support." }, "t38Enabled": { "type": "boolean", "description": "Enables / disables T.38." }, "callDeclinedEnabled": { "type": "boolean", "description": "Enables / disables call declined." }, "touchScreenPhone": { "type": "boolean", "description": "Supports touch screen on device." }, "numberOfLineKeyButtons": { "type": "number", "description": "Number of line key buttons for a device." }, "deviceSettingsConfiguration": { "$ref": "#/components/schemas/DeviceSettingsConfigurationObject" }, "allowHotelingHostEnabled": { "type": "boolean", "description": "Enables / disables hoteling host." }, "supportsLogCollection": { "$ref": "#/components/schemas/SupportsLogCollectionObject" }, "supportsApplyChangesEnabled": { "type": "boolean", "description": "Enables / disables apply changes." }, "allowConfigureLinesEnabled": { "type": "boolean", "description": "Enables / disables configure lines." }, "allowConfigurePhoneSettingsEnabled": { "type": "boolean", "description": "Enables / disables configure phone settings." }, "supportsHotlineEnabled": { "type": "boolean", "description": "Enables / disables hotline support." }, "maxNumberOfLineAppearances": { "type": "number", "description": "Maximum number of line appearances available on the device." } } }, "TypeObject": { "type": "string", "enum": [ "MPP", "ATA", "GENERIC_SIP", "ESIM", "DESK_PHONE" ], "description": " * `MPP` - Cisco Multiplatform Phone\n * `ATA` - Analog Telephone Adapters\n * `GENERIC_SIP` - GENERIC Session Initiation Protocol\n * `ESIM` - Esim Supported Webex Go\n * `DESK_PHONE` - Desk Phone\n" }, "ManagedByObject": { "type": "string", "enum": [ "CISCO", "CUSTOMER" ], "description": " * `CISCO` - Devices managed by Cisco.\n * `CUSTOMER` - Devices managed by a customer that are approved by a Cisco account manager to be enabled for provisioning in the control hub.\n" }, "ManufacturerObject": { "type": "string", "enum": [ "CISCO", "THIRD_PARTY" ], "description": " * `CISCO` - Devices manufactured by Cisco.\n * `THIRD_PARTY` - Devices manufactured by a third-party that are approved by a Cisco account manager to be enabled for provisioning in the control hub.\n" }, "SupportedForObject": { "type": "string", "enum": [ "PEOPLE", "PLACE" ] }, "OnboardingMethodObject": { "type": "string", "enum": [ "MAC_ADDRESS", "ACTIVATION_CODE", "NONE" ] }, "SupportsLogCollectionObject": { "type": "string", "enum": [ "NONE", "CISCO_PRT", "CISCO_ROOMOS" ], "description": " * `NONE` - Devices which does not support log collection.\n * `CISCO_PRT` - Devices which supports Cisco PRT log collection.\n * `CISCO_ROOMOS` - Devices which supports Cisco RoomOS log collection.\n" }, "DeviceSettingsConfigurationObject": { "type": "string", "enum": [ "WEBEX_CALLING_DEVICE_CONFIGURATION", "WEBEX_DEVICE_CONFIGURATION", "WEBEX_CALLING_DYNAMIC_DEVICE_CONFIGURATION", "NONE" ], "description": " * `WEBEX_CALLING_DEVICE_CONFIGURATION` - Devices which supports Webex Calling Device Settings Configuration.\n * `WEBEX_DEVICE_CONFIGURATION` - Devices which supports Webex Device Settings Configuration.\n * `WEBEX_CALLING_DYNAMIC_DEVICE_CONFIGURATION` - Devices which supports Webex Calling dynamic Settings Configuration.\n * `NONE` - Devices does not support any configuration.\n" }, "KemModuleType": { "type": "string", "enum": [ "KEM_14_KEYS", "KEM_18_KEYS", "KEM_20_KEYS" ], "description": " * `KEM_14_KEYS` - Extension module has 14 line keys that can be configured.\n * `KEM_18_KEYS` - Extension module has 18 line keys that can be configured.\n * `KEM_20_KEYS` - Extension module has 20 line keys that can be configured.\n" }, "ActivationCode": { "type": "object", "properties": { "code": { "type": "string", "example": "5414011256173816", "description": "The activation code." }, "expiryTime": { "type": "string", "example": "2017-11-16T23:38:03.215Z", "description": "The date and time the activation code expires." } } }, "Device": { "type": "object", "properties": { "correlationId": { "type": "string", "example": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "description": "An internal ID that is associated with each join." }, "deviceType": { "type": "string", "example": "webex_meeting_center_mac", "description": "The type of the device." }, "audioType": { "type": "string", "enum": [ "pstn", "voip", "inactive" ], "description": "The audio type that the participant is using.\n * `pstn` - `PSTN`\n * `voip` - `VoIP`\n * `inactive` - The participant is not connected to audio.\n" }, "joinedTime": { "type": "string", "example": "2019-04-23T17:31:00.000Z", "description": "The time the device joined the meeting. If the field is non-existent or shows `1970-01- 01T00:00:00.000Z` the meeting may be still ongoing and the `joinedTime` will be filled in after the meeting ended. If you need real-time joined events, please refer to the webhooks guide." }, "leftTime": { "type": "string", "example": "2019-04-23T17:32:00.000Z", "description": "The time the device left the meeting, `leftTime` is the exact moment when a specific devi ce left the meeting. If the field is non-existent or shows `1970-01-01T00:00:00.000Z` the meeting may be still ongoing and the `leftTime` will be filled in after the meeting ended. If you need real-time left events, please refer to the webhooks guide." }, "durationSecond": { "type": "number", "example": 60, "description": "The duration in seconds the device stayed in the meeting." }, "callType": { "type": "string", "enum": [ "callIn", "callBack" ], "description": "The PSTN call type in which the device joined the meeting.\n * `callIn` - Connect audio by dialing a toll or toll-free phone number provided by the meeting.\n * `callBack` - Connect audio by dialing out a phone number from the meeting.\n" }, "phoneNumber": { "type": "string", "example": "745273328", "description": "The PSTN phone number from which the device joined the meeting. Only [compliance officer](/docs/compliance#compliance) can retrieve the `phoneNumber`. The meeting host and admin users cannot retrieve it. NOTE: The `phoneNumber` will be returned after the meeting ends; it is not returned while the meeting is in progress." } } }, "DeviceCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Device" } } } }, "NetworkConnectivityType": { "type": "string", "enum": [ "wired" ], "description": "The current network connectivity for the device.", "example": "wired" }, "DeviceConnectionStatus": { "type": "string", "enum": [ "connected", "disconnected", "connected_with_issues", "offline_expired", "activating", "unknown", "offline_deep_sleep" ], "description": "The connection status of the device.", "example": "connected" }, "DevicePermissions": { "type": "string", "enum": [ "xapi:readonly", "xapi:all" ] }, "DeviceCapabilities": { "type": "string", "enum": [ "xapi" ] }, "ManagedBy": { "type": "string", "enum": [ "CISCO", "CUSTOMER", "PARTNER" ], "description": "Entity managing the device configuration.", "example": "CISCO" }, "DevicePlatform": { "type": "string", "enum": [ "cisco", "microsoftTeamsRoom" ], "description": "Device platform", "example": "cisco" }, "MaintenanceMode": { "type": "string", "enum": [ "off", "on", "upcoming" ], "example": "off", "description": "The maintenance mode of the device." }, "Event": { "type": "object", "required": [ "id", "resource", "type", "actorId", "orgId", "created", "data" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5UL2JiY2ViMWFkLTQzZjEtM2I1OC05MTQ3LWYxNGJiMGM0ZDE1NAo", "description": "The unique identifier for the event." }, "resource": { "$ref": "#/components/schemas/EventResourceEnum", "description": "The type of resource in the event." }, "type": { "$ref": "#/components/schemas/EventTypeEnum", "description": "The action which took place in the event." }, "appId": { "type": "string", "example": "null", "description": "The ID of the application for the event." }, "actorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "description": "The ID of the person who performed the action." }, "orgId": { "type": "string", "example": "OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "description": "The ID of the organization for the event." }, "created": { "type": "string", "example": "2016-05-16T21:34:59.324Z", "description": "The date and time of the event." }, "data": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvOTJkYjNiZTAtNDNiZC0xMWU2LThhZTktZGQ1YjNkZmM1NjVk" }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0" }, "roomType": { "type": "string", "example": "group" }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jZTg2MWZiYS02ZTJmLTQ5ZjktOWE4NC1iMzU0MDA4ZmFjOWU" }, "text": { "type": "string", "example": "PROJECT UPDATE - A new project plan has been published on Box: http://box.com/s/lf5vj. The PM for this project is Mike C. and the Engineering Manager is Jane W." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, "personEmail": { "type": "string", "example": "matt@example.com" }, "meetingId": { "type": "string", "example": "16ce696f75844d24b2d4fab04b4419af_I_183979003076423608" }, "creatorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YWE2ZGE5OS0xYzdlLTQ4MWItODY3YS03MWY2NTIwNDk0MzM" }, "host": { "type": "object", "properties": {}, "description": "The meeting's host data." }, "attendees": { "type": "array", "items": {}, "description": "Common Identity (CI) authenticated meeting attendees." }, "transcriptionEnabled": { "type": "string", "example": "yes", "description": "Indicates whether or not the Voice Assistant was enabled during the meeting. If `true` a transcript should be available a couple minutes after the meeting ended at the [meetingTranscripts resource](/docs/api/v1/meeting-transcripts)." }, "recordingEnabled": { "type": "string", "example": "yes", "description": "Indicates if recording was enabled for all or parts of the meeting. If `true` a recording should be available shortly after the meeting ended at the [recordings resource](/docs/api/v1/recordings)." }, "hasPostMeetingsChat": { "type": "string", "example": "yes", "description": "Indicates if chat messages were exchanged during the meeting in the meetings client (not the unified client). If `true` these messages can be accessed by a compliance officer at the [postMeetingsChat](/docs/api/v1/meetings-chat) resource. Meetings chat collection must be custom enabled." }, "corelationId": { "type": "string", "example": "fdda8613-d34b-424c-8c6a-44ff2e19379c", "description": "Telephony; The corelation id." }, "callType": { "type": "string", "example": "SIP_ENTERPRISE", "description": "Telephony; call types (examples `VIDEO_DIALIN`,`VIDEO_DIALOUT`,`CASCADE`,`HYBRID_CASCADE`,`PSTN_SIP`,`PSTN_DIALIN`,`PSTN_DIALOUT`,`PSTN_ONLY_DIALIN`,`PSTN_ONLY_DIALOUT`,`H323`,`H323_IP`,`SIP_ENTERPRISE`,`SIP_MOBILE`,`SIP_NATIONAL`,`SIP_INTERNATIONAL`,`SIP_EMERGENCY`,`SIP_OPERATOR`,`SIP_SHORTCODE`,`SIP_TOLLFREE`,`SIP_PREMIUM`,`SIP_URI`,`SIP_INBOUND`,`UNKNOWN`,`ZTM`,`SIP_MEETING`)." }, "userId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZjEwMTU1NC04ZGJjLTQyMmUtOGEzZC1kYTk1YTI3NWZlNzU", "description": "Telephony; user id of the CDR owner." }, "userType": { "type": "string", "example": "User", "description": "Telephony; The type of user (`User`,`Anchor`,`AutomatedAttendantBasic`,`AutomatedAttendantStandard`,`AutomatedAttendantVideo`,`BroadworksAnywhere`,`CallCenterBasic`,`CallCenterPremium`,`CallCenterStandard`,`CollaborateBridge`,`ContactCenterAdaptor`,`FindMeFollowMe`,`FlexibleSeatingHost`,`GroupCall`,`GroupPaging`,`HuntGroup`,`LocalGateway`,`MeetMeConference`,`Place`,`RoutePoint`,`SystemVoicePortal`,`VoiceMailGroup`,`VoiceMailRetrieval`,`VoiceXML`,`VirtualLine`,`Unknown`)." }, "callDirection": { "type": "string", "example": "ORIGINTATING", "description": "Telephony; `ORIGINATING` or `TERMINATING`." }, "isCallAnswered": { "type": "string", "example": "true", "description": "Telephony; indicates if the call was answered." }, "callDurationSeconds": { "type": "string", "example": "192", "description": "Telephony; duration of call in seconds." }, "callStartTime": { "type": "string", "example": "2023-02-08T06:12:43.976Z", "description": "Telephony; ISO 8601." }, "callAnswerTime": { "type": "string", "example": "2023-02-08T06:12:47.012Z", "description": "Telephony; ISO 8601." }, "callTransferTime": { "type": "string", "example": "2023-02-08T06:15:19.112Z", "description": "Telephony; ISO 8601." }, "callingNumber": { "type": "string", "example": "910481234", "description": "Telephony; originating number." }, "callingLineId": { "type": "string", "example": "211", "description": "Telephony." }, "calledNumber": { "type": "string", "example": "4089671221", "description": "Telephony; destination number." }, "calledLineId": { "type": "string", "example": "219", "description": "Telephony" }, "dialedDigits": { "type": "string", "example": "123", "description": "Telephony" }, "callRedirectingNumber": { "type": "string", "description": "Telephony" }, "callRedirectedReason": { "type": "string", "description": "Telephony" }, "created": { "type": "string", "example": "2016-05-16T21:34:59.324Z" }, "type": { "type": "string", "example": "direct", "description": "Message type `direct` or `group` message." }, "breakoutSessionId": { "type": "string", "example": "d66a4a90-4f50-11ef-bc94-f5c71646dc71", "description": "The breakout session Id in cases where the action happened in a meeting's brakout session, for example a `meetingMessage`." }, "recipients": { "type": "array", "items": { "$ref": "#/components/schemas/Recipient" }, "description": "The recipients list for directed meetingMessages." } }, "description": "The event's data representation. This object will contain the event's `resource`, such as [memberships](/docs/api/v1/memberships/get-membership-details), [messages](/docs/api/v1/messages/get-message-details), [meetings](/docs/api/v1/meetings), [meetingMessages](/docs/api/v1/meetingMessages), [tabs](/docs/api/v1/room-tabs), [rooms](/docs/api/v1/space-classifications) or [attachmentActions](/docs/api/v1/attachment-actions) at the time the event took place." } } }, "EventCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Event" } } } }, "EventResourceEnum": { "type": "string", "enum": [ "attachmentActions", "businessTexts", "call_records", "convergedRecordings", "file_transcodings", "files", "meetingMessages", "meetings", "meetingTranscripts", "memberships", "messages", "rooms", "tabs" ], "description": " * `attachmentActions` - State changed on a card attachment\n * `businessTexts` - A user sent or received a SMS message\n * `call_records` - A Webex call was made to/from a user\n * `convergedRecordings` - A Webex call was recorded for a user\n * `file_transcodings` - State change on a file preview\n * `files` - State changed on a file download\n * `meetingMessages` - State changed on a meeting message, i.e. message exchanged as part of a meeting\n * `meetings` - State change on a meeting ( here combined with type = 'ended' )\n * `meetingTranscripts` - State change on a automatic transcript resource for Webex Assistant\n * `memberships` - State changed on a memberships resource\n * `messages` - State changed on a messages resource\n * `rooms` - State changed on a space classification\n * `tabs` - State changed on a room tabs in a space\n" }, "EventTypeEnum": { "type": "string", "enum": [ "created", "updated", "deleted", "ended" ], "description": " * `created` - The resource has been created\n * `updated` - A property on the resource has been updated\n * `deleted` - The resource has been deleted\n * `ended` - The meeting has ended\n" }, "Recipient": { "type": "object", "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lOGYwOTIwOC00ZjUxLTExZWYtOTQ4My1iYTA3NjE2MzY4NmQ", "description": "The personId of the recipient" }, "personEmail": { "type": "string", "example": "johndoe@simplistic.com", "description": "The personEmail" }, "guestDisplayName": { "type": "string", "example": "John Wayne", "description": "Guests, who are unauthenticated users, have a guestDisplayName" }, "guestEmail": { "type": "string", "example": "jwayne@mailinator.com", "description": "Guests, who are unauthenticated users, have a guestEmail" } } }, "HotDeskSessionsResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/HotDesk" } } } }, "HotDesk": { "type": "object", "properties": { "sessionId": { "type": "string", "example": "Y2lzY29...", "description": "A unique identifier for a hot desk session." }, "workspaceId": { "type": "string", "example": "YL34EmB...", "description": "The workspace where the hot desk session is active." }, "personId": { "type": "string", "example": "YL34EmA...", "description": "The id of the person who initiated the hot desk session." }, "bookingStartTime": { "type": "string", "example": "2024-08-29T12:00:00Z", "description": "The start time of the booking." }, "bookingEndTime": { "type": "string", "example": "2024-08-29T20:00:00Z", "description": "The end time of the booking." } } }, "Location": { "type": "object", "required": [ "address", "countryCode", "latitude", "longitude" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9XT1JLU1BBQ0VfTE9DQVRJT04vM2E2ZmYzNzMtNjhhNy00NGU0LTkxZDYtYTI3NDYwZTBhYzVjIzUxOWY2N2E1LTlkOTktNGM2My04YTA5LWI5MTcxY2M2NmJkMQ==", "description": "Unique identifier for the location." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzA2OWEzMDY2LTgwNjMtNDI0Zi05YmE0LTBhZDdhMmYxMzNjNQ", "description": "The ID to use for this location in the [/locations API](/docs/api/v1/locations)" }, "displayName": { "type": "string", "example": "Cisco Barcelona", "description": "A friendly name for the location." }, "address": { "type": "string", "example": "Carrer de Pere IV, Barcelona, Spain", "description": "The location address." }, "countryCode": { "type": "string", "example": "ES", "description": "The location country code (ISO 3166-1)." }, "cityName": { "type": "string", "example": "Barcelona", "description": "The location city name." }, "latitude": { "type": "number", "example": 41.406615, "description": "The location latitude." }, "longitude": { "type": "number", "example": 2.200717, "description": "The location longitude." }, "notes": { "type": "string", "example": "A note about the location", "description": "Notes associated with the location." } } }, "PutCommonLocationObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Denver", "description": "The name of the location. Supports up to 256 characters, but locations enabled for Webex Calling are limited to 80 characters maximum." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone associated with this location, refer to this link (https://developer.webex.com/docs/api/guides/webex-for-broadworks-developers-guide#webex-meetings-site-timezone) for format." }, "preferredLanguage": { "type": "string", "example": "en_us", "description": "Default email language." }, "address": { "type": "object", "properties": { "address1": { "type": "string", "example": "123 Some St.", "description": "Address 1" }, "address2": { "type": "string", "example": "Suite 456", "description": "Address 2" }, "city": { "type": "string", "example": "Supercity", "description": "City" }, "state": { "type": "string", "example": "Goodstate", "description": "State code" }, "postalCode": { "type": "string", "example": "12345", "description": "Postal Code" }, "country": { "type": "string", "example": "US", "description": "ISO-3166 2-Letter Country Code." } }, "description": "The address of the location." } } }, "PostCommonLocationObject": { "type": "object", "required": [ "name", "timeZone", "preferredLanguage", "announcementLanguage", "address" ], "properties": { "name": { "type": "string", "example": "Denver", "description": "The name of the location. Supports up to 256 characters, but locations enabled for Webex Calling are limited to 80 characters maximum." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone associated with this location, refer to this link (https://developer.webex.com/docs/api/guides/webex-for-broadworks-developers-guide#webex-meetings-site-timezone) for format." }, "preferredLanguage": { "type": "string", "example": "en_us", "description": "Default email language." }, "announcementLanguage": { "type": "string", "example": "fr_fr", "description": "Location's phone announcement language." }, "address": { "type": "object", "required": [ "address1", "city", "state", "postalCode", "country" ], "properties": { "address1": { "type": "string", "example": "123 Some St.", "description": "Address 1" }, "address2": { "type": "string", "example": "Suite 456", "description": "Address 2" }, "city": { "type": "string", "example": "Supercity", "description": "City" }, "state": { "type": "string", "example": "Goodstate", "description": "State code" }, "postalCode": { "type": "string", "example": "12345", "description": "Postal Code" }, "country": { "type": "string", "example": "US", "description": "ISO-3166 2-Letter Country Code." } }, "description": "The address of the location." }, "latitude": { "type": "string", "example": "12.935784", "description": "Latitude" }, "longitude": { "type": "string", "example": "77.697332", "description": "Longitude" }, "notes": { "type": "string", "example": "123 Some St. Denver Location", "description": "Notes" } } }, "LocationsCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Location" } } } }, "Floor": { "type": "object", "required": [ "floorNumber" ], "properties": { "id": { "type": "string", "example": "xxx==", "description": "Unique identifier for the floor." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9XT1JLU1BBQ0VfTE9DQVRJT04vM2E2ZmYzNzMtNjhhNy00NGU0LTkxZDYtYTI3NDYwZTBhYzVjIzUxOWY2N2E1LTlkOTktNGM2My04YTA5LWI5MTcxY2M2NmJkMQ==", "description": "Unique identifier for the location." }, "floorNumber": { "type": "number", "example": -1, "description": "The floor number." }, "displayName": { "type": "string", "example": "The basement", "description": "The floor display name." } } }, "FloorUpdated": { "type": "object", "required": [ "floorNumber" ], "properties": { "id": { "type": "string", "example": "xxx==", "description": "Unique identifier for the floor." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9XT1JLU1BBQ0VfTE9DQVRJT04vM2E2ZmYzNzMtNjhhNy00NGU0LTkxZDYtYTI3NDYwZTBhYzVjIzUxOWY2N2E1LTlkOTktNGM2My04YTA5LWI5MTcxY2M2NmJkMQ==", "description": "Unique identifier for the location." }, "floorNumber": { "type": "number", "example": 1, "description": "The floor number." }, "displayName": { "type": "string", "example": "My custom name", "description": "The floor display name." } } }, "FloorCreationRequest": { "type": "object", "required": [ "floorNumber" ], "properties": { "floorNumber": { "type": "number", "example": -1, "description": "The floor number." }, "displayName": { "type": "string", "example": "The basement", "description": "The floor display name." } } }, "FloorUpdateRequest": { "type": "object", "required": [ "floorNumber" ], "properties": { "floorNumber": { "type": "number", "example": 1, "description": "The floor number." }, "displayName": { "type": "string", "example": "My custom name", "description": "The floor display name." } } }, "FloorCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Floor" }, "description": "An array of floor objects." } } }, "MeetingQualitiesResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MediaSessionQuality" } } } }, "MediaSessionQuality": { "type": "object", "required": [ "meetingInstanceId" ], "properties": { "meetingInstanceId": { "type": "string", "example": "e5dba9613a9d455aa49f6ffdafb6e7db_I_191395283063545470", "description": "The meeting identifier for the specific meeting instance." }, "webexUserName": { "type": "string", "example": "John Andersen", "description": "The display name of the participant of this media session." }, "webexUserEmail": { "type": "string", "example": "john.andersen@example.com", "description": "The email address of the participant of this media session." }, "joinTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this participant joined the meeting." }, "leaveTime": { "type": "string", "example": "2020-04-10T17:02:00.000Z", "description": "The date and time when this participant left the meeting." }, "joinMeetingTime": { "type": "string", "example": "5.793", "description": "The join meeting time of the participant. " }, "clientType": { "type": "string", "example": "Teams_Mobile_Client (iOS)", "description": "The type of the client (and OS) used by this media session." }, "clientVersion": { "type": "string", "example": "40.5.0.210", "description": "The version of the client used by this media session." }, "osType": { "type": "string", "example": "mac", "description": "The operating system used for the client." }, "osVersion": { "type": "string", "example": "Version 10.14.6 (Build 18G3020)", "description": "The version of the operating system used for the client." }, "hardwareType": { "type": "string", "example": "mac book", "description": "The type of hardware used to attend the meeting" }, "speakerName": { "type": "string", "example": "MacBook Pro Speakers", "description": "A description of the speaker used in the meeting." }, "networkType": { "type": "string", "enum": [ "wifi", "cellular", "ethernet", "unknown" ], "description": "The type of network." }, "localIP": { "type": "string", "example": "10.24.72.54", "description": "The local IP address of the client." }, "publicIP": { "type": "string", "example": "10.24.72.54", "description": "The public IP address of the client." }, "maskedLocalIP": { "type": "string", "example": "10.24.72.54", "description": "The masked local IP address of the client." }, "maskedPublicIP": { "type": "string", "example": "10.24.72.54", "description": "The masked public IP address of the client." }, "camera": { "type": "string", "example": "FaceTime HD Camera", "description": "A description of the camera used in the meeting." }, "microphone": { "type": "string", "example": "External Microphone", "description": "A description of the microphone used in the meeting." }, "serverRegion": { "type": "string", "example": "San Jose, USA", "description": "The server region." }, "videoMeshCluster": { "type": "string", "example": "Mesh Cluster One", "description": "The video mesh cluster name." }, "videoMeshServer": { "type": "string", "example": "server.example.com", "description": "The video mesh server name." }, "participantId": { "type": "string", "example": "8635cbf0ca1a4573b27348e560679b25_I_158174534545967299_57", "description": "Identifies the participant." }, "participantSessionId": { "type": "string", "example": "3324C9D0-9EA7-45A2-B249-5B62A384AFEF", "description": "Identifies a specific session the participant has in a given meeting." }, "videoIn": { "type": "array", "items": { "$ref": "#/components/schemas/VideoIn" }, "description": "The collection of downstream (sent to the client) video quality data." }, "videoOut": { "type": "array", "items": { "$ref": "#/components/schemas/VideoOut" }, "description": "The collection of upstream (sent from the client) video quality data." }, "audioIn": { "type": "array", "items": { "$ref": "#/components/schemas/AudioIn" }, "description": "The collection of downstream (sent to the client) audio quality data." }, "audioOut": { "type": "array", "items": { "$ref": "#/components/schemas/AudioOut" }, "description": "The collection of upstream (sent from the client) audio quality data." }, "shareIn": { "type": "array", "items": { "$ref": "#/components/schemas/ShareIn" }, "description": "The collection of downstream (sent to the client) share quality data." }, "shareOut": { "type": "array", "items": { "$ref": "#/components/schemas/ShareOut" }, "description": "The collection of upstream (sent from the client) share quality data." }, "resources": { "type": "array", "items": { "$ref": "#/components/schemas/Resources" }, "description": "Device resources such as CPU and memory." } } }, "VideoIn": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the downstream video quality data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this video session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this video session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of video packet loss, as a float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "The pixel height of the incoming video." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "The frames per second of the incoming video." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bit rate of the incoming video." }, "codec": { "type": "string", "example": "H.264 BP", "description": "The incoming video codec." }, "jitter": { "type": "array", "items": { "type": "number", "example": 170 }, "description": "The incoming video jitter." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "VideoOut": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the upstream video quality data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this video session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this video session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of video packet loss, in float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "The pixel height of the outgoing video." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "The frames per second of the outgoing video." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bit rate of the outgoing video." }, "codec": { "type": "string", "example": "H.264 BP", "description": "The outgoing video codec." }, "jitter": { "type": "array", "items": { "type": "number" }, "description": "The outgoing video jitter." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "AudioIn": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the downstream audio quality data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this audio session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this audio session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of audio packet loss, as a float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "Not applicable to audio." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "Not applicable to audio." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bitrate of the incoming audio." }, "codec": { "type": "string", "example": "Opus", "description": "The codec of the incoming audio." }, "jitter": { "type": "array", "items": { "type": "number" }, "description": "The incoming audio jitter." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "AudioOut": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the upstream audio quality data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this audio session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this audio session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of audio packet loss, as a float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "Not applicable to audio out." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "Not applicable to audio out." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bit rate of the outgoing audio." }, "codec": { "type": "string", "example": "Opus", "description": "The audio codec." }, "jitter": { "type": "array", "items": { "type": "number" }, "description": "The outgoing audio jitter." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "ShareIn": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the downstream content sharing data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this content sharing session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this content sharing session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of content sharing packet loss, as a float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "The height in pixels of the incoming share video." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "The frame rate of the incoming share video." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bit rate for the incoming share video." }, "codec": { "type": "string", "example": "H.264 BP", "description": "The codec for the incoming share video." }, "jitter": { "type": "array", "items": { "type": "number" }, "description": "The jitter for the incoming share video." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "ShareOut": { "type": "object", "properties": { "samplingInterval": { "type": "number", "example": 60, "description": "The sampling interval, in seconds, of the upstream content sharing data." }, "startTime": { "type": "string", "example": "2020-04-10T17:00:00.000Z", "description": "The date and time when this content sharing session started." }, "endTime": { "type": "string", "example": "2020-04-10T18:00:00.000Z", "description": "The date and time when this content sharing session ended." }, "packetLoss": { "type": "array", "items": { "type": "number" }, "description": "The percentage of content sharing packet loss, in float between 0.0 and 100.0, during each sampling interval." }, "latency": { "type": "array", "items": { "type": "number" }, "description": "The average latency, in milliseconds, during each sampling interval." }, "resolutionHeight": { "type": "array", "items": { "type": "number" }, "description": "The height in pixels of the outgoing share video." }, "frameRate": { "type": "array", "items": { "type": "number", "example": 25.940001 }, "description": "The frame rate of the outgoing share video." }, "mediaBitRate": { "type": "array", "items": { "type": "number" }, "description": "The bit rate of the outgoing share video." }, "codec": { "type": "string", "example": "H.264 BP", "description": "The codec of the outgoing share video." }, "jitter": { "type": "array", "items": { "type": "number" }, "description": "The jitter for the outgoing share video." }, "transportType": { "type": "string", "enum": [ "UDP", "TCP" ], "description": "The network protocol used for video transmission." } } }, "Resources": { "type": "object", "properties": { "processAverageCPU": { "type": "array", "items": { "type": "number" }, "description": "The average percent CPU for the process." }, "processMaxCPU": { "type": "array", "items": { "type": "number" }, "description": "The max percent CPU for the process." }, "systemAverageCPU": { "type": "array", "items": { "type": "number" }, "description": "The average percent CPU for the system." }, "systemMaxCPU": { "type": "array", "items": { "type": "number" }, "description": "The max percent CPU for the system." } } }, "Report": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "description": "Unique identifier for the report." }, "title": { "type": "string", "example": "Bots Activity", "description": "Name of the template to which this report belongs." }, "service": { "type": "string", "example": "Teams", "description": "The service to which the report belongs." }, "startDate": { "type": "string", "example": "2020-02-23", "description": "The data in this report belongs to dates greater than or equal to this." }, "endDate": { "type": "string", "example": "2020-03-24", "description": "The data in this report belongs to dates smaller than or equal to this." }, "siteList": { "type": "string", "example": "cisco.webex.com", "description": "The site to which this report belongs to. This only exists if the report belongs to service `Webex`." }, "created": { "type": "string", "example": "2020-03-24 17:13:39", "description": "Time of creation for this report." }, "createdBy": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "description": "The person who created the report." }, "scheduledFrom": { "type": "string", "example": "API", "description": "Whether this report was scheduled from API or Control Hub." }, "status": { "type": "string", "example": "done", "description": "Completion status of this report." }, "downloadURL": { "type": "string", "example": "https://downloadservicebts.webex.com/api?reportId=Y2lzY29zcGFyazovL3VzL1JFUE9SVC9hZDBkMjA1NzVkYTA0NWE0OGZhZDQ3ZDk3NGFiNDFmMg", "description": "The link from which the report can be downloaded." } } }, "ReportCollectionResponse": { "type": "object", "properties": { "Report Attributes": { "type": "array", "items": { "$ref": "#/components/schemas/Report" }, "description": "An array of report objects." } } }, "Template": { "type": "object", "properties": { "templateId": { "type": "string", "example": "130", "description": "Unique identifier representing a report." }, "title": { "type": "string", "example": "Calling Usage", "description": "Name of the template." }, "service": { "type": "string", "example": "Teams", "description": "The service to which the report belongs." }, "category": { "type": "string", "example": "Partner", "description": "Generated reports belong to which category." }, "maxDays": { "type": "number", "example": 31, "description": "Maximum date range for reports belonging to this template." }, "dataStartDate": { "type": "string", "example": "2024-01-01", "description": "Start date of the data in the reports belonging to this template." }, "dataEndDate": { "type": "string", "example": "2024-01-31", "description": "End date of the data in the reports belonging to this template." } } }, "TemplateCollectionResponse": { "type": "object", "properties": { "Template Collection": { "type": "array", "items": { "$ref": "#/components/schemas/Template" }, "description": "An array of template objects." } } }, "Person": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "description": "A unique identifier for the person." }, "emails": { "type": "array", "items": { "type": "string", "example": "john.andersen@example.com" }, "description": "The email addresses of the person." }, "phoneNumbers": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "work", "work_extension", "mobile", "fax" ], "description": "The type of phone number.\n * `work` - Work phone number of the person.\n * `work_extension` - Work extension of the person. For the Webex Calling person, the value will have a routing prefix along with the extension.\n * `mobile` - Mobile number of the person.\n * `fax` - FAX number of the person.\n" }, "value": { "type": "string", "example": "+1 408 526 7209", "description": "The phone number." }, "primary": { "type": "boolean", "example": true, "description": "Primary number for the person." } } }, "description": "Phone numbers for the person." }, "extension": { "type": "string", "example": "133", "description": "The Webex Calling extension for the person. Only applies to a person with a Webex Calling license." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzYzNzE1", "description": "The ID of the location for this person retrieved from BroadCloud." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The full name of the person." }, "nickName": { "type": "string", "example": "John", "description": "The nickname of the person if configured. If no nickname is configured for the person, this field will not be present." }, "firstName": { "type": "string", "example": "John", "description": "The first name of the person." }, "lastName": { "type": "string", "example": "Andersen", "description": "The last name of the person." }, "avatar": { "type": "string", "example": "https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600", "description": "The URL to the person's avatar in PNG format." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The ID of the organization to which this person belongs." }, "roles": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL1JPTEUvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of role strings representing the roles to which this admin user belongs." }, "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh,Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvOTZhYmMyYWEtM2RjYy0xMWU1LWIyNjMtMGY0NTkyYWRlZmFi" }, "description": "An array of license strings allocated to this person." }, "department": { "type": "string", "example": "Sales", "description": "The business department the user belongs to." }, "manager": { "type": "string", "example": "John Duarte", "description": "A manager identifier." }, "managerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80ZGEzYTI0OC05YjBhLTQxMDgtODU0NC1iNTQwMzEyZTU2M2E", "description": "Person ID of the manager." }, "title": { "type": "string", "example": "GM", "description": "The person's title." }, "addresses": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "example": "work", "description": "The type of address." }, "country": { "type": "string", "example": "US", "description": "The user's country." }, "locality": { "type": "string", "example": "Milpitas", "description": "The user's locality, often city." }, "region": { "type": "string", "example": "California", "description": "The user's region, often state." }, "streetAddress": { "type": "string", "example": "1099 Bird Ave.", "description": "The user's street." }, "postalCode": { "type": "string", "example": "99212", "description": "The user's postal or zip code." } } }, "description": "A person's addresses." }, "created": { "type": "string", "example": "2015-10-18T14:26:16.000Z", "description": "The date and time the person was created." }, "lastModified": { "type": "string", "example": "2015-10-18T14:26:16.000Z", "description": "The date and time the person was last changed." }, "timezone": { "type": "string", "example": "America/Denver", "description": "The time zone of the person if configured. If no timezone is configured on the account, this field will not be present." }, "lastActivity": { "type": "string", "example": "2015-10-18T14:26:16.028Z", "description": "The date and time of the person's last activity within Webex. This will only be returned for people within your organization or an organization you manage. Presence information will not be shown if the authenticated user has [disabled status sharing](https://help.webex.com/nkzs6wl/)." }, "siteUrls": { "type": "array", "items": { "type": "string", "example": "mysite.webex.com#attendee" }, "description": "One or several site names where this user has a role (host or attendee)." }, "sipAddresses": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "personal-room", "enterprise", "cloud-calling" ], "description": "The type of SIP address.\n * `personal-room` - Personal room address.\n * `enterprise` - Enterprise address.\n * `cloud-calling` - Cloud calling address.\n" }, "value": { "type": "string", "example": "testuser5@mycompany.webex.com", "description": "The SIP address." }, "primary": { "type": "boolean", "description": "Primary SIP address of the person." } } }, "description": "The user's SIP addresses. Read-only." }, "xmppFederationJid": { "type": "string", "example": "user@example.com", "description": "Identifier for intra-domain federation with other XMPP based messenger systems." }, "status": { "type": "string", "enum": [ "active", "call", "DoNotDisturb", "inactive", "meeting", "OutOfOffice", "pending", "presenting", "unknown" ], "description": "The current presence status of the person. This will only be returned for people within your organization or an organization you manage. Presence information will not be shown if the authenticated user has [disabled status sharing](https://help.webex.com/nkzs6wl/). Presence status is different from Control Hub's \"Last Service Access Time\" which indicates the last time an oAuth token was issued for this user.\n * `active` - Active within the last 10 minutes.\n * `call` - The user is in a call.\n * `DoNotDisturb` - The user has manually set their status to \"Do Not Disturb\".\n * `inactive` - Last activity occurred more than 10 minutes ago.\n * `meeting` - The user is in a meeting.\n * `OutOfOffice` - The user or a Hybrid Calendar service has indicated that they are \"Out of Office\".\n * `pending` - The user has never logged in; a status cannot be determined.\n * `presenting` - The user is sharing content.\n * `unknown` - The user’s status could not be determined.\n" }, "invitePending": { "type": "string", "enum": [ "true", "false" ], "description": "Whether or not an invite is pending for the user to complete account activation. This property is only returned if the authenticated user is an admin user for the person's organization.\n * `true` - The person has been invited to Webex but has not created an account.\n * `false` - An invite is not pending for this person.\n" }, "loginEnabled": { "type": "string", "enum": [ "true", "false" ], "description": "Whether or not the user is allowed to use Webex. This property is only returned if the authenticated user is an admin user for the person's organization.\n * `true` - The person _can_ log into Webex.\n * `false` - The person _cannot_ log into Webex.\n" }, "type": { "type": "string", "enum": [ "person", "bot", "appuser" ], "description": "The type of person account, such as person or bot.\n * `person` - Account belongs to a person.\n * `bot` - Account is a bot user.\n * `appuser` - Account is a [guest user](/docs/guest-issuer).\n" } } }, "PersonCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Person" }, "description": "An array of person objects." }, "notFoundIds": { "type": "array", "items": { "type": "string" }, "description": "An array of person IDs that could not be found." } } }, "RecordingReportSummaryObject": { "type": "object", "properties": { "recordingId": { "type": "string", "example": "4f914b1dfe3c4d11a61730f18c0f5387", "description": "A unique identifier for the recording." }, "topic": { "type": "string", "example": "John's Meeting", "description": "The recording's topic." }, "timeRecorded": { "type": "string", "example": "2019-01-27T17:40:20Z", "description": "The date and time the recording started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. the time is the record button was clicked in the meeting." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the recording." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "viewCount": { "type": "number", "example": 7, "description": "The number of times the recording was viewed." }, "downloadCount": { "type": "number", "example": 20, "description": "The number of times the recording was downloaded." } } }, "RecordingReportObject": { "type": "object", "properties": { "recordingId": { "type": "string", "example": "4f914b1dfe3c4d11a61730f18c0f5387", "description": "A unique identifier for the recording." }, "topic": { "type": "string", "example": "John's Meeting", "description": "The recording's topic." }, "name": { "type": "string", "example": "John Andersen", "description": "The name of the person who accessed the recording." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email address of the person who accessed the recording." }, "accessTime": { "type": "string", "example": "2019-01-27T17:40:20Z", "description": "The date and time the recording was accessed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "viewed": { "type": "boolean", "example": true, "description": "Whether or not the recording was viewed by the person." }, "downloaded": { "type": "boolean", "example": true, "description": "Whether or not the recording was downloaded by the person." } } }, "RecordingAchriveSummaryObject": { "type": "object", "properties": { "archiveId": { "type": "string", "example": "7d7ea5f42b921eace05386ca24ad730e_R_1000634462", "description": "A unique identifier for the meeting archive summary." }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "Recording achrive summary's service-type." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title." }, "createTime": { "type": "string", "example": "2019-01-27T17:43:24Z", "description": "The date and time in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format that when the archive was created by the system." } } }, "RecordingArchiveReportObject": { "type": "object", "properties": { "archiveId": { "type": "string", "example": "7d7ea5f42b921eace05386ca24ad730e_R_1000634462", "description": "A unique identifier for the meeting archive summary." }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "Recording achrive report's service-type." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title." }, "start": { "type": "string", "example": "2019-03-18T11:26:30Z", "description": "Start time for meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "end": { "type": "string", "example": "2019-03-18T12:26:30Z", "description": "End time for a meeting in ISO 8601 compliant format." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "participants": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveParticipant" }, "description": "The participants of the meeting archive." }, "chats": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveChat" }, "description": "The chats of the meeting archive." }, "polls": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchivePoll" }, "description": "The polls of the meeting archive." }, "qas": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveQA" }, "description": "Meeting meeting archive's Q and A." }, "systemInfos": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveSystemInfo" }, "description": "The system Information of the meeting archive, which can be only supported when serviceType is `SupportCenter`." } } }, "MeetingRecordingArchiveParticipant": { "type": "object", "properties": { "correlationId": { "type": "number", "example": 28208023, "description": "An internal ID that is associated with each join." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting participant." }, "joinedTime": { "type": "string", "example": "2022-07-20T07:01:31Z", "description": "The time the participant joined the meeting." }, "leftTime": { "type": "string", "example": "2022-07-20T07:01:31Z", "description": "The time the participant left the meeting." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting participant." } } }, "MeetingRecordingArchiveChat": { "type": "object", "properties": { "type": { "type": "string", "example": "private", "description": "Whether the type of the chat is private, public or group. Private chat is for the 1:1 chat. Public chat is for the message which is sent to all the people in the meeting. Group chat is for the message which is sent to a small group of people, like a message to the \"host and presenter\"." }, "senderName": { "type": "string", "example": "John Andersen", "description": "Display name for the sender of the chat snippet." }, "chatTime": { "type": "string", "example": "2021-07-06T09:22:34Z", "description": "Chat time for the chat snippet in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "target": { "type": "string", "example": "All Participants", "description": "Information of the receivers of the chat snippet." }, "text": { "type": "string", "example": "It's nice to meet you", "description": "The text of the chat snippet." } } }, "MeetingRecordingArchivePoll": { "type": "object", "properties": { "type": { "type": "string", "example": "single", "description": "The type of the question." }, "startTime": { "type": "string", "example": "2021-07-06T09:25:34Z", "description": "The date and time the poll started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "endTime": { "type": "string", "example": "2021-07-06T09:28:34Z", "description": "The date and time the poll ended in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "content": { "type": "object", "properties": { "questionCount": { "type": "number", "example": 10, "description": "The total number of questions." }, "userCount": { "type": "number", "example": 10, "description": "The total number of users." }, "votedUserCount": { "type": "number", "example": 3, "description": "The number of voters among users." }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchivePollQuestion" }, "description": "Poll's questions." } }, "description": "The content of the meeting archive poll;" } } }, "MeetingRecordingArchivePollQuestion": { "type": "object", "properties": { "voteUsers": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveUser" }, "description": "The voters among users." }, "question": { "type": "object", "properties": { "choiceCount": { "type": "number", "example": 3, "description": "The number of choices in the questions." }, "type": { "type": "string", "example": "single", "description": "The type of the question." }, "text": { "type": "string", "example": "Do you like this API?", "description": "The text of the question." } }, "description": "The poll's question." }, "answerSummary": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchivePollAnswerSummary" }, "description": "The answer summary of the archive poll." }, "respondents": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchivePollRespondent" }, "description": "The question's respondents." } } }, "MeetingRecordingArchiveUser": { "type": "object", "properties": { "correlationId": { "type": "number", "example": 28208023, "description": "An internal ID that is associated with each join." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting participant." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting participant." } } }, "MeetingRecordingArchivePollAnswerSummary": { "type": "object", "properties": { "totalRespondents": { "type": "number", "example": 10, "description": "The total number of people who selected this answer." }, "isCorrect": { "type": "boolean", "example": true, "description": "Whether the answer is correct." }, "text": { "type": "string", "example": "Yes, I do.", "description": "The text of the answer." }, "voteUsers": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveUser" }, "description": "The voters among users." } } }, "MeetingRecordingArchivePollRespondent": { "type": "object", "properties": { "correlationId": { "type": "number", "example": 28208023, "description": "An internal ID that is associated with the respondent's each join." }, "displayName": { "type": "string", "example": "Alex Green", "description": "Display name for the poll respondent." }, "email": { "type": "string", "example": "alex.green@example.com", "description": "Email address for the poll respondent." }, "answers": { "type": "array", "items": { "type": "string" }, "description": "An array of answers to the question." } } }, "MeetingRecordingArchiveQA": { "type": "object", "properties": { "priority": { "type": "string", "example": "NA", "description": "The priority of the Q and A." }, "type": { "type": "string", "example": "private", "description": "Whether the type of the Q and A is private, public, or group. Private Q and A is for the 1:1 chat. Public Q and A are for the message which is sent to all the people in the meeting. Group Q and A are for the message which is sent to a small group of people, like a Q and A to \"host and presenter\"." }, "displayName": { "type": "string", "example": "john.andersen@example.com`", "description": "The email of the user who asked the question." }, "questionTime": { "type": "string", "example": "2021-07-06T09:22:34Z", "description": "The date and time the question was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "target": { "type": "string", "example": "All Participants", "description": "Information of the user who asked the question." }, "question": { "type": "string", "example": "Are you ok?", "description": "The question that was asked." }, "answers": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingRecordingArchiveQAAnswer" }, "description": "Question's answers." } } }, "MeetingRecordingArchiveQAAnswer": { "type": "object", "properties": { "responseMode": { "type": "string", "example": "private", "description": "The answer's response mode." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the person who answered the question." }, "correlationId": { "type": "number", "example": 10947662, "description": "An internal ID that is associated with the answer's each join." }, "email": { "type": "string", "example": "alex.green@example.com", "description": "The email of the person who answered the question." }, "answerTime": { "type": "string", "example": "2021-07-06T09:52:34Z", "description": "The date and time the question answered in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "text": { "type": "string", "example": "Yes, I am.", "description": "The text of the answer." } } }, "MeetingRecordingArchiveSystemInfo": { "type": "object", "properties": { "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the person who accessed the meeting archive." }, "catalogs": { "type": "array", "items": { "$ref": "#/components/schemas/SystemInfoCatalog" }, "description": "The catalogs of system information." } } }, "SystemInfoCatalog": { "type": "object", "properties": { "systemSummary": { "type": "string", "example": "User Name: John{*}Operating System: Mac OS X 12.6{*}User Home Directory: /Users/John{*}Date and Time: Tue Oct 18 10:38:17 CST 2022{*}", "description": "System summary." }, "browser": { "type": "string", "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36", "description": "The browser user agent of the person who acted." }, "hardware": { "type": "string", "example": "mac book", "description": "The type of hardware that the user used to attend the meeting." }, "installedSoftware": { "type": "string", "example": "webex", "description": "The software that the user used to attend the meeting." }, "runningSoftware": { "type": "string", "example": "webex", "description": "The software the user used that is running." }, "startupPrograms": { "type": "string", "example": "Macintosh HD", "description": "Startup Programs." }, "storage": { "type": "string", "example": "16 GB 2667 MHz DDR4", "description": "The storage information of the user's device." }, "video": { "type": "string", "example": "AirPlay", "description": "The video of the user's device." }, "network": { "type": "string", "example": "Wi-Fi", "description": "The network of the user's device." }, "operatingSystem": { "type": "string", "example": "Mac OS X 10.0", "description": "The operating system of the user's device." }, "environmentVariables": { "type": "string", "example": "/usr/local/bin:$PATH", "description": "The environment variables of the user's device." }, "processes": { "type": "string", "example": "2.6 GHz 6-Core Intel Core i7", "description": "The processes of the user's device." }, "logicalDrives": { "type": "string", "example": "webapp", "description": "The logical drives of the user's device." }, "devices": { "type": "string", "example": "device1", "description": "The device of the user." }, "services": { "type": "string", "example": "Firewall", "description": "The service of the user's device." }, "systemDrivers": { "type": "string", "example": "32drivers", "description": "The system driver of the user's device." }, "signedDrivers": { "type": "string", "example": "32drivers", "description": "The sign driver system of the user's device." }, "eventViewer": { "type": "string", "example": "Screen Sharing", "description": "The event viewer of the user's device." }, "bios": { "type": "string", "example": "AwardBIOS", "description": "The basic input and output system." } } }, "RecordingObject": { "type": "object", "required": [ "id", "meetingId", "topic", "createTime", "timeRecorded", "siteUrl", "downloadUrl", "playbackUrl", "password", "format", "serviceType", "durationSeconds", "sizeBytes", "shareToMe", "status" ], "properties": { "id": { "type": "string", "example": "4f914b1dfe3c4d11a61730f18c0f5387", "description": "A unique identifier for the recording." }, "meetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's ended meeting instance." }, "scheduledMeetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's scheduled meeting instance." }, "meetingSeriesId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291", "description": "Unique identifier for the recording's meeting series." }, "topic": { "type": "string", "example": "John's Meeting", "description": "The recording's topic." }, "createTime": { "type": "string", "example": "2019-01-27T17:43:24Z", "description": "The date and time recording was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. Please note that it's not the time the record button was clicked in meeting but the time the recording file was generated offline." }, "timeRecorded": { "type": "string", "example": "2019-01-27T17:40:20Z", "description": "The date and time recording started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. It indicates when the record button was clicked in the meeting." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the recording." }, "downloadUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/lsr.php?RCID=60b864cc80aa5b44fc9769c8305b98b7", "description": "The download link for recording. This attribute is not available if **Prevent downloading** has been turned on for the recording being requested. The **Prevent downloading** option can be viewed and set by a site admin on [Control Hub](https://help.webex.com/en-us/article/sxdj4ab/Manage-Security-for-a-Cisco-Webex-Site-in-Cisco-Webex-Control-Hub)." }, "playbackUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/ldr.php?RCID=7a8a476b29a32cd1e06dfa6c81970f19", "description": "The playback link for recording." }, "password": { "type": "string", "example": "********", "description": "The recording's password." }, "format": { "type": "string", "enum": [ "MP4", "ARF", "UPLOADED" ], "description": " * `MP4` - Recording file format is MP4.\n * `ARF` - Recording file format is ARF, a proprietary Webex recording format.\n * `UPLOADED` - The recording file is uploaded manually.\n" }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "The service type for the recording.\n * `MeetingCenter` - The service type for the recording is meeting.\n * `EventCenter` - The service type for the recording is the event.\n * `TrainingCenter` - The service type for the recording is the training session.\n * `SupportCenter` - The service type for the recording is the support meeting.\n" }, "durationSeconds": { "type": "number", "example": 4472, "description": "The duration of the recording, in seconds." }, "sizeBytes": { "type": "number", "example": 248023188, "description": "The size of the recording file, in bytes." }, "shareToMe": { "type": "boolean", "description": "Whether or not the recording has been shared to the current user. This attribute is hidden if the user calling the API is a Compliance Officer and `hostEmail` is not specified." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys of the parent meeting created by an integration application. They could be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries recordings by a key in its own domain." }, "status": { "type": "string", "enum": [ "available", "deleted", "purged" ], "description": " * `available` - Recording is available.\n * `deleted` - Recording has been moved into recycle bin.\n * `purged` - Recording has been purged from the recycle bin. Only applies if the user calling the API is a Compliance Officer and `meetingId` is specified.\n" } } }, "RecordingObjectForAdminAndCO": { "type": "object", "required": [ "id", "meetingId", "topic", "createTime", "timeRecorded", "hostDisplayName", "hostEmail", "siteUrl", "downloadUrl", "playbackUrl", "format", "serviceType", "durationSeconds", "sizeBytes", "status" ], "properties": { "id": { "type": "string", "example": "4f914b1dfe3c4d11a61730f18c0f5387", "description": "A unique identifier for the recording." }, "meetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's ended meeting instance." }, "scheduledMeetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's scheduled meeting instance." }, "meetingSeriesId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291", "description": "Unique identifier for the recording's meeting series." }, "topic": { "type": "string", "example": "John's Meeting", "description": "The recording's topic." }, "createTime": { "type": "string", "example": "2019-01-27T17:43:24Z", "description": "The date and time recording was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. Please note that it's not the time the record button was clicked in meeting but the time the recording file was generated offline." }, "timeRecorded": { "type": "string", "example": "2019-01-27T17:40:20Z", "description": "The date and time recording started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. It indicates when the record button was clicked in the meeting." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the recording." }, "downloadUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/lsr.php?RCID=60b864cc80aa5b44fc9769c8305b98b7", "description": "The download link for recording. This attribute is not available if **Prevent downloading** has been turned on for the recording being requested. The **Prevent downloading** option can be viewed and set by a site admin on [Control Hub](https://help.webex.com/en-us/article/sxdj4ab/Manage-Security-for-a-Cisco-Webex-Site-in-Cisco-Webex-Control-Hub)." }, "playbackUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/ldr.php?RCID=7a8a476b29a32cd1e06dfa6c81970f19", "description": "The playback link for recording." }, "format": { "type": "string", "enum": [ "MP4", "ARF", "UPLOADED" ], "description": " * `MP4` - Recording file format is MP4.\n * `ARF` - Recording file format is ARF, a proprietary Webex recording format.\n * `UPLOADED` - The recording file is uploaded manually.\n" }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "The service type for the recording.\n * `MeetingCenter` - The service type for the recording is meeting.\n * `EventCenter` - The service type for the recording is the event.\n * `TrainingCenter` - The service type for the recording is the training session.\n * `SupportCenter` - The service type for the recording is the support meeting.\n" }, "durationSeconds": { "type": "number", "example": 4472, "description": "The duration of the recording, in seconds." }, "sizeBytes": { "type": "number", "example": 248023188, "description": "The size of the recording file, in bytes." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys of the parent meeting created by an integration application. They could be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries recordings by a key in its own domain." }, "status": { "type": "string", "enum": [ "available", "deleted", "purged" ], "description": " * `available` - Recording is available.\n * `deleted` - Recording has been moved into recycle bin.\n * `purged` - Recording has been purged from the recycle bin. Please note that only a compliance officer can access recordings with a `purged` status.\n" } } }, "RecordingObjectWithDirectDownloadLinks": { "type": "object", "required": [ "id", "meetingId", "topic", "createTime", "timeRecorded", "siteUrl", "downloadUrl", "playbackUrl", "password", "format", "serviceType", "durationSeconds", "sizeBytes", "shareToMe", "status" ], "properties": { "id": { "type": "string", "example": "7ee40776779243b4b3da448d941b34dc", "description": "A unique identifier for recording." }, "meetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's ended meeting instance." }, "scheduledMeetingId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "description": "Unique identifier for the recording's scheduled meeting instance." }, "meetingSeriesId": { "type": "string", "example": "f91b6edce9864428af084977b7c68291", "description": "Unique identifier for the recording's meeting series." }, "topic": { "type": "string", "example": "John's Meeting", "description": "The recording's topic." }, "createTime": { "type": "string", "example": "2019-01-27T17:43:24Z", "description": "The date and time recording was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. Please note that it's not the time the record button was clicked in meeting but the time the recording file was generated offline." }, "timeRecorded": { "type": "string", "example": "2019-01-27T17:40:20Z", "description": "The date and time recording started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. It indicates when the record button was clicked in the meeting." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the recording." }, "downloadUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/lsr.php?RCID=60b864cc80aa5b44fc9769c8305b98b7", "description": "The download link for the recording. This attribute is not available if `prevent downloading` has been turned on for the recording being requested. The `prevent downloading` option can be viewed and set on page when editing a recording." }, "playbackUrl": { "type": "string", "example": "https://site4-example.webex.com/site4/ldr.php?RCID=7a8a476b29a32cd1e06dfa6c81970f19", "description": "The playback link for recording." }, "password": { "type": "string", "example": "********", "description": "The recording's password." }, "format": { "type": "string", "enum": [ "MP4", "ARF", "UPLOADED" ], "description": " * `MP4` - Recording file format is MP4.\n * `ARF` - Recording file format is ARF, a proprietary Webex recording format.\n * `UPLOADED` - The recording file is uploaded manually.\n" }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": " * `MeetingCenter` - The service type for the recording is meeting.\n * `EventCenter` - The service type for the recording is the event.\n * `TrainingCenter` - The service type for the recording is the training session.\n * `SupportCenter` - The service type for the recording is the support meeting.\n" }, "durationSeconds": { "type": "number", "example": 4472, "description": "The duration of the recording in seconds." }, "sizeBytes": { "type": "number", "example": 248023188, "description": "The size of the recording file in bytes." }, "shareToMe": { "type": "boolean", "description": "Whether or not the recording has been shared to the current user." }, "temporaryDirectDownloadLinks": { "type": "object", "properties": { "recordingDownloadLink": { "type": "string", "description": "The download link for recording MP4/ARF file without HTML page rendering in browser or HTTP redirect. Expires 3 hours after the API request." }, "audioDownloadLink": { "type": "string", "description": "The download link for recording audio file without HTML page rendering in browser or HTTP redirect. This attribute is not available if **Prevent Downloading** has been turned on for the recording being requested. Expires 3 hours after the API request." }, "transcriptDownloadLink": { "type": "string", "description": "The download link for recording transcript file without HTML page rendering in browser or HTTP redirect. This attribute is not available if **Prevent Downloading** has been turned on for the recording being requested. Expires 3 hours after the API request." }, "expiration": { "type": "string", "description": "The date and time when `recordingDownloadLink`, `audioDownloadLink`, and `transcriptDownloadLink` expire in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." } }, "description": "The download links for MP4/ARF, audio, and transcript of the recording without HTML page rendering in browser or HTTP redirect. This attribute is not available if the user is not a [Compliance Officer](/docs/compliance#compliance) and **Prevent Downloading** has been turned on for the recording being requested. The Prevent Downloading option can be viewed and set on page when editing a recording. Note that there are various products in [Webex Suite](https://www.cisco.com/c/en/us/products/conferencing/product_comparison.html) such as \"Webex Meetings\", \"Webex Training\" and \"Webex Events\"." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys of the parent meeting created by an integration application. The key can be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries recordings by a key in its own domain." }, "status": { "type": "string", "enum": [ "available", "deleted", "purged" ], "description": " * `available` - Recording is available.\n * `deleted` - Recording has been moved to the recycle bin.\n * `purged` - Recording has been purged from the recycle bin. Please note that only a compliance officer can access recordings with a `purged` status.\n" } } }, "DeleteRecordingObject": { "type": "object", "properties": { "reason": { "type": "string", "example": "audit", "description": "Reason for deleting a recording. Only required when a Compliance Officer is operating on another user's recording." }, "comment": { "type": "string", "example": "Maintain data privacy", "description": "Compliance Officer's explanation for deleting a recording. The comment can be a maximum of 255 characters long." } } }, "BulkSoftDeleteRecordingObject": { "type": "object", "required": [ "recordingIds" ], "properties": { "recordingIds": { "type": "array", "items": { "type": "string" }, "description": "Recording IDs for removing recordings into the recycle bin in batch. Please note that all the recording IDs should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site from which the API deletes recordings. If not specified, the API deletes recordings 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." } } }, "BulkRestoreRecordingObject": { "type": "object", "properties": { "restoreAll": { "type": "boolean", "description": "If not specified or `false`, restores the recordings specified by `recordingIds`. If `true`, restores all recordings from the recycle bin." }, "recordingIds": { "type": "array", "items": { "type": "string" }, "description": "Recording IDs for recovering recordings from the recycle bin in batch. Note that all the recording IDs should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site from which the API restores recordings. If not specified, the API restores recordings from a user's preferred site. All available Webex sites and preferred sites of a user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." } } }, "BulkPurgeRecordingObject": { "type": "object", "properties": { "purgeAll": { "type": "boolean", "description": "If not specified or `false`, purges the recordings specified by `recordingIds`. If `true`, purges all recordings from the recycle bin." }, "recordingIds": { "type": "array", "items": { "type": "string" }, "description": "Recording IDs for purging recordings from the recycle bin in batch. Note that all the recording IDs should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site from which the API purges recordings. If not specified, the API purges recordings from user's preferred site. All available Webex sites and preferred sites of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." } } }, "ShareRecordingByIdObject": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host. The field is not editable and is only used to share or unshare a recording on behalf of the real meeting host." }, "addEmails": { "type": "array", "items": { "type": "string" }, "description": "Email addresses of users to share the recording with. The maximum size of the array is `100`." }, "removeEmails": { "type": "array", "items": { "type": "string" }, "description": "Email addresses of users to unshare the recording with. The maximum size of the array is `100`." }, "sendEmail": { "type": "boolean", "description": "Whether to send email notifications to the users being shared. The default is `true`." } } }, "ShareRecordingByLinkObject": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host. The field is not editable and is only used to share or unshare a recording link on behalf of the real meeting host." }, "webShareLink": { "type": "string", "example": "https://example.webex.com/recordingservice/sites/example/recording/playback/1234567890abcdef1234567890abcdef", "description": "The link for the recording to be shared or unshared." }, "addEmails": { "type": "array", "items": { "type": "string" }, "description": "Email addresses of users to share the recording link with. The maximum size of the array is `100`." }, "removeEmails": { "type": "array", "items": { "type": "string" }, "description": "Email addresses of users to unshare the recording link with. The maximum size of the array is `100`." }, "sendEmail": { "type": "boolean", "description": "Whether to send email notifications to the users being shared. The default is `true`." } } }, "Webhook": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dFQkhPT0svOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "description": "A unique identifier for the webhook." }, "name": { "type": "string", "example": "My Awesome Webhook", "description": "A user-friendly name for the webhook." }, "targetUrl": { "type": "string", "example": "https://example.com/mywebhook", "description": "URL that receives POST requests for each event." }, "resource": { "type": "string", "enum": [ "attachmentActions", "dataSources", "memberships", "messages", "rooms", "meetings", "recordings", "convergedRecordings", "meetingParticipants", "meetingTranscripts", "telephony_calls", "telephony_conference", "telephony_mwi", "uc_counters", "serviceApp", "adminBatchJobs" ], "description": "Resource type for the webhook. Creating a webhook requires 'read' scope on the resource the webhook is for.\n * `attachmentActions` - [Attachment Actions](/docs/api/v1/attachment-actions) resource.\n * `dataSources` - [data sources](/docs/api/v1/data-sources) resource.\n * `memberships` - [Memberships](/docs/api/v1/memberships) resource.\n * `messages` - [Messages](/docs/api/v1/messages) resource.\n * `rooms` - [Rooms](/docs/api/v1/rooms) resource.\n * `meetings` - [Meetings](/docs/api/v1/meetings) resource.\n * `recordings` - [Recordings](/docs/api/v1/recordings) resource.\n * `convergedRecordings` - [CallRecordings](/docs/api/v1/converged-recordings) resource.\n * `meetingParticipants` - [Meeting Participants](/docs/api/v1/meeting-participants) resource.\n * `meetingTranscripts` - [Meeting Transcripts](/docs/api/v1/meeting-transcripts) resource.\n * `telephony_calls` - [Webex Calling](/docs/webex-calling-overview) call resources.\n * `telephony_conference` - [Webex Calling](/docs/webex-calling-overview) conference controls resource.\n * `telephony_mwi` - [Webex Calling](/docs/webex-calling-overview) voicemail message waiting indicator resource.\n * `uc_counters` - Performance counter for a dedicated instance.\n * `serviceApp` - Service App authorization notification.\n * `adminBatchJobs` - Admin Batch Jobs notification.\n" }, "event": { "type": "string", "enum": [ "created", "updated", "deleted", "started", "ended", "joined", "left", "migrated", "authorized", "deauthorized", "statusChanged" ], "description": "Event type for the webhook.\n * `created` - An object was created.\n * `updated` - An object was updated.\n * `deleted` - An object was deleted.\n * `started` - A meeting was started.\n * `ended` - A meeting was ended.\n * `joined` - A participant joined.\n * `left` - A participant left.\n * `migrated` - A room was migrated to a different geography. The roomId has changed.\n * `authorized` - A Service App was authorized.\n * `deauthorized` - A Service App was deauthorized.\n * `statusChanged` - Status of admin batch job was changed.\n" }, "filter": { "type": "string", "example": "roomId=Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "description": "Filter that defines the webhook scope." }, "secret": { "type": "string", "example": "86dacc007724d8ea666f88fc77d918dad9537a15", "description": "Secret used to generate payload signature." }, "status": { "type": "string", "enum": [ "active", "inactive" ], "description": "Status of the webhook. Use `active` to reactivate a disabled webhook.\n * `active` - Webhook is active.\n * `inactive` - Webhook is inactive.\n" }, "created": { "type": "string", "example": "2015-10-18T14:26:16+00:00", "description": "Date and time the webhook was created." }, "ownedBy": { "type": "string", "example": "org", "description": "Specify `org` when creating an org/admin level webhook. Supported for `meetings`, `recordings`, `convergedRecordings`, `meetingParticipants`, `meetingTranscripts`, `videoMeshAlerts`, `controlHubAlerts`, `rooms`, `messaging` and `adminBatchJobs` (for Compliance Officers and messages with file attachments only - see [inline file DLP](/docs/api/guides/webex-real-time-file-dlp-basics)) resources." } } }, "WebhookCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Webhook" } } } }, "WorkspaceLocationsCreationRequest": { "type": "object", "required": [ "displayName", "address", "countryCode", "latitude", "longitude" ], "properties": { "displayName": { "type": "string", "example": "Cisco Barcelona", "description": "A friendly name for the location." }, "address": { "type": "string", "example": "Carrer de Pere IV, Barcelona, Spain", "description": "The location address." }, "countryCode": { "type": "string", "example": "ES", "description": "The location country code (ISO 3166-1)." }, "cityName": { "type": "string", "example": "Barcelona", "description": "The location city name." }, "latitude": { "type": "number", "example": 41.406615, "description": "The location latitude." }, "longitude": { "type": "number", "example": 2.200717, "description": "The location longitude." }, "notes": { "type": "string", "example": "A note about the location", "description": "Notes associated with the location." } } }, "WorkspaceLocationsUpdateRequest": { "type": "object", "required": [ "displayName", "address", "countryCode", "latitude", "longitude" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9XT1JLU1BBQ0VfTE9DQVRJT04vM2E2ZmYzNzMtNjhhNy00NGU0LTkxZDYtYTI3NDYwZTBhYzVjIzUxOWY2N2E1LTlkOTktNGM2My04YTA5LWI5MTcxY2M2NmJkMQ==", "description": "Unique identifier for the location." }, "displayName": { "type": "string", "example": "Cisco Barcelona", "description": "A friendly name for the location." }, "address": { "type": "string", "example": "Carrer de Pere IV, Barcelona, Spain", "description": "The location address." }, "countryCode": { "type": "string", "example": "ES", "description": "The location country code (ISO 3166-1)." }, "cityName": { "type": "string", "example": "Barcelona", "description": "The location city name." }, "latitude": { "type": "number", "example": 41.406615, "description": "The location latitude." }, "longitude": { "type": "number", "example": 2.200717, "description": "The location longitude." }, "notes": { "type": "string", "example": "A note about the location", "description": "Notes associated with the location." } } }, "WorkspaceLocationsCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "An array of location objects." } } }, "WorkspaceLocationFloorsCreationRequest": { "type": "object", "required": [ "floorNumber" ], "properties": { "floorNumber": { "type": "number", "example": -1, "description": "The floor number." }, "displayName": { "type": "string", "example": "The basement", "description": "The floor display name." } } }, "WorkspaceLocationFloorsUpdateRequest": { "type": "object", "required": [ "floorNumber" ], "properties": { "floorNumber": { "type": "number", "example": 1, "description": "The floor number." }, "displayName": { "type": "string", "example": "My custom name", "description": "The floor display name." } } }, "WorkspaceLocationFloorsCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Floor" }, "description": "An array of floor objects." } } }, "WorkspaceMetricsResponse": { "type": "object", "required": [ "workspaceId", "metricName" ], "properties": { "workspaceId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" }, "metricName": { "type": "string", "enum": [ "soundLevel", "ambientNoise", "temperature", "humidity", "tvoc", "peopleCount" ] }, "aggregation": { "type": "string", "enum": [ "none", "hourly", "daily" ] }, "from": { "type": "string", "example": "2020-10-21T13:33:37.789Z" }, "to": { "type": "string", "example": "2020-10-31T16:00:00.532Z" }, "unit": { "type": "string", "enum": [ "celsius", "fahrenheit" ], "description": "Output data unit (only present if `metricName` is `temperature`)." }, "sortBy": { "type": "string", "enum": [ "newestFirst", "oldestFirst" ] }, "items": { "type": "array", "items": {}, "description": "The structure of the elements will depend on whether or not aggregated data was requested" } } }, "DurationMetric": { "type": "object", "properties": { "start": { "type": "string", "example": "2021-10-21T12:00:00Z", "description": "Timestamp indicating the start of the aggregation bucket (ISO 8601)." }, "end": { "type": "string", "example": "2021-10-21T13:00:00Z", "description": "Timestamp indicating the end of the aggregation bucket (ISO 8601)." }, "duration": { "type": "number", "example": 13, "description": "The time duration (in a given state) in the bucket." } } }, "WorkspaceDurationMetricsResponse": { "type": "object", "required": [ "workspaceId" ], "properties": { "workspaceId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" }, "aggregation": { "type": "string", "enum": [ "hourly", "daily" ] }, "measurement": { "type": "string", "enum": [ "timeUsed", "timeBooked" ] }, "from": { "type": "string", "example": "2020-10-21T13:33:37.789Z" }, "to": { "type": "string", "example": "2020-10-31T16:00:00.532Z" }, "unit": { "type": "string", "example": "minutes", "description": "The time unit." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/DurationMetric" } } } }, "WorkspaceIssue": { "type": "object", "properties": { "id": { "type": "string", "description": "Issue id." }, "createdAt": { "type": "string", "description": "Issue created timestamp." }, "title": { "type": "string", "description": "Issue title." }, "description": { "type": "string", "description": "Issue description." }, "recommendedAction": { "type": "string", "description": "Recommended action to mitigate issue." }, "level": { "type": "object", "properties": { "Members": { "type": "string", "enum": [ "error", "warning", "info" ] } }, "description": "Issue level." } } }, "Workspace": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "description": "Unique identifier for the Workspace." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "description": "`OrgId` associated with the workspace." }, "locationId": { "type": "string", "example": "Y2lzY29...", "description": "Location associated with the workspace (ID to use for the [/locations API](/docs/api/v1/locations))." }, "workspaceLocationId": { "type": "string", "example": "YL34GrT...", "description": "Legacy workspace location ID associated with the workspace. Prefer `locationId`." }, "floorId": { "type": "string", "example": "Y2lzY29z...", "description": "Floor associated with the workspace." }, "displayName": { "type": "string", "example": "SFO-12 Capanina", "description": "A friendly name for the workspace." }, "capacity": { "type": "number", "example": 5, "description": "How many people the workspace is suitable for." }, "type": { "type": "string", "enum": [ "notSet", "focus", "huddle", "meetingRoom", "open", "desk", "other" ], "description": "The workspace type.\n * `notSet` - No workspace type set.\n * `focus` - High concentration.\n * `huddle` - Brainstorm/collaboration.\n * `meetingRoom` - Dedicated meeting space.\n * `open` - Unstructured agile.\n * `desk` - Individual.\n * `other` - Unspecified.\n" }, "sipAddress": { "type": "string", "example": "test_workspace_1@trialorg.room.ciscospark.com", "description": "`SipUrl` to call all the devices associated with the workspace." }, "created": { "type": "string", "example": "2016-04-21T17:00:00.000Z", "description": "The date and time that the workspace was registered, in ISO8601 format." }, "calling": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "freeCalling", "hybridCalling", "webexCalling", "webexEdgeForDevices", "thirdPartySipCalling", "none" ], "description": "Calling.\n * `freeCalling` - Free Calling.\n * `hybridCalling` - Hybrid Calling.\n * `webexCalling` - Webex Calling.\n * `webexEdgeForDevices` - Webex Edge For Devices.\n * `thirdPartySipCalling` - Third-party SIP URI.\n * `none` - No Calling.\n" }, "hybridCalling": { "type": "object", "properties": { "emailAddress": { "type": "string", "example": "workspace@example.com", "description": "End user email address in Cisco Unified CM." } }, "description": "The `hybridCalling` object only applies when calling type is `hybridCalling`." }, "webexCalling": { "type": "object", "properties": { "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29g4..." }, "description": "The Webex Calling license associated with this workspace." } }, "description": "The `webexCalling` object only applies when calling type is `webexCalling`." } }, "description": "Calling type." }, "calendar": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "none", "google", "microsoft" ], "description": " * `none` - No calendar.\n * `google` - Google Calendar.\n * `microsoft` - Microsoft Exchange or Office 365.\n" }, "emailAddress": { "type": "string", "example": "workspace@example.com", "description": "Workspace email address. Will not be set when the calendar type is `none`." } }, "description": "Calendar type. Calendar of type `none` does not include an `emailAddress` field." }, "notes": { "type": "string", "example": "this is a note", "description": "Notes associated to the workspace." }, "hotdeskingStatus": { "type": "string", "enum": [ "on", "off" ], "description": "Hot desking status of the workspace.\n * `on` - Workspace supports hotdesking.\n * `off` - Workspace does not support hotdesking.\n" }, "supportedDevices": { "type": "string", "enum": [ "collaborationDevices", "phones" ], "description": "The supported devices for the workspace. Default is `collaborationDevices`.\n * `collaborationDevices` - Workspace supports collaboration devices.\n * `phones` - Workspace supports MPP phones.\n" }, "deviceHostedMeetings": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if enabled or `false` otherwise." }, "siteUrl": { "type": "string", "example": "'example.webex.com'", "description": "The Webex site for the device hosting meetings." } }, "description": "Device hosted meetings configuration." }, "devicePlatform": { "type": "string", "enum": [ "cisco", "microsoftTeamsRoom" ], "description": "The device platform.\n * `cisco` - Cisco.\n * `microsoftTeamsRoom` - Microsoft Teams Room.\n" }, "indoorNavigation": { "type": "object", "properties": { "url": { "type": "string", "description": "URL of a map locating the workspace." } }, "description": "Indoor navigation configuration." }, "health": { "type": "object", "properties": { "level": { "type": "string", "enum": [ "error", "warning", "info", "ok" ], "description": "Health level. The level is based on the list of issues associated with the workspace." }, "issues": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceIssue" }, "description": "A list of workspace issues." } }, "description": "The health of the workspace." }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "description": "A list of devices associated with the workspace." }, "capabilities": { "type": "array", "items": { "$ref": "#/components/schemas/CapabilityMap" }, "description": "The map of workspace capabilities." }, "plannedMaintenance": { "type": "object", "description": "The planned maintenance for the workspace.", "properties": { "mode": { "type": "string", "enum": [ "off", "on", "upcoming" ], "description": "The planned maintenance mode for the workspace" }, "startTime": { "type": "string", "example": "2026-10-01T00:00:00.000Z", "description": "The start of the planned maintenance period." }, "endTime": { "type": "string", "example": "2026-10-02T00:00:00.000Z", "description": "The end of the planned maintenance period." } } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "YL34GrT...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "displayName": "SFO-12 Capanina", "capacity": 5, "sipAddress": "" } }, "WorkspaceCreationRequest": { "type": "object", "required": [ "displayName" ], "properties": { "displayName": { "type": "string", "example": "SFO-12 Capanina", "description": "A friendly name for the workspace." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "description": "`OrgId` associated with the workspace. Only admin users of another organization (such as partners) may use this parameter." }, "locationId": { "type": "string", "example": "YL34GrT...", "description": "Location associated with the workspace. Must be provided when the `floorId` is set." }, "workspaceLocationId": { "type": "string", "example": "YL34GrT...", "description": "Legacy workspace location ID associated with the workspace. Prefer `locationId`." }, "floorId": { "type": "string", "example": "Y2lzY29z...", "description": "Floor associated with the workspace." }, "capacity": { "type": "number", "example": 5, "description": "How many people the workspace is suitable for. If set, must be 0 or higher." }, "type": { "type": "string", "enum": [ "notSet", "focus", "huddle", "meetingRoom", "open", "desk", "other" ], "description": "The type that best describes the workspace.\n * `notSet` - No workspace type set.\n * `focus` - High concentration.\n * `huddle` - Brainstorm/collaboration.\n * `meetingRoom` - Dedicated meeting space.\n * `open` - Unstructured agile.\n * `desk` - Individual.\n * `other` - Unspecified.\n" }, "sipAddress": { "type": "string", "description": "The `sipAddress` field can only be provided when calling type is `thirdPartySipCalling`." }, "calling": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "freeCalling", "hybridCalling", "webexCalling", "webexEdgeForDevices", "thirdPartySipCalling", "none" ], "description": "The calling type that is supported on the workspace.\n * `freeCalling` - Free Calling (Default).\n * `hybridCalling` - Hybrid Calling.\n * `webexCalling` - Webex Calling.\n * `webexEdgeForDevices` - Webex Edge For Devices.\n * `thirdPartySipCalling` - Third-party SIP URI.\n * `none` - No Calling.\n" }, "webexCalling": { "type": "object", "properties": { "phoneNumber": { "type": "string", "example": "+12145654032", "description": "End user phone number." }, "extension": { "type": "string", "example": "28278", "description": "End user extension." }, "locationId": { "type": "string", "example": "Y2lzY29g4...", "description": "Calling location ID." }, "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29g4...1,Y2lzY29g4...2,Y2lzY29g4...n" }, "description": "A list of Webex Calling License IDs. If multiple license IDs are provided, the oldest suitable one will be applied." } }, "description": "The `webexCalling` object only applies when calling type is `webexCalling`." } }, "description": "Calling." }, "calendar": { "type": "object", "properties": { "type": { "type": "string", "example": "microsoft" }, "emailAddress": { "type": "string", "example": "workspace@example.com", "description": "Workspace email address. Will not be set when the calendar type is `none`." }, "resourceGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOk5vcndheS9SRVNPVVJDRV9HUk9VUC9jOGFiMDJhNC01NjI5LTRiNTctOGUyNy03ZDZkZjJlN2YzNzA=", "description": "The `ResourceGroup` ID is associated with the workspace and is only applicable for on-premise MICROSOFT calendar." } }, "description": "Workspace calendar configuration requires a `type` (`microsoft`, `google`, or `none`), an `emailAddress`, and a `resourceGroupId`. The default is `none`." }, "notes": { "type": "string", "example": "this is a note", "description": "Notes associated to the workspace." }, "hotdeskingStatus": { "type": "string", "enum": [ "on", "off" ], "description": "Hot desking status of the workspace.\n * `on` - Workspace supports hotdesking.\n * `off` - Workspace does not support hotdesking.\n" }, "deviceHostedMeetings": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable or `false` to disable." }, "siteUrl": { "type": "string", "example": "'example.webex.com'", "description": "The Webex site for device hosting meetings." } }, "description": "To enable device hosted meetings, set a Webex `siteUrl` and the `enabled` flag to `true`." }, "supportedDevices": { "type": "string", "enum": [ "collaborationDevices", "phones" ], "description": "The supported devices for the workspace. Default is `collaborationDevices`.\n * `collaborationDevices` - Workspace supports collaboration devices.\n * `phones` - Workspace supports MPP phones.\n" }, "indoorNavigation": { "type": "object", "properties": { "url": { "type": "string", "description": "URL of a map locating the workspace." } }, "description": "Indoor navigation configuration." } } }, "WorkspaceUpdateRequest": { "type": "object", "properties": { "displayName": { "type": "string", "example": "SFO-12 Capanina", "description": "A friendly name for the workspace." }, "locationId": { "type": "string", "example": "YL34GrT...", "description": "Location associated with the workspace. Must be provided when the `floorId` is set." }, "workspaceLocationId": { "type": "string", "example": "YL34GrT...", "description": "Legacy workspace location ID associated with the workspace. Prefer `locationId`." }, "floorId": { "type": "string", "example": "Y2lzY29z...", "description": "Floor associated with the workspace." }, "capacity": { "type": "number", "example": 5, "description": "How many people the workspace is suitable for. If set, must be 0 or higher." }, "type": { "type": "string", "enum": [ "notSet", "focus", "huddle", "meetingRoom", "open", "desk", "other" ], "description": "The type that best describes the workspace.\n * `notSet` - No workspace type set.\n * `focus` - High concentration.\n * `huddle` - Brainstorm/collaboration.\n * `meetingRoom` - Dedicated meeting space.\n * `open` - Unstructured agile.\n * `desk` - Individual.\n * `other` - Unspecified.\n" }, "calendar": { "type": "object", "properties": { "type": { "type": "string", "example": "microsoft" }, "emailAddress": { "type": "string", "example": "workspace@example.com", "description": "Workspace email address. Will not be set when the calendar type is `none`." }, "resourceGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOk5vcndheS9SRVNPVVJDRV9HUk9VUC9jOGFiMDJhNC01NjI5LTRiNTctOGUyNy03ZDZkZjJlN2YzNzA=", "description": "The `ResourceGroup` ID is associated with the workspace and is only applicable for on-premise MICROSOFT calendar." } }, "description": "An empty or null `calendar` field will not cause any changes. Provide a `type` (`microsoft`, `google`, or `none`), an `emailAddress`, and a `resourceGroupId`. To remove a calendar, set the `type` to `none`; this does not require an `emailAddress` or `resourceGroupId`." }, "sipAddress": { "type": "string", "description": "The `sipAddress` field can only be provided when calling type is `thirdPartySipCalling`." }, "calling": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "freeCalling", "hybridCalling", "webexCalling", "webexEdgeForDevices", "thirdPartySipCalling", "none" ], "description": "The calling type that is supported on the workspace.\n * `freeCalling` - Free Calling (Default).\n * `hybridCalling` - Hybrid Calling.\n * `webexCalling` - Webex Calling.\n * `webexEdgeForDevices` - Webex Edge For Devices.\n * `thirdPartySipCalling` - Third-party SIP URI.\n * `none` - No Calling.\n" }, "webexCalling": { "type": "object", "properties": { "phoneNumber": { "type": "string", "example": "+12145654032", "description": "End user phone number." }, "extension": { "type": "string", "example": "28278", "description": "End user extension." }, "locationId": { "type": "string", "example": "Y2lzY29g4...", "description": "Calling location ID." }, "licenses": { "type": "array", "items": { "type": "string", "example": "Y2lzY29g4...1,Y2lzY29g4...2,Y2lzY29g4...n" }, "description": "A list of Webex Calling license IDs. If multiple license IDs are provided, the oldest suitable one will be applied." } }, "description": "The `webexCalling` object only applies when calling type is `webexCalling`." } }, "description": "Calling types supported on update are `freeCalling`, `thirdPartySipCalling`, `webexCalling` and `none`." }, "notes": { "type": "string", "example": "this is a note", "description": "Notes associated to the workspace." }, "hotdeskingStatus": { "type": "string", "enum": [ "on", "off" ], "description": "Hot desking status of the workspace.\n * `on` - Workspace supports hotdesking.\n * `off` - Workspace does not support hotdesking.\n" }, "deviceHostedMeetings": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable or `false` to disable." }, "siteUrl": { "type": "string", "example": "'example.webex.com'", "description": "The Webex site for device hosting meetings." } }, "description": "To enable device hosted meetings, set a Webex `siteUrl` and the `enabled` flag to `true`." }, "indoorNavigation": { "type": "object", "properties": { "url": { "type": "string", "description": "URL of a map locating the workspace. Passing `null` will remove the configuration." } }, "description": "Indoor navigation configuration." } } }, "WorkspaceCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Workspace" }, "description": "An array of workspace objects." } }, "example": { "items": [] } }, "CapabilityResponse": { "type": "object", "example": { "capabilities": { "occupancyDetection": { "supported": true, "configured": true }, "presenceDetection": { "supported": true, "configured": true }, "ambientNoise": { "supported": true, "configured": true }, "soundLevel": { "supported": true, "configured": true }, "temperature": { "supported": true, "configured": true }, "airQuality": { "supported": true, "configured": true }, "relativeHumidity": { "supported": true, "configured": true } } }, "properties": { "capabilities": { "$ref": "#/components/schemas/CapabilityMap" } } }, "CapabilityMap": { "type": "object", "description": "The map of workspace capabilities.", "example": { "occupancyDetection": { "supported": true, "configured": true }, "presenceDetection": { "supported": true, "configured": true }, "ambientNoise": { "supported": true, "configured": true }, "soundLevel": { "supported": true, "configured": true }, "temperature": { "supported": true, "configured": true }, "airQuality": { "supported": true, "configured": true }, "relativeHumidity": { "supported": true, "configured": true } }, "properties": { "occupancyDetection": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "presenceDetection": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "ambientNoise": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "soundLevel": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "temperature": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "airQuality": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" }, "relativeHumidity": { "$ref": "#/components/schemas/SupportAndConfiguredInfo" } } }, "SupportAndConfiguredInfo": { "type": "object", "properties": { "supported": { "type": "boolean", "example": true, "description": "Is the workspace capability supported or not." }, "configured": { "type": "boolean", "example": true, "description": "Is the workspace capability configured or not." } }, "description": "Support and configured information for a workspace capability.", "example": { "supported": true, "configured": true } }, "ChatObject": { "type": "object", "properties": { "id": { "type": "string", "example": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "description": "A unique identifier for the chat snippet." }, "chatTime": { "type": "string", "example": "2021-07-06T09:22:34Z", "description": "Chat time for the chat snippet in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "text": { "type": "string", "example": "hi", "description": "The text of the chat snippet." }, "meetingId": { "type": "string", "example": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the chat belongs." }, "type": { "type": "string", "example": "private", "description": "Whether the type of the chat is private, public or group. Private chat is for the 1:1 chat. Public chat is for the message which is sent to all the people in the meeting. Group chat is for the message which is sent to a small group of people, like a message to \"host and presenter\"." }, "sender": { "type": "object", "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address of the sender of the meeting chat snippet." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for the sender." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81YmVkZWUyMC1hNjI3LTQ4YTUtODg0Yi04NjVhODhlZmFhNzM", "description": "A unique identifier for the sender." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81OWU2NzUyNy00NjUxLTRjOTAtYjJmMC00Zjg2YzNiYjY2MDg", "description": "The ID of the organization to which the sender belongs." } }, "description": "Information of the sender of the chat snippet." }, "receivers": { "type": "array", "items": { "type": "object", "properties": { "email": { "type": "string", "example": "catherine.sinu@example.com", "description": "Email address of the receiver of the meeting chat snippet." }, "displayName": { "type": "string", "example": "Catherine Sinu", "description": "Display name for the receiver." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81YmVkZWUyMC1hNjI3LTQ4YTUtODg0Yi04NjVhODhlZmFhNzM", "description": "A unique identifier for the receiver." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81OWU2NzUyNy00NjUxLTRjOTAtYjJmMC00Zjg2YzNiYjY2MDg", "description": "The ID of the organization to which the receiver belongs." } } }, "description": "Information of the receivers of the chat snippet." } } }, "ClosedCaptionObject": { "type": "object", "properties": { "id": { "type": "string", "example": "195d64646ad14be2924ea50f541fd91d", "description": "A unique identifier for the closed caption." }, "meetingId": { "type": "string", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) which the closed captions belong to." }, "vttDownloadLink": { "type": "string", "example": "http://site-example.webex.com/v1/meetingClosedCaptions/195d64646ad14be2924ea50f541fd91d/download?format=vtt", "description": "The download link for the closed caption vtt file." }, "txtDownloadLink": { "type": "string", "example": "http://site-example.webex.com/v1/meetingClosedCaptions/195d64646ad14be2924ea50f541fd91d/download?format=txt", "description": "The download link for the closed caption txt file." }, "start": { "type": "string", "example": "2020-06-01T20:30:15.042Z", "description": "Start time for the meeting closed caption in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." } } }, "SnippetObject": { "type": "object", "required": [ "id", "text", "personName", "personEmail", "offsetMillisecond", "durationMillisecond" ], "properties": { "id": { "type": "string", "example": "195d64646ad14be2924ea50f541fd91d_00001", "description": "A unique identifier for the snippet." }, "text": { "type": "string", "example": "Hello everyone", "description": "Text for the snippet." }, "personName": { "type": "string", "example": "John Andersen", "description": "Name of the person generating the speech for the snippet." }, "personEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address of the person generating the speech for the snippet." }, "offsetMillisecond": { "type": "number", "example": 1000, "description": "Offset from the beginning of the parent transcript in milliseconds indicating the start time of the snippet." }, "durationMillisecond": { "type": "number", "example": 2000, "description": "Duration of the snippet in milliseconds." } } }, "ControlsRequestObject": { "type": "object", "description": "One of `meetingId`, `meetingNumber`, or `webLink` must be specified.", "properties": { "meetingId": { "type": "string", "description": "Unique identifier for the meeting. Required if meetingNumber and webLink are not provided.", "example": "089b137c3cf34b578896941e2d49dfe8" }, "meetingNumber": { "type": "string", "description": "Meeting number. Required if meetingId and webLink are not provided.", "example": "123456789" }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join. Required if meetingId and meetingNumber are not provided." }, "streamOut": { "type": "boolean", "description": "Whether to enable stream out. It is an optional field and default value is true.", "example": true } } }, "ControlsResponseObject": { "type": "object", "properties": { "url": { "type": "string", "description": "WebSocket endpoint URL.", "example": "wss://site4-example.webex.com/wbxrestfulapi/websocket" }, "channelName": { "type": "string", "description": "Channel name for the WebSocket connection.", "example": "089b137c3cf34b578896941e2d49dfe8.ba78e451-ba27-4bac-b099-5e4680bb30fb" }, "expiresInSeconds": { "type": "integer", "description": "Seconds until the channel expires.", "default": 300, "example": 300 }, "streamOut": { "type": "boolean", "description": "Whether stream out is enabled.", "example": true } }, "required": [ "url", "channelName", "expiresInSeconds", "streamOut" ] }, "WebSocketConnectionObject": { "type": "object", "properties": { "endpoint": { "type": "string", "description": "WebSocket endpoint URL, from the 'url' field in the API response.", "example": "wss://site4-example.webex.com/wbxrestfulapi/websocket" }, "headers": { "type": "object", "properties": { "channelName": { "type": "string", "description": "WebSocket header 'channelName', from the 'channelName' field in the API response.", "example": "089b137c3cf34b578896941e2d49dfe8.ba78e451-ba27-4bac-b099-5e4680bb30fb" }, "Authorization": { "type": "string", "description": "WebSocket header 'Authorization', use your service app token." }, "token": { "type": "string", "description": "WebSocket header 'token', from the 'token' field in the API response." } }, "required": [ "channelName", "Authorization", "token" ] }, "closedCaptionResponse": { "type": "object", "description": "Closed caption message received from the WebSocket.", "example": { "userName": "john.andersen@example.com", "content": "Can you hear me?", "sequenceNumber": 19, "timestamp": 1772603822410, "id": "954b53be-4ae9-43c8-4a28-20e349ae5235" } }, "pingResponse": { "type": "object", "description": "Ping message received from the WebSocket.", "example": { "type": "ping" } } }, "required": [ "endpoint", "headers" ] }, "NotificationRequestObject": { "type": "object", "description": "One of `meetingId`, `meetingNumber`, or `webLink` must be specified.", "properties": { "meetingId": { "type": "string", "description": "Unique identifier for the meeting. Required if meetingNumber and webLink are not provided.", "example": "089b137c3cf34b578896941e2d49dfe8" }, "meetingNumber": { "type": "string", "description": "Meeting number. Required if meetingId and webLink are not provided.", "example": "123456789" }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join. Required if meetingId and meetingNumber are not provided." }, "announceAiNotification": { "type": "boolean", "description": "Whether to announce the AI notification.", "default": true, "example": true } } }, "UpdateInviteeObject": { "type": "object", "required": [ "email" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for meeting invitee." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for meeting invitee. The maximum length of `displayName` is 128 characters. In the Webex app, if the email has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`. In a Webex site, if `displayName` is specified, it will show `displayName`. If `displayName` is not specified, and the `email` has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`.\n\nIf the invitee has an existing Webex account, the `displayName` shown in the meeting will be the `displayName` associated with the Webex account; otherwise, `displayName` shown in the meeting will be the `displayName` which is specified by the invitee who does not have a Webex account." }, "coHost": { "type": "boolean", "description": "Whether or not the invitee is a designated alternate host for the meeting. See [Add Alternate Hosts for Cisco Webex Meetings](https://help.webex.com/b5z6he/) for more details." }, "hostEmail": { "type": "string", "example": "brenda.song@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin on-behalf-of scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true`, send an email to the invitee." }, "panelist": { "type": "boolean", "description": "If `true`, the invitee is a designated panelist for the event meeting." } } }, "CreateInviteeObject": { "type": "object", "required": [ "meetingId", "email" ], "properties": { "meetingId": { "type": "string", "example": "870f51ff287b41be84648412901e0402", "description": "Unique identifier for the meeting to which a person is being invited. This attribute only applies to meeting series and scheduled meeting. If it's a meeting series, the meeting invitee is invited to the entire meeting series; if it's a scheduled meeting, the meeting invitee is invited to this individual scheduled meeting. It doesn't apply to an ended or ongoing meeting instance. The meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for meeting invitee." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for meeting invitee. The maximum length of `displayName` is 128 characters. In the Webex app, if the email has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`. In a Webex site, if `displayName` is specified, it will show `displayName`. If `displayName` is not specified, and the `email` has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`.\n\nIf the invitee has an existing Webex account, the `displayName` shown in the meeting will be the `displayName` associated with the Webex account; otherwise, `displayName` shown in the meeting will be the `displayName` which is specified by the invitee who does not have a Webex account." }, "coHost": { "type": "boolean", "description": "Whether or not the invitee is a designated alternate host for the meeting. See [Add Alternate Hosts for Cisco Webex Meetings](https://help.webex.com/b5z6he/) for more details." }, "hostEmail": { "type": "string", "example": "brenda.song@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin on-behalf-of scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true`, send an email to the invitee." }, "panelist": { "type": "boolean", "description": "If `true`, the invitee is a designated panelist for the event meeting." } } }, "GetInviteeObject": { "type": "object", "required": [ "id", "email", "displayName", "meetingId" ], "properties": { "id": { "type": "string", "example": "870f51ff287b41be84648412901e0402_2628962", "description": "Unique identifier for meeting invitee." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for meeting invitee. This attribute can be modified by `Update a Meeting Invitee` API." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for meeting invitee. This attribute can be modified by `Update a Meeting Invitee` API." }, "coHost": { "type": "boolean", "description": "Whether or not invitee is a designated alternate host for the meeting. See [Add Alternate Hosts for Cisco Webex Meetings](https://help.webex.com/b5z6he/) for more details." }, "meetingId": { "type": "string", "example": "870f51ff287b41be84648412901e0402", "description": "Unique identifier for the meeting for which invitees are being requested. The meeting can be a meeting series, a scheduled meeting, or a meeting instance which has ended or is ongoing." }, "panelist": { "type": "boolean", "description": "If `true`, the invitee is a designated panelist for the event meeting." } } }, "CreateInviteesItemObject": { "type": "object", "required": [ "email" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for meeting invitee." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for meeting invitee. The maximum length of `displayName` is 128 characters. In Webex App, if the email has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`. In Webex site, if `displayName` is specified, it will show `displayName`. If `displayName` is not specified, and the `email` has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`.\n\nPlease note that if the invitee has an existing Webex account, the `displayName` shown in the meeting will be the `displayName` associated with the Webex account; otherwise, `displayName` shown in the meeting will be the `displayName` which is specified by the invitee who does not have a Webex account." }, "coHost": { "type": "boolean", "description": "Whether or not invitee is a designated alternate host for the meeting. See [Add Alternate Hosts for Cisco Webex Meetings](https://help.webex.com/b5z6he/) for more details." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true`, send an email to the invitee." }, "panelist": { "type": "boolean", "description": "If `true`, the invitee is a designated panelist for the event meeting." } } }, "CreateInviteesObject": { "type": "object", "required": [ "meetingId" ], "properties": { "meetingId": { "type": "string", "example": "870f51ff287b41be84648412901e0402", "description": "Unique identifier for the meeting to which the people are being invited. This attribute only applies to meeting series and scheduled meetings. If it's a meeting series, the meeting invitees are invited to the entire meeting series; if it's a scheduled meeting, the meeting invitees are invited to this individual scheduled meeting. It doesn't apply to an ended or ongoing meeting instance. The meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is not supported for this API." }, "hostEmail": { "type": "string", "example": "brenda.song@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin on-behalf-of scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/CreateInviteesItemObject" }, "description": "Meeting invitees to be inserted." } } }, "CreateInviteesItemResponseObject": { "type": "object", "properties": { "id": { "type": "string", "example": "870f51ff287b41be84648412901e0402_2628962", "description": "Unique identifier for meeting invitee." }, "meetingId": { "type": "string", "example": "870f51ff287b41be84648412901e0402", "description": "Unique identifier for the meeting to which a person is being invited. This attribute only applies to meeting series and scheduled meeting. If it's a meeting series, the meeting invitee is invited to the entire meeting series; if it's a scheduled meeting, the meeting invitee is invited to this individual scheduled meeting. It doesn't apply to an ended or ongoing meeting instance." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for meeting invitee." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for meeting invitee. The maximum length of `displayName` is 128 characters. In the Webex App, if the email has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`. In Webex site, if `displayName` is specified, it will show `displayName`. If `displayName` is not specified, and the `email` has been associated with an existing Webex account, the display name associated with the Webex account will be used; otherwise, the `email` will be used as `displayName`.\n\nIf the invitee has an existing Webex account, the `displayName` shown in the meeting will be the `displayName` associated with the Webex account; otherwise, `displayName` shown in the meeting will be the `displayName` which is specified by the invitee who does not have a Webex account." }, "coHost": { "type": "boolean", "description": "Whether or not the invitee is a designated alternate host for the meeting. See [Add Alternate Hosts for Cisco Webex Meetings](https://help.webex.com/b5z6he/) for more details." }, "panelist": { "type": "boolean", "description": "If `true`, the invitee is a designated panelist for the event meeting." } } }, "CreateInviteesResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/CreateInviteesItemResponseObject" }, "description": "Meeting invitees inserted." } } }, "BreakoutSessionAttended": { "type": "object", "properties": { "id": { "type": "string", "example": "c84ba778-2f46-4dc6-9459-398694732d70", "description": "Unique identifier for the breakout session the participant attended." }, "name": { "type": "string", "example": "Breakout session 1", "description": "Name of the breakout session the participant attended." }, "joinedTime": { "type": "string", "example": "2022-10-25T09:05:00Z", "description": "The time the participant joined the breakout session." }, "leftTime": { "type": "string", "example": "2022-10-25T09:10:00Z", "description": "The time the participant left the breakout session." } } }, "Participant": { "type": "object", "properties": { "id": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "description": "The ID that identifies the meeting and the participant." }, "orgId": { "type": "string", "example": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "description": "The ID that identifies the organization. It only applies to participants of ongoing meetings." }, "host": { "type": "boolean", "example": true, "description": "Whether or not the participant is the host of the meeting." }, "coHost": { "type": "boolean", "description": "Whether or not the participant has host privilege in the meeting." }, "spaceModerator": { "type": "boolean", "description": "Whether or not the participant is the team space moderator. This field returns only if the meeting is associated with a Webex space." }, "email": { "type": "string", "example": "joeDoe@cisco.com", "description": "The email address of the participant." }, "displayName": { "type": "string", "example": "Joe Doe", "description": "The name of the participant." }, "invitee": { "type": "boolean", "description": "Whether or not the participant is invited to the meeting." }, "muted": { "type": "boolean", "description": "Whether or not the participant's audio is muted." }, "meetingStartTime": { "type": "string", "example": "2020-10-02T17:31:00Z", "description": "The time the meeting started." }, "video": { "type": "string", "enum": [ "on", "off" ], "description": "The status of the participant's video.\n * `on` - The video is turned on.\n * `off` - The video is turned off.\n" }, "state": { "type": "string", "enum": [ "lobby", "end", "joined", "breakoutSession" ], "description": "The status of the participant in the meeting. The value of `state` is `breakoutSession` which is only returned when the meeting is in progress and the breakout session is enabled.\n * `lobby` - The participant is waiting in the meeting lobby.\n * `end` - The participant has left the meeting.\n * `joined` - The participant has joined the meeting and is in the main session.\n * `breakoutSession` - The participant has joined a breakout session.\n" }, "breakoutSessionId": { "type": "string", "example": "2e373567-465b-8530-a18a-7025e1871d40", "description": "The ID of the breakout session including the participant." }, "joinedTime": { "type": "string", "example": "2022-10-25T09:00:00Z", "description": "The time the participant joined the meeting. If the field is non-existent or shows `1970-01-01T00:00:00.000Z` the meeting may be still ongoing and the `joinedTime` will be filled in after the meeting ended. If you need real-time join events, please refer to the webhooks guide." }, "leftTime": { "type": "string", "example": "2022-10-25T09:30:00Z", "description": "The time the participant left the meeting. If the field is non-existent or shows `1970-01-01T00:00:00.000Z` the meeting may be still ongoing and the `leftTime` will be filled in after the meeting ended. If you need real-time left events, please refer to the webhooks guide." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "The site URL." }, "meetingId": { "type": "string", "example": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "description": "A unique identifier for the meeting which the participant belongs to." }, "hostEmail": { "type": "string", "example": "janeDoe@cisco.com", "description": "The email address of the host." }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/Device" } }, "breakoutSessionsAttended": { "type": "array", "items": { "$ref": "#/components/schemas/BreakoutSessionAttended" }, "description": "The breakout sessions attended by the participant. Only applies to ended meeting instances." }, "sourceId": { "type": "string", "example": "cisco", "description": "The source ID of the participant. The `sourceId` is from the [Create Invitation Sources](/docs/api/v1/meetings/create-invitation-sources) API." } } }, "InProgressParticipant": { "type": "object", "properties": { "id": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999_3c2e2338-e950-43bf-b588-573773ee43d1", "description": "The participant ID that identifies the meeting and the participant." }, "orgId": { "type": "string", "example": "1eb65fdf-9643-417f-9974-ad72cae0e10f", "description": "The ID that identifies the organization." }, "host": { "type": "boolean", "example": true, "description": "Whether or not the participant is the host of the meeting." }, "coHost": { "type": "boolean", "description": "Whether or not the participant has host privilege in the meeting." }, "spaceModerator": { "type": "boolean", "description": "Whether or not the participant is the team space moderator. This field returns only if the meeting is associated with a Webex space." }, "email": { "type": "string", "example": "joeDoe@cisco.com", "description": "The email address of the participant." }, "displayName": { "type": "string", "example": "Joe Doe", "description": "The name of the participant." }, "invitee": { "type": "boolean", "description": "Whether or not the participant is invited to the meeting." }, "video": { "type": "string", "enum": [ "on", "off" ], "description": "The status of the participant's video.\n * `on` - The video is turned on.\n * `off` - The video is turned off.\n" }, "muted": { "type": "boolean", "description": "Whether or not the participant's audio is muted." }, "state": { "type": "string", "enum": [ "lobby", "joined" ], "description": "The status of the participant in the meeting.\n * `lobby` - The participant is waiting in the meeting lobby.\n * `joined` - The participant has joined the meeting.\n" }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "The site URL." }, "meetingId": { "type": "string", "example": "3a688f62840346e8b87dde2b50703511_I_197977258267247872", "description": "A unique identifier for the meeting which the participant belongs to." }, "hostEmail": { "type": "string", "example": "janeDoe@cisco.com", "description": "The email address of the host." }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/InProgressDevice" } } } }, "InProgressDevice": { "type": "object", "properties": { "correlationId": { "type": "string", "example": "8ccced6c-b812-4dff-a5dd-4c5c28f8d47d", "description": "An internal ID that is associated with each join." }, "deviceType": { "type": "string", "example": "mac", "description": "The type of device." }, "audioType": { "type": "string", "enum": [ "pstn", "voip", "inactive" ], "description": "The audio type that the participant is using.\n * `pstn` - `PSTN`\n * `voip` - `VoIP`\n * `inactive` - The participant is not connected to audio.\n" }, "joinedTime": { "type": "string", "example": "2019-04-23T17:31:00.000Z", "description": "The time the device joined the meeting. If the field is non-existent or shows `1970-01-01T00:00:00.000Z` the meeting may be still ongoing and the `joinedTime` will be filled in after the meeting ended. If you need real-time joined events, please refer to the webhooks guide." }, "leftTime": { "type": "string", "example": "2019-04-23T17:32:00.000Z", "description": "The time the device left the meeting, `leftTime` is the exact moment when a specific device left the meeting. If the field is non-existent or shows `1970-01-01T00:00:00.000Z` the meeting may be still ongoing and the `leftTime` will be filled in after the meeting ended. If you need real-time left events, please refer to the webhooks guide." } } }, "ParticipantID": { "type": "object", "properties": { "participantId": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999_I_204252993233618782_23e16d67-17f3-3ef1-b830-f33d17c0232e", "description": "The ID that identifies the meeting participant." } } }, "AdmitParticipantsObject": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AdmitParticipant" } } } }, "CalloutRequest": { "type": "object", "required": [ "address", "displayName" ], "properties": { "meetingId": { "type": "string", "example": "d8c3347d7ec04242ba9b856184b334ac", "description": "Unique identifier of the meeting to which the SIP participant is to be called out. Either `meetingId` or `meetingNumber` must be specified." }, "meetingNumber": { "type": "string", "example": "79100342367", "description": "Number of the meeting to which the SIP participant is to be called out. Either `meetingId` or `meetingNumber` must be specified." }, "address": { "type": "string", "example": "SIP:9053523155@examplezone.cisco.com", "description": "SIP address of the invited SIP participant." }, "addressType": { "type": "string", "enum": [ "sipAddress" ], "description": "Type of the `address`. The default value is `sipAddress`.\n * `sipAddress` - SIP address.\n" }, "invitationCorrelationId": { "type": "string", "example": "871ab255-64e6-4cd2-a5af-d33953898356", "description": "An internal ID that is associated with the call-out invitation. Only UUIDs with hyphens are supported. The letters in the UUID must be in lowercase. A random UUID will be generated automatically if not specified." }, "displayName": { "type": "string", "example": "Brenda DX80", "description": "The display name of the invited SIP participant. The maximum length is 32 characters." } } }, "CalloutResponse": { "type": "object", "properties": { "participantId": { "type": "string", "example": "d8c3347d7ec04242ba9b856184b334ac_I_630641605678082408_57514861-50f7-3f5b-864f-ce0e308bf653", "description": "Participant ID. It can be used in the \"Cancel Call Out a SIP Participant\" API." }, "invitationCorrelationId": { "type": "string", "example": "871ab255-64e6-4cd2-a5af-d33953898356", "description": "An internal ID that is associated with the call-out invitation." }, "meetingNumber": { "type": "string", "example": "79100342367", "description": "Number of the meeting to which the SIP participant is to be called out." }, "meetingId": { "type": "string", "example": "d8c3347d7ec04242ba9b856184b334ac", "description": "Unique identifier of the meeting to which the SIP participant is to be called out." }, "address": { "type": "string", "example": "SIP:9053523155@examplezone.cisco.com", "description": "SIP address of the invited SIP participant." }, "addressType": { "type": "string", "enum": [ "sipAddress" ], "description": "Type of the `address`.\n * `sipAddress` - SIP address.\n" }, "displayName": { "type": "string", "example": "Brenda DX80", "description": "The display name of the invited SIP participant." }, "state": { "type": "string", "enum": [ "pending" ], "description": "The state of the invited SIP participant.\n * `pending` - The invited SIP participant is waiting for approval. Participants in the `pending` state will not be listed by the \"List Meeting Participants\" API.\n" } } }, "CancelCalloutRequest": { "type": "object", "required": [ "participantId" ], "properties": { "participantId": { "type": "string", "example": "d8c3347d7ec04242ba9b856184b334ac_I_630641605678082408_57514861-50f7-3f5b-864f-ce0e308bf653", "description": "ID of the SIP participant on whom the callout is to be cancelled. It can be retrieved from the response of the \"Call Out a SIP Participant\" API." } } }, "AdmitParticipant": { "type": "object", "properties": { "participantId": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999_I_204252993233618782_23e16d67-17f3-3ef1-b830-f33d17c0232e", "description": "The ID that identifies the meeting participant." }, "breakoutSessionId": { "type": "string", "example": "23e16d67-17f3-3ef1-b830-f33d17c0232e", "description": "The breakout session ID that identifies which breakout session to admit the participant into. Admit into the main session if the value is empty." } } }, "PollCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Poll" } } } }, "Poll": { "type": "object", "properties": { "id": { "type": "string", "example": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "description": "A unique identifier for the poll." }, "meetingId": { "type": "string", "example": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the poll belongs." }, "startTime": { "type": "string", "example": "2021-07-06T09:22:34Z", "description": "The date and time the poll started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "endTime": { "type": "string", "example": "2021-07-06T09:25:51Z", "description": "The date and time the poll ended in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "timerDuration": { "type": "number", "example": 300, "description": "The length of time in the alarm box, in seconds." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the poll coordinator." }, "email": { "type": "string", "example": "john.andersen@example.co", "description": "The email of the poll coordinator." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "description": "The ID of the polling coordinator." }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/Question" }, "description": "Poll's questions." } } }, "Question": { "type": "object", "properties": { "id": { "type": "string", "example": "6f31147e-dd69-4ea9-8b75-2c5834b72ba2", "description": "A unique identifier for the question." }, "order": { "type": "string", "example": "1", "description": "The order of the question." }, "title": { "type": "string", "example": "Where is Webex exclusively sold through local partners?", "description": "The question." }, "type": { "type": "string", "enum": [ "single", "multiple", "short" ], "description": "The type of the question.\n * `single` - A single-answer question.\n * `multiple` - A multiple-answer question.\n * `short` - A text answer.\n" }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/Option" }, "description": "Question's options." } } }, "Option": { "type": "object", "properties": { "order": { "type": "string", "example": "1", "description": "The order of the option." }, "value": { "type": "string", "example": "China", "description": "The value of the option." }, "isCorrect": { "type": "boolean", "example": true, "description": "Whether or not the option is correct." } } }, "PollResultCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/PollResult" } } } }, "PollResult": { "type": "object", "properties": { "id": { "type": "string", "example": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "description": "A unique identifier for the poll." }, "meetingId": { "type": "string", "example": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the poll belongs." }, "totalAttendees": { "type": "number", "example": 10, "description": "The total number of attendees in the meeting." }, "totalRespondents": { "type": "number", "example": 10, "description": "The total number of respondents in the poll." }, "startTime": { "type": "string", "example": "2021-07-06T09:25:34Z", "description": "The date and time the poll started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "endTime": { "type": "string", "example": "2021-07-06T09:28:34Z", "description": "The date and time the poll ended in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "timerDuration": { "type": "number", "example": 300, "description": "The duration of the poll, in seconds." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the poll coordinator." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the poll coordinator." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "description": "The ID of the the poll coordinator." }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionResult" }, "description": "An array of questions in this poll." } } }, "QuestionResult": { "type": "object", "properties": { "id": { "type": "string", "example": "6f31147e-dd69-4ea9-8b75-2c5834b72ba2", "description": "A unique identifier of the question." }, "order": { "type": "string", "example": "1", "description": "The order of the question in the poll." }, "title": { "type": "string", "example": "What colors do you like?", "description": "The question." }, "type": { "type": "string", "enum": [ "single", "multiple", "short" ], "description": "The type of the question.\n * `single` - A single-answer question.\n * `multiple` - A multiple-answer question.\n * `short` - A text answer.\n" }, "answerSummary": { "type": "array", "items": { "$ref": "#/components/schemas/AnswerSummaryItem" }, "description": "Summary of all answers." }, "respondents": { "$ref": "#/components/schemas/RespondentsReferenceLinks", "description": "Question's respondents." } } }, "AnswerSummaryItem": { "type": "object", "properties": { "order": { "type": "string", "example": "1", "description": "The order of the answer in the question." }, "value": { "type": "string", "example": "China", "description": "The content of the answer." }, "totalRespondents": { "type": "number", "example": 10, "description": "The total number of people who selected this answer." }, "isCorrect": { "type": "boolean", "example": true, "description": "Whether the answer is correct." } } }, "RespondentsReferenceLinks": { "type": "object", "properties": { "links": { "$ref": "#/components/schemas/Link", "description": "The pagination links of this question's respondent." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/Respondent" }, "description": "An array of answers." } } }, "Link": { "type": "object", "properties": { "prev": { "type": "string", "example": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=0&max=5", "description": "Link to the previous question's respondents." }, "self": { "type": "string", "example": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=5&max=5", "description": "Link to the current question's respondents." }, "next": { "type": "string", "example": "https://webexapis.com/v1/meetings/polls/1d4959fe-682e-4107-a346-0e1feac7b899_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/questions/6f31147e-dd69-4ea9-8b75-2c5834b72ba2/respondents?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=10&max=5", "description": "Link to the next page question's respondents." } } }, "RespondentCollectionResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Respondent" } } } }, "Respondent": { "type": "object", "properties": { "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the person who answers the question." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the person who answers the question." }, "answers": { "type": "array", "items": { "type": "string", "example": "Green" }, "description": "An array of answers. Single answer or text questions contain only a single answer." } } }, "MeetingPreferenceObject": { "type": "object", "required": [ "personalMeetingRoom", "audio", "video", "schedulingOptions" ], "properties": { "personalMeetingRoom": { "type": "object", "required": [ "topic", "hostPin", "personalMeetingRoomLink", "enabledAutoLock", "enabledNotifyHost", "supportCoHost", "sipAddress", "dialInIpAddress", "telephony" ], "properties": { "topic": { "type": "string", "example": "John's PMR", "description": "Personal Meeting Room topic. The length of `topic` must be between 1 and 128 characters. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "hostPin": { "type": "string", "example": "4325", "description": "PIN for joining the room as host. The host PIN must be digits of a predefined length, e.g. 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeated digits of the predefined length, such as 1111. The predefined length for host PIN can be viewed in user's `My Personal Room` page. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "personalMeetingRoomLink": { "type": "string", "example": "https://site4-example.webex.com/meet/john", "description": "Personal Meeting Room link. It cannot be empty. ***Note***: This is a read-only attribute." }, "enabledAutoLock": { "type": "boolean", "description": "Option to automatically lock the Personal Room a number of minutes after a meeting starts. When a room is locked, invitees cannot enter until the owner admits them. The period after which the meeting is locked is defined by `autoLockMinutes`. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "autoLockMinutes": { "type": "number", "description": "Number of minutes after which the Personal Room is locked if `enabledAutoLock` is enabled. Valid options are 0, 5, 10, 15 and 20. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "enabledNotifyHost": { "type": "boolean", "description": "Flag to enable notifying the owner of a Personal Room when someone enters the Personal Room lobby while the owner is not in the room. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "supportCoHost": { "type": "boolean", "description": "Flag allowing other invitees to host a meeting in the Personal Room without the owner. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "supportAnyoneAsCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the user's organization to start or join the meeting without a prompt. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "coHosts": { "type": "array", "items": { "type": "object", "required": [ "email", "displayName" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." } } }, "description": "Array defining cohosts for the room if both `supportAnyoneAsCoHost` and `allowFirstUserToBeCoHost` are `false` This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "sipAddress": { "type": "string", "example": "john.andersen@example.com", "description": "SIP address for callback from a video system." }, "dialInIpAddress": { "type": "string", "example": "192.168.100.100", "description": "IP address for callback from a video system." }, "telephony": { "type": "object", "required": [ "accessCode", "callInNumbers" ], "properties": { "accessCode": { "type": "string", "example": "1234567890", "description": "Code for authenticating a user to join teleconference. Users join the teleconference using the call-in number or the global call-in number, followed by the value of the `accessCode`." }, "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining teleconference from a phone." }, "links": { "type": "object", "required": [ "rel", "href", "method" ], "properties": { "rel": { "type": "string", "example": "globalCallinNumbers", "description": "Link relation describing how the target resource is related to the current context (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "href": { "type": "string", "example": "/api/v1/meetings/2c87cf8ece4e414a9fe5516e4a0aac76/globalCallinNumbers", "description": "Target resource URI (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "method": { "type": "string", "example": "GET", "description": "Target resource method (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." } }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining teleconference from a phone." } }, "description": "Information for callbacks from meeting to phone or for joining a teleconference using a phone." } }, "description": "Personal Meeting Room options." }, "audio": { "type": "object", "required": [ "defaultAudioType", "otherTeleconferenceDescription", "enabledGlobalCallIn", "enabledTollFree", "enabledAutoConnection", "officeNumber", "mobileNumber" ], "properties": { "defaultAudioType": { "type": "string", "enum": [ "webexAudio", "voipOnly", "otherTeleconferenceService", "none" ], "description": "Default audio type. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API.\n * `webexAudio` - Webex audio. This supports telephony and VoIP.\n * `voipOnly` - Support only VoIP.\n * `otherTeleconferenceService` - Other teleconference service. Details are defined in the `otherTeleconferenceDescription` parameter.\n * `none` - No audio.\n" }, "otherTeleconferenceDescription": { "type": "string", "description": "Phone number and other information for the teleconference provider to be used, along with instructions for invitees. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledGlobalCallIn": { "type": "boolean", "description": "Flag to enable/disable global call ins. ***Note***: If the site does not support global call-ins, you cannot set this option. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledTollFree": { "type": "boolean", "description": "Flag to enable/disable call-ins from toll-free numbers. ***Note***: If the site does not support calls from toll-free numbers, you cannot set this option. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledAutoConnection": { "type": "boolean", "description": "Flag to enable/disable automatically connecting to audio using a computer. The meeting host can enable/disable this option. When this option is set to `true`, the user is automatically connected to audio via a computer when they start or join a Webex Meetings meeting on a desktop. `This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "audioPin": { "type": "string", "description": "PIN to provide a secondary level of authentication for calls where the host is using the phone and may need to invite additional invitees. It must be exactly 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeat a digit 4 times, such as 1111. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "officeNumber": { "type": "object", "required": [ "countryCode", "number", "enabledCallInAuthentication", "enabledCallMe" ], "properties": { "countryCode": { "type": "string", "description": "Country code for the phone number. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "number": { "type": "string", "description": "Phone number. It cannot be longer than 30 characters. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallInAuthentication": { "type": "boolean", "description": "Flag identifying the phone number as the one that will be used to dial into a teleconference. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallMe": { "type": "boolean", "description": "Flag to enable/disable Call Me number display on the meeting client. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API. ***Note***: This feature is only effective if the site supports the ***Call Me*** feature." } }, "description": "Office phone number. We recommend that phone numbers be specified to facilitate connecting via audio. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "mobileNumber": { "type": "object", "required": [ "countryCode", "number", "enabledCallInAuthentication", "enabledCallMe" ], "properties": { "countryCode": { "type": "string", "description": "Country code for the phone number. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "number": { "type": "string", "description": "Phone number. It cannot be longer than 30 characters. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallInAuthentication": { "type": "boolean", "description": "Flag identifying the phone number as the one that will be used to dial into a teleconference. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallMe": { "type": "boolean", "description": "Flag to enable/disable Call Me number display on the meeting client. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API. ***Note***: This feature is only effective if the site supports the ***Call Me*** feature." } }, "description": "Mobile phone number. We recommend that phone numbers be specified to facilitate connecting via audio. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." } }, "description": "Audio Preferences. ***Note***: These audio settings do not apply to Personal Room meetings" }, "video": { "type": "object", "required": [ "videoDevices" ], "properties": { "videoDevices": { "type": "array", "items": { "type": "object", "required": [ "deviceName", "deviceAddress", "isDefault" ], "properties": { "deviceName": { "type": "string", "example": "device1", "description": "Video system name. It cannot be empty. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "deviceAddress": { "type": "string", "example": "device1@example.com", "description": "Video address. It cannot be empty and must be in valid email format. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "isDefault": { "type": "boolean", "example": true, "description": "Flag identifying the device as the default video device. If user's video device list is not empty, one and only one device must be set as default. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } } }, "description": "Array of video devices. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } }, "description": "Information for video conferencing systems used to connect to Webex meetings. ***Note***: The ***Call My Video System*** feature is available only if it has been purchased for your site and your administrator has enabled it." }, "schedulingOptions": { "$ref": "#/components/schemas/SchedulingOptionsObject", "description": "Meeting scheduling options." }, "sites": { "type": "array", "items": { "type": "object", "required": [ "siteUrl", "default" ], "properties": { "siteUrl": { "type": "string", "example": "site1-example.webex.com", "description": "Access URL for the site. ***Note***: This is a read-only attribute. The value can be assigned as user's default site with the [Update Default Site](/docs/api/v1/meeting-preferences/update-default-site) API." }, "default": { "type": "boolean", "description": "Flag identifying the site as the default site. Users can list meetings and recordings, and create meetings on the default site." } } }, "description": "List of user's Webex meeting sites including default site." } } }, "PMRObject": { "type": "object", "required": [ "topic", "hostPin", "personalMeetingRoomLink", "enabledAutoLock", "enabledNotifyHost", "supportCoHost", "sipAddress", "dialInIpAddress", "telephony" ], "properties": { "topic": { "type": "string", "example": "John's PMR", "description": "Personal Meeting Room topic. The length of `topic` is between 1 and 128. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "hostPin": { "type": "string", "example": "4325", "description": "PIN for joining the room as host. The host PIN must be digits of a predefined length, e.g. 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeated digits of the predefined length, such as 1111. The predefined length for host PIN can be viewed in user's `My Personal Room` page and it can only be changed by site administrator. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "personalMeetingRoomLink": { "type": "string", "example": "https://site4-example.webex.com/meet/john", "description": "Personal Meeting Room link. It cannot be empty. ***Note***: This is a read-only attribute." }, "enabledAutoLock": { "type": "boolean", "description": "Option to automatically lock the Personal Room a number of minutes after a meeting starts. When a room is locked, invitees cannot enter until the owner admits them. The period after which the meeting is locked is defined by `autoLockMinutes`. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "autoLockMinutes": { "type": "number", "description": "Number of minutes after which the Personal Room is locked if `enabledAutoLock` is enabled. Valid options are 0, 5, 10, 15 and 20. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "enabledNotifyHost": { "type": "boolean", "description": "Flag to enable notifying the owner of a Personal Room when someone enters the Personal Room lobby while the owner is not in the room. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "supportCoHost": { "type": "boolean", "description": "Flag allowing other invitees to host a meeting in the Personal Room without the owner. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "supportAnyoneAsCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the user's organization to start or join the meeting without a prompt. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "coHosts": { "type": "array", "items": { "type": "object", "required": [ "email", "displayName" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." } } }, "description": "Array defining cohosts for the room if both `supportAnyoneAsCoHost` and `allowFirstUserToBeCoHost` are `false`. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "sipAddress": { "type": "string", "example": "john.andersen@example.com", "description": "SIP address for callback from a video system." }, "dialInIpAddress": { "type": "string", "example": "192.168.100.100", "description": "IP address for callback from a video system." }, "telephony": { "type": "object", "required": [ "accessCode", "callInNumbers" ], "properties": { "accessCode": { "type": "string", "example": "1234567890", "description": "Code for authenticating a user to join teleconference. Users join the teleconference using the call-in number or the global call-in number, followed by the value of the `accessCode`." }, "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining teleconference from a phone." }, "links": { "type": "object", "required": [ "rel", "href", "method" ], "properties": { "rel": { "type": "string", "example": "globalCallinNumbers", "description": "Link relation describing how the target resource is related to the current context (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "href": { "type": "string", "example": "/api/v1/meetings/2c87cf8ece4e414a9fe5516e4a0aac76/globalCallinNumbers", "description": "Target resource URI (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "method": { "type": "string", "example": "GET", "description": "Target resource method (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." } }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining teleconference from a phone." } }, "description": "Information for callbacks from meeting to phone or for joining a teleconference using a phone." } } }, "CoHostObject": { "type": "object", "required": [ "email", "displayName" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." } } }, "AudioObject": { "type": "object", "required": [ "defaultAudioType", "otherTeleconferenceDescription", "enabledGlobalCallIn", "enabledTollFree", "enabledAutoConnection", "officeNumber", "mobileNumber" ], "properties": { "defaultAudioType": { "type": "string", "enum": [ "webexAudio", "voipOnly", "otherTeleconferenceService", "none" ], "description": "Default audio type. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API.\n * `webexAudio` - Webex audio. This supports telephony and VoIP.\n * `voipOnly` - Support only VoIP.\n * `otherTeleconferenceService` - Other teleconference service. Details are defined in the `otherTeleconferenceDescription` parameter.\n * `none` - No audio.\n" }, "otherTeleconferenceDescription": { "type": "string", "description": "Phone number and other information for the teleconference provider to be used, along with instructions for invitees. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledGlobalCallIn": { "type": "boolean", "description": "Flag to enable/disable global call ins. ***Note***: If the site does not support global call-ins, you cannot set this option. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledTollFree": { "type": "boolean", "description": "Flag to enable/disable call-ins from toll-free numbers. ***Note***: If the site does not support calls from toll-free numbers, you cannot set this option. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledAutoConnection": { "type": "boolean", "description": "Flag to enable/disable automatically connecting to audio using a computer. The meeting host can enable/disable this option. When this option is set to `true`, the user is automatically connected to audio via a computer when they start or join a Webex Meetings meeting on a desktop. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "audioPin": { "type": "string", "description": "PIN to provide a secondary level of authentication for calls where the host is using the phone and may need to invite additional invitees. It must be exactly 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeat a digit 4 times, such as 1111. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "officeNumber": { "type": "object", "required": [ "countryCode", "number", "enabledCallInAuthentication", "enabledCallMe" ], "properties": { "countryCode": { "type": "string", "description": "Country code for the phone number. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "number": { "type": "string", "description": "Phone number. It cannot be longer than 30 characters. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallInAuthentication": { "type": "boolean", "description": "Flag identifying the phone number as the one that will be used to dial into a teleconference. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallMe": { "type": "boolean", "description": "Flag to enable/disable Call Me number display on the meeting client. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API. ***Note***: This feature is only effective if the site supports the ***Call Me*** feature." } }, "description": "Office phone number. We recommend that phone numbers be specified to facilitate connecting via audio. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "mobileNumber": { "type": "object", "required": [ "countryCode", "number", "enabledCallInAuthentication", "enabledCallMe" ], "properties": { "countryCode": { "type": "string", "description": "Country code for the phone number. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "number": { "type": "string", "description": "Phone number. It cannot be longer than 30 characters. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallInAuthentication": { "type": "boolean", "description": "Flag identifying the phone number as the one that will be used to dial into a teleconference. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." }, "enabledCallMe": { "type": "boolean", "description": "Flag to enable/disable Call Me number display on the meeting client. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API. ***Note***: This feature is only effective if the site supports the ***Call Me*** feature." } }, "description": "Mobile phone number. We recommend that phone numbers be specified to facilitate connecting via audio. This attribute can be modified with the with the [Update Audio Options](/docs/api/v1/meeting-preferences/update-audio-options) API." } } }, "GetVideoObject": { "type": "object", "required": [ "videoDevices" ], "properties": { "videoDevices": { "type": "array", "items": { "type": "object", "required": [ "deviceName", "deviceAddress", "isDefault" ], "properties": { "deviceName": { "type": "string", "example": "device1", "description": "Video system name. It cannot be empty. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "deviceAddress": { "type": "string", "example": "device1@example.com", "description": "Video address. It cannot be empty and must be in valid email format. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "isDefault": { "type": "boolean", "example": true, "description": "Flag identifying the device as the default video device. If user's video device list is not empty, one and only one device must be set as default. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } } }, "description": "Array of video devices. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } } }, "UpdateVideoObject": { "type": "object", "required": [ "videoDevices" ], "properties": { "videoDevices": { "type": "array", "items": { "type": "object", "required": [ "deviceName", "deviceAddress", "isDefault" ], "properties": { "deviceName": { "type": "string", "example": "device1", "description": "Video system name. It cannot be empty. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "deviceAddress": { "type": "string", "example": "device1@example.com", "description": "Video address. It cannot be empty and must be in valid email format. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "isDefault": { "type": "boolean", "example": true, "description": "Flag identifying the device as the default video device. If user's video device list is not empty, one and only one device must be set as default. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } } }, "description": "Array of video devices. If the array is not empty, one device and no more than one devices must be set as default device." } } }, "VideoDeviceObject": { "type": "object", "required": [ "deviceName", "deviceAddress", "isDefault" ], "properties": { "deviceName": { "type": "string", "example": "device1", "description": "Video system name. It cannot be empty. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "deviceAddress": { "type": "string", "example": "device1@example.com", "description": "Video address. It cannot be empty and must be in valid email format. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." }, "isDefault": { "type": "boolean", "example": true, "description": "Flag identifying the device as the default video device. If user's video device list is not empty, one and only one device must be set as default. This attribute can be modified with the [Update Video Options](/docs/api/v1/meeting-preferences/update-video-options) API." } } }, "SchedulingOptionsObject": { "type": "object", "required": [ "enabledJoinBeforeHost", "joinBeforeHostMinutes", "enabledAutoShareRecording" ], "properties": { "enabledJoinBeforeHost": { "type": "boolean", "description": "Flag to enable/disable ***Join Before Host***. The period during which invitees can join before the start time is defined by `autoLockMinutes`. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options) API. ***Note***: This feature is only effective if the site supports the ***Join Before Host*** feature. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options) API." }, "joinBeforeHostMinutes": { "type": "number", "description": "Number of minutes before the start time that an invitee can join a meeting if `enabledJoinBeforeHost` is true. Valid options are 0, 5, 10 and 15. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options) API." }, "enabledAutoShareRecording": { "type": "boolean", "description": "Flag to enable/disable the automatic sharing of the meeting recording with invitees when it is available. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options) API." }, "enabledWebexAssistantByDefault": { "type": "boolean", "description": "Flag to automatically enable Webex Assistant whenever you start a meeting. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options) API." }, "delegateEmails": { "type": "array", "items": { "type": "string", "example": "marcus.hoffmann@example.com, brenda.song@example.com" }, "description": "You can allow other hosts to schedule meetings on your behalf by entering their email addresses here. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options), [Insert Delegate Emails](/docs/api/v1/meeting-preferences/insert-delegate-emails), and [Update Scheduling Options](/docs/api/v1/meeting-preferences/delete-delegate-emails) APIs." } } }, "SchedulingOptionsDelegateEmailsObject": { "type": "object", "properties": { "emails": { "type": "array", "items": { "type": "string", "example": "marcus.hoffmann@example.com, brenda.song@example.com" }, "description": "You can allow other hosts to schedule meetings on your behalf by entering their email addresses here. This attribute can be modified with the [Update Scheduling Options](/docs/api/v1/meeting-preferences/update-scheduling-options), [Insert Delegate Emails](/docs/api/v1/meeting-preferences/insert-delegate-emails), and [Update Scheduling Options](/docs/api/v1/meeting-preferences/delete-delegate-emails) APIs." } } }, "SitesObject": { "type": "object", "required": [ "sites" ], "properties": { "sites": { "type": "array", "items": { "type": "object", "required": [ "siteUrl", "default" ], "properties": { "siteUrl": { "type": "string", "example": "site1-example.webex.com", "description": "Access URL for the site. ***Note***: This is a read-only attribute. The value can be assigned as user's default site with the [Update Default Site](/docs/api/v1/meeting-preferences/update-default-site) API." }, "default": { "type": "boolean", "description": "Flag identifying the site as the default site. Users can list meetings and recordings, and create meetings on the default site." } } }, "description": "Array of sites for the user. Users can have one site or multiple sites. This concept is specific to Webex Meetings. Any `siteUrl` in the site list can be assigned as user's default site with the [Update Default Site](/docs/api/v1/meeting-preferences/update-default-site) API." } } }, "SiteObject": { "type": "object", "required": [ "siteUrl", "default" ], "properties": { "siteUrl": { "type": "string", "example": "site1-example.webex.com", "description": "Access URL for the site. ***Note***: This is a read-only attribute. The value can be assigned as user's default site with the [Update Default Site](/docs/api/v1/meeting-preferences/update-default-site) API." }, "default": { "type": "boolean", "description": "Flag identifying the site as the default site. Users can list meetings and recordings, and create meetings on the default site." } } }, "DefaultSiteObject": { "type": "object", "required": [ "siteUrl" ], "properties": { "siteUrl": { "type": "string", "example": "site1-example.webex.com", "description": "Access URL for the site." } } }, "UpdatePMRObject": { "type": "object", "required": [ "topic", "hostPin", "enabledAutoLock", "autoLockMinutes", "enabledNotifyHost", "supportCoHost", "coHosts" ], "properties": { "topic": { "type": "string", "example": "John's PMR", "description": "Personal Meeting Room topic to be updated." }, "hostPin": { "type": "string", "example": "4325", "description": "Updated PIN for joining the room as host. The host PIN must be digits of a predefined length, e.g. 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeated digits of the predefined length, such as 1111. The predefined length for host PIN can be viewed in user's `My Personal Room` page and it can only be changed by site administrator." }, "enabledAutoLock": { "type": "boolean", "description": "Update for option to automatically lock the Personal Room a number of minutes after a meeting starts. When a room is locked, invitees cannot enter until the owner admits them. The period after which the meeting is locked is defined by `autoLockMinutes`." }, "autoLockMinutes": { "type": "number", "description": "Updated number of minutes after which the Personal Room is locked if `enabledAutoLock` is enabled. Valid options are 0, 5, 10, 15 and 20." }, "enabledNotifyHost": { "type": "boolean", "example": true, "description": "Update for flag to enable notifying the owner of a Personal Room when someone enters the Personal Room lobby while the owner is not in the room." }, "supportCoHost": { "type": "boolean", "example": true, "description": "Update for flag allowing other invitees to host a meetingCoHost in the Personal Room without the owner." }, "supportAnyoneAsCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the user's organization to start or join the meeting without a prompt." }, "coHosts": { "type": "array", "items": { "type": "object", "required": [ "email", "displayName" ], "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Display name for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API." } } }, "description": "Updated array defining cohosts for the room if both `supportAnyoneAsCoHost` and `allowFirstUserToBeCoHost` are `false`" } } }, "BatchRefreshPMRIDObject": { "type": "object", "required": [ "siteUrl" ], "properties": { "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL to refresh the personal room IDs." }, "personalMeetingRoomIds": { "type": "array", "items": { "$ref": "#/components/schemas/PMRIDObject" }, "description": "Information of whose personal room IDs are to be refreshed and how to refresh. The maximum size of `items` is 100." } } }, "PMRIDObject": { "type": "object", "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address of the meeting host whose personal room ID will be refreshed." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "description": "Unique identifier for the meeting host whose personal room ID will be refreshed." }, "systemGenerated": { "type": "boolean", "description": "Whether or not to automatically refresh the personal room ID by the site's settings. Refresh the personal room ID by the site's settings automatically if `systemGenerated` is true; otherwise, replace the existing personal room ID with the specified value if `systemGenerated` is false or not specified." }, "personalMeetingRoomId": { "type": "string", "example": "prABCD23670651", "description": "New personal room ID specified by the admin user." } } }, "BatchRefreshPMRIDResponseObject": { "type": "object", "properties": { "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site." }, "personalMeetingRoomIds": { "type": "array", "items": { "$ref": "#/components/schemas/PMRIDResponseObject" }, "description": "Information for the refreshed personal room IDs." } } }, "PMRIDResponseObject": { "type": "object", "properties": { "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host whose personal room ID has been refreshed." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "description": "Unique identifier for the meeting host whose personal room ID has been refreshed." }, "personalMeetingRoomId": { "type": "string", "example": "prABCD23670651", "description": "Refreshed personal room ID." } } }, "QAObject": { "type": "object", "properties": { "id": { "type": "string", "example": "1aea8390-e375-4547-b7ff-58ecd9e0b03d", "description": "A unique identifier for the question." }, "meetingId": { "type": "string", "example": "a2f95f5073e347489f7611492dbd6ad5_I_199075330905867928", "description": "A unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the Q&A belongs." }, "totalAttendees": { "type": "number", "example": 10, "description": "The total number of attendees in the meeting." }, "totalRespondents": { "type": "number", "example": 10, "description": "The total number of respondents in the meeting." }, "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the user who asked the question." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the user who asked the question." }, "question": { "type": "string", "example": "Are you ok?", "description": "The question that was asked." }, "answers": { "type": "object", "properties": { "links": { "type": "object", "properties": { "prev": { "type": "string", "example": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=0&max=10", "description": "Link to the previous page of answers to this question." }, "self": { "type": "string", "example": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=10&max=10", "description": "Link to the current page of this answers to this question." }, "next": { "type": "string", "example": "https://webexapis.com/v1/meetings/q_and_a/d513da2b-547b-4c69-b717-d83c6b02b657_M_7b789da198e531ce0c4d84243abd9fee_I_231245894851233679/answers?meetingId=7b789da198e531ce0c4d84243abd9fee_I_231245894851233679&offset=20&max=10", "description": "Link to the next page of answers to this question." } }, "description": "The pagination links of the question's answers." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/AnswerObject" }, "description": "An array of answer objects for this question." } }, "description": "Question's answers." } } }, "AnswerObject": { "type": "object", "properties": { "displayName": { "type": "string", "example": "John Andersen", "description": "The name of the person who answered the question." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the person who answered the question." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYTY5MmE2Mi00MTNmLTRjYWEtYjdkOS0wYzg0ZDZmMDdlNzY", "description": "The ID of the person who answered the question. Only present for authenticated users." }, "answer": { "type": "array", "items": { "type": "string", "example": "Fine, thank you." }, "description": "The content of the answer." }, "answered": { "type": "boolean", "example": true, "description": "Whether or not the question was answered." } } }, "SiteSessionType": { "type": "object", "properties": { "id": { "type": "string", "example": "3", "description": "The ID of the session type." }, "shortName": { "type": "string", "example": "PRO", "description": "The short name of the session type." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the session type." }, "name": { "type": "string", "example": "Pro Meeting", "description": "The name of the session type." }, "type": { "type": "string", "enum": [ "meeting", "webinar", "privateMeeting", "EventCenter", "SupportCenter", "TrainCenter" ], "description": "The meeting type of meeting that you can create with the session type.\n * `meeting` - Meeting Center.\n * `webinar` - Webinar meeting.\n * `privateMeeting` - Private meeting.\n * `EventCenter` - Event Center.\n * `SupportCenter` - Support Center.\n * `TrainCenter` - Training Center.\n" } } }, "UserSessionTypes": { "type": "object", "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "description": "A unique identifier for the user." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the user." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the user." }, "sessionTypes": { "type": "array", "items": { "$ref": "#/components/schemas/SessionType" }, "description": "All session types are supported by the user on the site." } } }, "SessionType": { "type": "object", "properties": { "id": { "type": "string", "example": "3", "description": "The ID of the session type." }, "shortName": { "type": "string", "example": "PRO", "description": "The short name of the session type." }, "name": { "type": "string", "example": "Pro Meeting", "description": "The name of the session type." }, "type": { "type": "string", "enum": [ "meeting", "webinar", "privateMeeting", "EventCenter", "SupportCenter", "TrainCenter" ], "description": "The meeting type of meeting that you can create with the session type.\n * `meeting` - Meeting Center.\n * `webinar` - Webinar meeting.\n * `privateMeeting` - Private meeting.\n * `EventCenter` - Event Center.\n * `SupportCenter` - Support Center.\n * `TrainCenter` - Training Center.\n" } } }, "UpdateUserSessionType": { "type": "object", "required": [ "siteUrl", "sessionTypeIds" ], "properties": { "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the session type." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "description": "A unique identifier for the user." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "The email of the user." }, "sessionTypeIds": { "type": "array", "items": { "type": "string" }, "example": [ "3", "9" ], "description": "An array of the session type ID." } } }, "SummaryObject": { "type": "object", "properties": { "id": { "type": "string", "example": "c7428c95-df5f-442c-800a-81a2c1e95500", "description": "A unique identifier for the summary." }, "meetingId": { "type": "string", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the summary belongs." }, "status": { "type": "string", "example": "available", "enum": [ "available", "deleted" ], "description": " * `available` - Summary is available.\n * `deleted` - Summary has been deleted.\n\n Normal users can only see available summaries. Compliance officers can see both available and deleted summaries." }, "notes": { "type": "object", "required": [ "content" ], "properties": { "content": { "type": "string", "example": "

Summary of the meeting in HTML format

", "description": "Summary of the meeting in HTML format" } }, "description": "Meeting summaries in HTML format" }, "actionItems": { "type": "array", "items": { "type": "object", "required": [ "content" ], "properties": { "content": { "type": "string", "example": "Action item in plaintext", "description": "Action item in plaintext" } }, "description": "One ation item in plaintext" }, "description": "A list of action items" } }, "example": { "id": "75ddf169-eef0-45b4-9faa-0112a16ec9d0", "meetingId": "d32a7aee5d864adcb8aab61b03e2a64d_I_688397330631637738", "status": "available", "notes": { "content": "

Summary of the meeting in HTML format

" }, "actionItems": [ { "content": "Action item No.1 in plaintext" }, { "content": "Action item No.2 in plaintext" }, { "content": "Action item No.3 in plaintext" } ] } }, "TranscriptObject": { "type": "object", "required": [ "id", "siteUrl", "startTime", "meetingTopic", "meetingId", "scheduledMeetingId", "hostUserId", "vttDownloadLink", "txtDownloadLink", "status" ], "properties": { "id": { "type": "string", "example": "195d64646ad14be2924ea50f541fd91d", "description": "A unique identifier for the transcript." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site from which the API lists meeting transcripts." }, "startTime": { "type": "string", "example": "2020-06-01T20:30:15.042Z", "description": "Start time for the meeting transcript in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." }, "meetingTopic": { "type": "string", "example": "John's Meeting", "description": "The meeting's topic." }, "meetingId": { "type": "string", "example": "0ed74a1c0551494fb7a04e2881bf50ae_I_166022169160077044", "description": "Unique identifier for the [meeting instance](/docs/meetings#meeting-series-scheduled-meetings-and-meeting-instances) to which the transcripts belong." }, "scheduledMeetingId": { "type": "string", "example": "0ed74a1c0551494fb7a04e2881bf50ae_20210401T232500Z", "description": "Unique identifier for scheduled meeting with which the current meeting is associated. Only apples to a meeting instance which is happening or has happened. This is the `id` of the scheduled meeting with which the instance is associated." }, "meetingSeriesId": { "type": "string", "example": "0ed74a1c0551494fb7a04e2881bf50ae", "description": "Unique identifier for the parent meeting series to which the recording belongs." }, "hostUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "description": "Unique identifier for the meeting host." }, "vttDownloadLink": { "type": "string", "example": "http://site-example.webex.com/v1/meetingTranscripts/195d64646ad14be2924ea50f541fd91d/download?format=vtt", "description": "The download link for the transcript vtt file." }, "txtDownloadLink": { "type": "string", "example": "http://site-example.webex.com/v1/meetingTranscripts/195d64646ad14be2924ea50f541fd91d/download?format=txt", "description": "The download link for the transcript txt file." }, "status": { "type": "string", "enum": [ "available", "deleted" ], "description": " * `available` - Transcript is available.\n * `deleted` - Transcript has been deleted.\n" } } }, "UpdateSnippetObject": { "type": "object", "required": [ "text" ], "properties": { "reason": { "type": "string", "example": "audit", "description": "Reason for snippet update; only required for Compliance Officers." }, "text": { "type": "string", "example": "Hello everybody", "description": "Text for the snippet." } } }, "DeleteTranscriptObject": { "type": "object", "properties": { "reason": { "type": "string", "example": "audit", "description": "Reason for deleting a transcript. Only required when a Compliance Officer is operating on another user's transcript." }, "comment": { "type": "string", "example": "Maintain data privacy", "description": "Explanation for deleting a transcript. The comment can be a maximum of 255 characters long." } } }, "MeetingUsageReportObject": { "type": "object", "properties": { "meetingId": { "type": "string", "example": "089b137c3cf34b578896941e2d49dfe8_I_146987372776523573", "description": "Unique identifier for the meeting." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number." }, "meetingTitle": { "type": "string", "example": "John's Meeting", "description": "Meeting title." }, "start": { "type": "string", "example": "2023-01-18T10:26:30+08:00", "description": "The date and time when the meeting was started. It's in the timezone specified in the request header or in the `UTC` timezone if timezone is not specified." }, "end": { "type": "string", "example": "2023-01-18T10:46:30+08:00", "description": "The date and time when the meeting was ended. It's in the timezone specified in the request header or in the `UTC` timezone if timezone is not specified." }, "duration": { "type": "number", "example": 20, "description": "Duration of the meeting in minutes." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar" ], "description": "Scheduled type for the meeting.\n * `meeting` - Regular meeting.\n * `webinar` - Webinar meeting.\n" }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "totalPeopleMinutes": { "type": "number", "example": 60, "description": "Aggregated attendee minutes." }, "totalCallInMinutes": { "type": "number", "example": 60, "description": "Aggregated attendee PSTN call-in minutes." }, "totalCallOutDomestic": { "type": "number", "example": 60, "description": "Aggregated attendee domestic PSTN call-out minutes." }, "totalCallInTollFreeMinutes": { "type": "number", "example": 60, "description": "Aggregated attendee toll-free PSTN call-in minutes." }, "totalCallOutInternational": { "type": "number", "example": 60, "description": "Aggregated attendee international PSTN call-out minutes." }, "totalVoipMinutes": { "type": "number", "example": 60, "description": "Aggregated attendee VoIP minutes." }, "totalParticipants": { "type": "number", "example": 30, "description": "Total number of participants of the meeting." }, "totalParticipantsVoip": { "type": "number", "example": 10, "description": "Total number of VoIP participants of the meeting." }, "totalParticipantsCallIn": { "type": "number", "example": 10, "description": "Total number of PSTN call-in participants of the meeting." }, "totalParticipantsCallOut": { "type": "number", "example": 10, "description": "Total number of PSTN call-out participants of the meeting." }, "peakAttendee": { "type": "number", "example": 30, "description": "Peak number of attendees throughout the meeting." }, "totalRegistered": { "type": "number", "example": 30, "description": "Total number of registrants of the meeting." }, "totalInvitee": { "type": "number", "example": 30, "description": "Total number of invitees of the meeting." }, "serviceType": { "type": "string", "enum": [ "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "The service type for the meeting usage report.\n * `MeetingCenter` - The service type for the usage report is meeting.\n * `EventCenter` - The service type for the usage report is the event.\n * `TrainingCenter` - The service type for the usage report is the training session.\n * `SupportCenter` - The service type for the usage report is the support meeting.\n" }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/MeetingUsageReportTrackingCodeObject" }, "description": "Tracking codes of the meeting." } } }, "MeetingUsageReportTrackingCodeObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Department", "description": "Name of the tracking code." }, "value": { "type": "string", "example": "Engineering", "description": "Value of the tracking code." } } }, "MeetingAttendeeReportObject": { "type": "object", "properties": { "meetingId": { "type": "string", "example": "089b137c3cf34b578896941e2d49dfe8_I_146987372776523573", "description": "Unique identifier for the meeting." }, "meetingNumber": { "type": "number", "example": 123456789, "description": "Meeting number." }, "meetingTitle": { "type": "string", "example": "John's Meeting", "description": "Meeting title." }, "displayName": { "type": "string", "example": "John Andersen", "description": "Attendee's display name." }, "email": { "type": "string", "example": "John Andersen", "description": "Attendee's email." }, "joinedTime": { "type": "string", "example": "2023-01-18T10:26:30+08:00", "description": "The date and time when the attendee joined the meeting. It's in the timezone specified in the request header or in the `UTC` timezone if timezone is not specified." }, "leftTime": { "type": "string", "example": "2023-01-18T10:46:30+08:00", "description": "The date and time when the attendee left the meeting. It's in the timezone specified in the request header or in the `UTC` timezone if timezone is not specified." }, "duration": { "type": "number", "example": 20, "description": "Duration of the attendee in the meeting in minutes." }, "participantType": { "type": "string", "enum": [ "host", "attendee" ], "description": "The attendee's role in the meeting.\n * `host` - Meeting host.\n * `attendee` - Meeting attendee.\n" }, "ipAddress": { "type": "string", "example": "172.16.244.151", "description": "IP address of the attendee when he attended the meeting." }, "clientAgent": { "type": "string", "example": "WINDOWS,IE", "description": "Information of the attendee's operating system and application when he attended the meeting." }, "company": { "type": "string", "example": "ExampleCompany", "description": "Attendee's company." }, "phoneNumber": { "type": "string", "example": "85763644", "description": "Attendee's phone number." }, "address1": { "type": "string", "example": "85763644", "description": "Attendee's address, part one." }, "address2": { "type": "string", "example": "85763644", "description": "Attendee's address, part two." }, "city": { "type": "string", "example": "85763644", "description": "Attendee's city." }, "state": { "type": "string", "example": "85763644", "description": "Attendee's state." }, "country": { "type": "string", "example": "85763644", "description": "Attendee's country." }, "zipCode": { "type": "string", "example": "85763644", "description": "Attendee's zip code." }, "registered": { "type": "boolean", "description": "Whether or not the attendee has registered the meeting." }, "invited": { "type": "boolean", "description": "Whether or not the attendee has been invited to the meeting." } } }, "InviteeObjectForCreateMeeting": { "type": "object", "required": [ "email" ], "properties": { "email": { "type": "string", "example": "brenda.song@example.com", "description": "Email address of meeting invitee." }, "displayName": { "type": "string", "example": "Brenda Song", "description": "Display name of meeting invitee. The maximum length of `displayName` is 128 characters. If not specified but the email has been registered, user's registered name for the email will be taken as `displayName`. If not specified and the email hasn't been registered, the email will be taken as `displayName`." }, "coHost": { "type": "boolean", "description": "Whether or not invitee is allowed to be a cohost for the meeting. `coHost` for each invitee is `true` by default if `roomId` is specified when creating a meeting, and anyone in the invitee list that is not qualified to be a cohost will be invited as a non-cohost invitee." }, "panelist": { "type": "boolean", "description": "Whether or not an invitee is allowed to be a panelist. Only applies to webinars." } } }, "InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting": { "type": "object", "required": [ "id", "languageCode1", "languageCode2" ], "properties": { "id": { "type": "string", "example": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "description": "Unique identifier for meeting interpreter." }, "languageCode1": { "type": "string", "example": "en", "description": "Forms a set of simultaneous interpretation channels together with `languageCode2`. Standard language format from [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) code. Read [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) for details." }, "languageCode2": { "type": "string", "example": "de", "description": "Forms a set of simultaneous interpretation channels together with `languageCode1`. Standard language format from [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) code. Read [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) for details." }, "email": { "type": "string", "example": "marcus.hoffmann@example.com", "description": "Email address of meeting interpreter." }, "displayName": { "type": "string", "example": "Hoffmann", "description": "Display name of meeting interpreter." } } }, "InterpreterObjectForSimultaneousInterpretationOfCreateOrUpdateMeeting": { "type": "object", "required": [ "languageCode1", "languageCode2" ], "properties": { "languageCode1": { "type": "string", "example": "en", "description": "Forms a set of simultaneous interpretation channels together with `languageCode2`. Standard language format from [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) code. Read [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) for details." }, "languageCode2": { "type": "string", "example": "de", "description": "Forms a set of simultaneous interpretation channels together with `languageCode1`. Standard language format from [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) code. Read [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) for details." }, "email": { "type": "string", "example": "marcus.hoffmann@example.com", "description": "Email address of meeting interpreter." }, "displayName": { "type": "string", "example": "Hoffmann", "description": "Display name of meeting interpreter." } } }, "MeetingSeriesObject": { "type": "object", "required": [ "id", "title", "password", "meetingType", "state", "timezone", "start", "end", "hostUserId", "hostDisplayName", "hostEmail", "hostKey", "siteUrl", "webLink", "telephony", "enabledBreakoutSessions" ], "properties": { "id": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7_20200516T230000Z", "description": "Unique identifier for meeting. For a meeting series, the `id` is used to identify the entire series. For scheduled meetings from a series, the `id` is used to identify that scheduled meeting. For a meeting instance that is in progress or has concluded, the `id` is used to identify that instance." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "phoneAndVideoSystemPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric password used to join a meeting from audio and video devices. This attribute applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended." }, "meetingType": { "type": "string", "enum": [ "meetingSeries", "scheduledMeeting", "meeting" ], "description": "Meeting type.\n * `meetingSeries` - Primary instance of a scheduled series of meetings which consists of one or more scheduled meetings based on a `recurrence` rule. When a non-recurring meeting is scheduled with no `recurrence`, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling.\n * `scheduledMeeting` - Instance from a primary meeting series.\n * `meeting` - Meeting instance that is in progress or has completed.\n" }, "state": { "type": "string", "enum": [ "active", "scheduled", "ready", "lobby", "inProgress", "ended", "missed", "expired" ], "description": "Meeting state.\n * `active` - Only applies to a meeting series. Indicates that one or more future scheduled meetings exist for this meeting series.\n * `scheduled` - Only applies to scheduled meeting. Indicates that the meeting is scheduled in the future.\n * `ready` - Only applies to scheduled meeting. Indicates that this scheduled meeting is ready to start or join immediately.\n * `lobby` - Only applies to meeting instances. Indicates that a locked meeting has been joined by participants, but no hosts have joined.\n * `inProgress` - Applies to meeting series and meeting instances. For a meeting series, indicates that an instance of this series is happening now. For a meeting instance, indicates that the meeting has been joined and unlocked.\n * `ended` - Applies to scheduled meetings and meeting instances. For scheduled meetings, indicates that the meeting was started and is now over. For meeting instances, indicates that the meeting instance has concluded.\n * `missed` - This state only applies to scheduled meetings. Indicates that the meeting was scheduled in the past but never happened.\n * `expired` - This state only applies to a meeting series. Indicates that all scheduled meetings of this series have passed.\n" }, "hostDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state, whether or not the meeting host joined the meeting. If true, the meeting host has joined the meeitng even if they dropped off; otherwise, the meeting host hasn't ever join the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "attendeeDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state. Whether or not anyone has joined the meeting. If true, the meeting host or any attendee has joined the meeting; otherwise, no one has joined the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "timezone": { "type": "string", "example": "UTC", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) of `start` and `end`, conforming with the [IANA time zone database](https://www.iana.org/time-zones)." }, "start": { "type": "string", "example": "2019-03-18T11:26:30Z", "description": "Start time for meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meeting is a meeting series, `start` is the date and time the first meeting of the series starts. If the meeting is a meeting series and the `current` filter is true, `start` is the date and time the upcoming or ongoing meeting of the series starts. If the meeting is a scheduled meeting from a meeting series, `start` is the date and time when that scheduled meeting starts. If the meeting is a meeting instance that has happened or is happening, `start` is the date and time that the instance actually starts. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "end": { "type": "string", "example": "2019-03-18T12:26:30Z", "description": "End time for a meeting in ISO 8601 compliant format. If the meeting is a meeting series, `end` is the date and time the first meeting of the series ends. If the meeting is a meeting series and the current filter is true, `end` is the date and time the upcoming or ongoing meeting of the series ends. If the meeting is a scheduled meeting from a meeting series, `end` is the date and time when that scheduled meeting ends. If the meeting is a meeting instance that has happened, `end` is the date and time that instance actually ends. If a meeting instance is in progress, `end` is not available. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=10", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Can be modified for a meeting series using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\". For a non-recurring meeting which has no `recurrence`, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling." }, "hostUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "description": "Unique identifier for the meeting host." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "hostKey": { "type": "string", "example": "123456", "description": "Key for joining the meeting as host." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting." }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join." }, "registerLink": { "type": "string", "example": "https://site4-example.webex.com/weblink/register/ra1c92369995314c0db8d53b2a44d78f6", "description": "Link to register a meeting which has enabled registration." }, "sipAddress": { "type": "string", "example": "123456789@site4-example.webex.com", "description": "SIP address for callback from a video system." }, "dialInIpAddress": { "type": "string", "example": "192.168.100.100", "description": "IP address for callback from a video system." }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "description": "Room ID of the associated Webex space. Only applies to ad-hoc meetings and space meetings." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by a `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowAnyUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting. The `enabledJoinBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect to audio before the host joins the meeting. Only applicable if the `enabledJoinBeforeHost` attribute is set to `true`. The `enableConnectAudioBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. The `joinBeforeHostMinutes` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 10, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required when scheduling a webinar meeting. All available meeting session types enabled for the user can be retrieved using the [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ], "description": "Specifies whether the meeting is a regular meeting, a webinar, or a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n * `meeting` - If the value of `scheduledType` attribute is `meeting`, it is a regular meeting.\n * `webinar` - If the value of `scheduledType` attribute is `webinar`, it is a webinar meeting.\n * `personalRoomMeeting` - If the value of `scheduledType` attribute is `personalRoomMeeting`, it is a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n" }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "phoneAndVideoSystemPanelistPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric panelist password to join a webinar meeting from audio and video devices." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by the `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowFirstUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting uisng the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "telephony": { "type": "object", "required": [ "accessCode", "callInNumbers" ], "properties": { "accessCode": { "type": "string", "example": "1234567890", "description": "Code for authenticating a user to join teleconference. Users join the teleconference using the call-in number or the global call-in number, followed by the value of the `accessCode`." }, "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for the call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join the teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining a teleconference from a phone." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForTelephony" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining a teleconference from a phone." } }, "description": "Information for callbacks from a meeting to phone or for joining a teleconference using a phone." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "registration": { "type": "object", "properties": { "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration requests are accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is shown or required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is shown or required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is shown or required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is shown or required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is shown or required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is shown or required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is shown or required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is shown or required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is shown or required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is shown or required for meeting registration." }, "maxRegisterNum": { "type": "number", "example": 1000, "description": "Maximum number of meeting registrations. This only applies to meetings. The maximum number of participants for meetings and webinars, with the limit based on the user capacity and controlled by a toggle at the site level. The default maximum number of participants for webinars is 10000, but the actual maximum number of participants is limited by the user capacity." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedQuestionForGetMeeting" }, "description": "Customized questions for meeting registration." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/StandardRegistrationApproveRule" }, "description": "The approval rules for standard questions." } }, "description": "Meeting registration. When this option is enabled, meeting invitees must register personal information in order to join the meeting. Meeting invitees will receive an email with a registration link for the registration. When the registration form has been submitted and approved, an email with a real meeting link will be received. By clicking that link the meeting invitee can join the meeting. Please note that meeting registration does not apply to a meeting when it's a recurring meeting with a `recurrence` field or no `password` or when the feature toggle `DecoupleJBHWithRegistration` is disabled the `Join Before Host` option is enabled for the meeting, See [Register for a Meeting in Cisco Webex Meetings](https://help.webex.com/en-us/nmgmeff/Register-for-a-Meeting-in-Cisco-Webex-Meetings) for details." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc." }, "simultaneousInterpretation": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting" }, "description": "Interpreters for meeting." } }, "description": "Simultaneous interpretation information for a meeting." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForBreakoutSessions" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) Breakout Sessions information for meeting." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForGetMeetingObject" }, "description": "Tracking codes information." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for visual watermark." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled. If it's enabled, the `liveStream` must be specified. The RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "LinksObjectForTelephony": { "type": "object", "required": [ "rel", "href", "method" ], "properties": { "rel": { "type": "string", "example": "globalCallinNumbers", "description": "Link relation describing how the target resource is related to the current context (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "href": { "type": "string", "example": "/api/v1/meetings/2c87cf8ece4e414a9fe5516e4a0aac76/globalCallinNumbers", "description": "Target resource URI (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "method": { "type": "string", "example": "GET", "description": "Target resource method (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." } } }, "MeetingSeriesObjectWithAdhoc": { "type": "object", "required": [ "id", "title", "password", "meetingType", "state", "timezone", "start", "end", "hostUserId", "hostDisplayName", "hostEmail", "hostKey", "siteUrl", "webLink", "telephony" ], "properties": { "id": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7_20200516T230000Z", "description": "Unique identifier for meeting. For a meeting series, the `id` is used to identify the entire series. For scheduled meetings from a series, the `id` is used to identify that scheduled meeting. For a meeting instance that is in progress or has concluded, the `id` is used to identify that instance." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "phoneAndVideoSystemPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric password used to join a meeting from audio and video devices. This attribute applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended." }, "meetingType": { "type": "string", "enum": [ "meetingSeries", "scheduledMeeting", "meeting" ], "description": "Meeting type.\n * `meetingSeries` - Primary instance of a scheduled series of meetings which consists of one or more scheduled meetings based on a `recurrence` rule. When a non-recurring meeting is scheduled with no `recurrence`, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling.\n * `scheduledMeeting` - Instance from a primary meeting series.\n * `meeting` - Meeting instance that is in progress or has completed.\n" }, "state": { "type": "string", "enum": [ "active", "scheduled", "ready", "lobby", "inProgress", "ended", "missed", "expired" ], "description": "Meeting state.\n * `active` - Only applies to a meeting series. Indicates that one or more future scheduled meetings exist for this meeting series.\n * `scheduled` - Only applies to scheduled meeting. Indicates that the meeting is scheduled in the future.\n * `ready` - Only applies to scheduled meeting. Indicates that this scheduled meeting is ready to start or join immediately.\n * `lobby` - Only applies to meeting instances. Indicates that a locked meeting has been joined by participants, but no hosts have joined.\n * `inProgress` - Applies to meeting series and meeting instances. For a meeting series, indicates that an instance of this series is happening now. For a meeting instance, indicates that the meeting has been joined and unlocked.\n * `ended` - Applies to scheduled meetings and meeting instances. For scheduled meetings, indicates that the meeting was started and is now over. For meeting instances, indicates that the meeting instance has concluded.\n * `missed` - This state only applies to scheduled meetings. Indicates that the meeting was scheduled in the past but never happened.\n * `expired` - This state only applies to a meeting series. Indicates that all scheduled meetings of this series have passed.\n" }, "hostDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state, whether or not the meeting host joined the meeting. If true, the meeting host has joined the meeitng even if they dropped off; otherwise, the meeting host hasn't ever join the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "attendeeDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state. Whether or not anyone has joined the meeting. If true, the meeting host or any attendee has joined the meeting; otherwise, no one has joined the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "adhoc": { "type": "boolean", "description": "If `true`, the meeting is ad-hoc." }, "timezone": { "type": "string", "example": "UTC", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) of `start` and `end`, conforming with the [IANA time zone database](https://www.iana.org/time-zones)." }, "start": { "type": "string", "example": "2019-03-18T11:26:30Z", "description": "Start time for meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meetingType of this meeting is `meetingSeries`, and `current` is not specified or is `false`, `start` is the scheduled start time of the first occurrence of this series. If the meetingType of this meeting is `meetingSeries`, and `current` is not specified or is `false`, `start` is the scheduled start time of the first occurrence of this series. If the meetingType of this meeting is `meetingSeries`, and `current` is `true`, `start` is the scheduled start time of the ongoing or upcoming occurrence in this series. If the meetingType of this meeting is `scheduledMeeting`, `start` is the scheduled start time of this occurrence. If the meetingType of this meeting is `meeting`, `start` is the actual start time of this meeting instance. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "end": { "type": "string", "example": "2019-03-18T12:26:30Z", "description": "End time for a meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meeting is a meeting series, `end` is the date and time the first meeting of the series ends. If the meetingType of this meeting is `meetingSeries`, and `current` is not specified or is `false`, `end` is the scheduled end time of the first occurrence of this series. If the meetingType of this meeting is `meetingSeries`, and `current` is `true`, `end` is the scheduled end time of the ongoing or upcoming occurrence in this series. If the meetingType of this meeting is `scheduledMeeting`, `end` is the scheduled end time of this occurrence. If the meetingType of this meeting is `meeting`, `end` is the actual end time of this meeting instance. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=10", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Can be modified for a meeting series using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\"." }, "hostUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "description": "Unique identifier for the meeting host." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "hostKey": { "type": "string", "example": "123456", "description": "Key for joining the meeting as host." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting." }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join." }, "sipAddress": { "type": "string", "example": "123456789@site4-example.webex.com", "description": "SIP address for callback from a video system." }, "dialInIpAddress": { "type": "string", "example": "192.168.100.100", "description": "IP address for callback from a video system." }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "description": "Room ID of the associated Webex space. Only applies to ad-hoc meetings and space meetings." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by a `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowAnyUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting. The `enabledJoinBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect to audio before the host joins the meeting. Only applicable if the `enabledJoinBeforeHost` attribute is set to `true`. The `enableConnectAudioBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. The `joinBeforeHostMinutes` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 10, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required when scheduling a webinar meeting. All available meeting session types enabled for the user can be retrieved using the [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ], "description": "Specifies whether the meeting is a regular meeting, a webinar, or a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n * `meeting` - If the value of `scheduledType` attribute is `meeting`, it is a regular meeting.\n * `webinar` - If the value of `scheduledType` attribute is `webinar`, it is a webinar meeting.\n * `personalRoomMeeting` - If the value of `scheduledType` attribute is `personalRoomMeeting`, it is a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n" }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "phoneAndVideoSystemPanelistPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric panelist password to join a webinar meeting from audio and video devices." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by the `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowFirstUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting uisng the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "hasChat": { "type": "boolean", "description": "Whether or not this meeting instance has chat." }, "hasRecording": { "type": "boolean", "description": "Whether or not this meeting instance has been recorded. `true` if the meeting instance has been recorded even if the recording has been deleted." }, "hasTranscription": { "type": "boolean", "description": "Whether or not this meeting instance has a transcription." }, "hasClosedCaption": { "type": "boolean", "description": "Whether or not this meeting instance has closed captions." }, "hasPolls": { "type": "boolean", "description": "Whether or not this meeting instance has polls." }, "hasQA": { "type": "boolean", "description": "Whether or not this meeting instance has Q&A." }, "hasSlido": { "type": "boolean", "description": "Whether or not this meeting instance has Slido interactions. It's true if Slido is enabled in the meeting and there are interactions like Q&A or polling in Slido." }, "hasRegistration": { "type": "boolean", "description": "Whether or not this meeting instance has a registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasRegistrants": { "type": "boolean", "description": "Whether or not someone has registered a this meeting instance via the registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasPostEventSurvey": { "type": "boolean", "description": "Whether this meeting instance has a survey and someone has responded to the survey. Only applies to ended webinar instances. Doesn't apply to meeting series, scheduled meetings, in-progress meeting or webinar instances, or ended meeting instances." }, "telephony": { "type": "object", "required": [ "accessCode", "callInNumbers" ], "properties": { "accessCode": { "type": "string", "example": "1234567890", "description": "Code for authenticating a user to join teleconference. Users join the teleconference using the call-in number or the global call-in number, followed by the value of the `accessCode`." }, "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for the call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join the teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining a teleconference from a phone." }, "links": { "type": "object", "required": [ "rel", "href", "method" ], "properties": { "rel": { "type": "string", "example": "globalCallinNumbers", "description": "Link relation describing how the target resource is related to the current context (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "href": { "type": "string", "example": "/api/v1/meetings/2c87cf8ece4e414a9fe5516e4a0aac76/globalCallinNumbers", "description": "Target resource URI (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "method": { "type": "string", "example": "GET", "description": "Target resource method (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." } }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining a teleconference from a phone." } }, "description": "Information for callbacks from a meeting to phone or for joining a teleconference using a phone." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "registration": { "type": "object", "properties": { "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration requests are accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is required for meeting registration." }, "maxRegisterNum": { "type": "number", "example": 1000, "description": "Maximum number of meeting registrations. This only applies to meetings. The maximum number of participants for meetings and webinars, with the limit based on the user capacity and controlled by a toggle at the site level. The default maximum number of participants for webinars is 10000, but the actual maximum number of participants is limited by the user capacity." } }, "description": "Meeting registration. When this option is enabled, meeting invitees must register personal information in order to join the meeting. Meeting invitees will receive an email with a registration link for the registration. When the registration form has been submitted and approved, an email with a real meeting link will be received. By clicking that link the meeting invitee can join the meeting. Please note that meeting registration does not apply to a meeting when it's a recurring meeting with a `recurrence` field or no password, or the `Join Before Host` option is enabled for the meeting. See [Register for a Meeting in Cisco Webex Meetings](https://help.webex.com/en-us/nmgmeff/Register-for-a-Meeting-in-Cisco-Webex-Meetings) for details." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc." }, "simultaneousInterpretation": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting" }, "description": "Interpreters for meeting." } }, "description": "Simultaneous interpretation information for the meeting." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForGetMeetingObject" }, "description": "Tracking codes information." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for visual watermark." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled. If it's enabled, the `liveStream` must be specified. The RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "MeetingObjectForListMeeting": { "type": "object", "required": [ "id", "meetingSeriesId", "title", "password", "meetingType", "state", "timezone", "start", "end", "hostUserId", "hostDisplayName", "hostEmail", "hostKey", "siteUrl", "webLink", "telephony", "enabledBreakoutSessions" ], "properties": { "id": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7_20200516T230000Z", "description": "Unique identifier for meeting. For a meeting series, the `id` is used to identify the entire series. For scheduled meetings from a series, the `id` is used to identify that scheduled meeting. For a meeting instance that is in progress or has concluded, the `id` is used to identify that instance." }, "meetingSeriesId": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7", "description": "Unique identifier for meeting series. It only apples to scheduled meeting and meeting instance. If it's a scheduled meeting from a series or a meeting instance that is happening or has happened, the `meetingSeriesId` is the `id` of the primary series." }, "scheduledMeetingId": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7", "description": "Unique identifier for scheduled meeting which current meeting is associated with. It only apples to meeting instance which is happening or has happened. It's the `id` of the scheduled meeting this instance is associated with." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "phoneAndVideoSystemPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric password used to join a meeting from audio and video devices. This attribute applies to meeting series, scheduled meetings, and in-progress meeting instances, but not to meeting instances which have ended." }, "meetingType": { "type": "string", "enum": [ "meetingSeries", "scheduledMeeting", "meeting" ], "description": "Meeting type.\n * `meetingSeries` - Primary instance of a scheduled series of meetings which consists of one or more scheduled meetings based on a `recurrence` rule. When a non-recurring meeting is scheduled with no `recurrence`, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling.\n * `scheduledMeeting` - Instance from a primary meeting series.\n * `meeting` - Meeting instance that is in progress or has completed.\n" }, "state": { "type": "string", "enum": [ "active", "scheduled", "ready", "lobby", "inProgress", "ended", "missed", "expired" ], "description": "Meeting state.\n * `active` - Only applies to a meeting series. Indicates that one or more future scheduled meetings exist for this meeting series.\n * `scheduled` - Only applies to scheduled meeting. Indicates that the meeting is scheduled in the future.\n * `ready` - Only applies to scheduled meeting. Indicates that this scheduled meeting is ready to start or join immediately.\n * `lobby` - Only applies to meeting instances. Indicates that a locked meeting has been joined by participants, but no hosts have joined.\n * `inProgress` - Applies to meeting series and meeting instance. For meeting series, indicates that an instance of this series is in progress; for a meeting instances, indicates that the meeting has been joined and unlocked.\n * `ended` - Applies to scheduled meetings and meeting instances. For scheduled meetings, indicates that the meeting was started and is now over. For meeting instances, indicates that the meeting instance has concluded.\n * `missed` - This state only applies to scheduled meetings. Indicates that the meeting was scheduled in the past but never happened.\n * `expired` - This state only applies to a meeting series. Indicates that all scheduled meetings of this series have passed.\n" }, "hostDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state, whether or not the meeting host joined the meeting. If true, the meeting host has joined the meeitng even if they dropped off; otherwise, the meeting host hasn't ever join the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "attendeeDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state. Whether or not anyone has joined the meeting. If true, the meeting host or any attendee has joined the meeting; otherwise, no one has joined the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "isModified": { "type": "boolean", "description": "This state only applies to scheduled meeting. Flag identifying whether or not the scheduled meeting has been modified." }, "timezone": { "type": "string", "example": "UTC", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) of `start` and `end`, conforming with the [IANA time zone database](https://www.iana.org/time-zones)." }, "start": { "type": "string", "example": "2019-03-18T11:26:30Z", "description": "Start time for meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meetingType of a meeting is `meetingSeries`, `start` is the scheduled start time of the first occurrence of this series. If the meeting is a meeting series and the `current` filter is true, `start` is the date and time the upcoming or ongoing meeting of the series starts. If the meetingType of a meeting is `scheduledMeeting`, `start` is the scheduled start time of this occurrence. If the meetingType of a meeting is `meeting`, `start` is the actual start time of the meeting instance. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "end": { "type": "string", "example": "2019-03-18T12:26:30Z", "description": "End time for a meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meetingType of a meeting is `meetingSeries`, `end` is the scheduled end time of the first occurrence of this series. If the meeting is a meeting series and the current filter is true, `end` is the date and time the upcoming or ongoing meeting of the series ends. If the meetingType of a meeting is `scheduledMeeting`, `end` is the scheduled end time of this occurrence. If the meetingType of a meeting is `meeting`, `end` is the actual end time of the meeting instance. If a meeting instance is in progress, `end` is not available. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=10", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Can be modified for a meeting series using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\"." }, "hostUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "description": "Unique identifier for the meeting host." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "hostKey": { "type": "string", "example": "123456", "description": "Key for joining the meeting as host." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting." }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join." }, "sipAddress": { "type": "string", "example": "123456789@site4-example.webex.com", "description": "SIP address for callback from a video system." }, "dialInIpAddress": { "type": "string", "example": "192.168.100.100", "description": "IP address for callback from a video system." }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "description": "Room ID of the associated Webex space. Only applies to ad-hoc meetings and space meetings." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by a `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowAnyUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting. The `enabledJoinBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect to audio before the host joins the meeting. Only applicable if the `enabledJoinBeforeHost` attribute is set to `true`. The `enableConnectAudioBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. The `joinBeforeHostMinutes` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 10, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required when scheduling a webinar meeting. All available meeting session types enabled for the user can be retrieved using the [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ], "description": "Specifies whether the meeting is a regular meeting, a webinar, or a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n * `meeting` - If the value of `scheduledType` attribute is `meeting`, it is a regular meeting.\n * `webinar` - If the value of `scheduledType` attribute is `webinar`, it is a webinar meeting.\n * `personalRoomMeeting` - If the value of `scheduledType` attribute is `personalRoomMeeting`, it is a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n" }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "phoneAndVideoSystemPanelistPassword": { "type": "string", "example": "12345678", "description": "8-digit numeric panelist password to join a webinar meeting from audio and video devices." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by the `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowFirstUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting uisng the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "hasChat": { "type": "boolean", "description": "Whether or not this meeting instance has chat." }, "hasRecording": { "type": "boolean", "description": "Whether or not this meeting instance has been recorded. `true` if the meeting instance has been recorded even if the recording has been deleted." }, "hasTranscription": { "type": "boolean", "description": "Whether or not this meeting instance has a transcription." }, "hasClosedCaption": { "type": "boolean", "description": "Whether or not this meeting instance has closed captions." }, "hasPolls": { "type": "boolean", "description": "Whether or not this meeting instance has polls." }, "hasQA": { "type": "boolean", "description": "Whether or not this meeting instance has Q&A." }, "hasSlido": { "type": "boolean", "description": "Whether or not this meeting instance has Slido interactions. It's true if Slido is enabled in the meeting and there are interactions like Q&A or polling in Slido." }, "hasRegistration": { "type": "boolean", "description": "Whether or not this meeting instance has a registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasRegistrants": { "type": "boolean", "description": "Whether or not someone has registered a this meeting instance via the registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasPostEventSurvey": { "type": "boolean", "description": "Whether this meeting instance has a survey and someone has responded to the survey. Only applies to ended webinar instances. Doesn't apply to meeting series, scheduled meetings, in-progress meeting or webinar instances, or ended meeting instances." }, "telephony": { "type": "object", "required": [ "accessCode", "callInNumbers" ], "properties": { "accessCode": { "type": "string", "example": "1234567890", "description": "Code for authenticating a user to join teleconference. Users join the teleconference using the call-in number or the global call-in number, followed by the value of the `accessCode`." }, "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for the call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join the teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining a teleconference from a phone." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForTelephony" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining a teleconference from a phone." } }, "description": "Information for callbacks from a meeting to phone or for joining a teleconference using a phone." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "registration": { "type": "object", "properties": { "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration requests are accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is shown or required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is shown or required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is shown or required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is shown or required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is shown or required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is shown or required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is shown or required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is shown or required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is shown or required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is shown or required for meeting registration." }, "maxRegisterNum": { "type": "number", "example": 1000, "description": "Maximum number of meeting registrations. This only applies to meetings. The maximum number of participants for meetings and webinars, with the limit based on the user capacity and controlled by a toggle at the site level. The default maximum number of participants for webinars is 10000, but the actual maximum number of participants is limited by the user capacity." } }, "description": "Meeting registration. When this option is enabled, meeting invitees must register personal information in order to join the meeting. Meeting invitees will receive an email with a registration link for the registration. When the registration form has been submitted and approved, an email with a real meeting link will be received. By clicking that link the meeting invitee can join the meeting. Please note that meeting registration does not apply to a meeting when it's a recurring meeting with a `recurrence` field or no `password` or when the feature toggle `DecoupleJBHWithRegistration` is disabled the `Join Before Host` option is enabled for the meeting, See [Register for a Meeting in Cisco Webex Meetings](https://help.webex.com/en-us/nmgmeff/Register-for-a-Meeting-in-Cisco-Webex-Meetings) for details." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its domain, for example, Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc." }, "simultaneousInterpretation": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting" }, "description": "Interpreters for meeting." } }, "description": "Simultaneous interpretation information for the meeting." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForBreakoutSessions" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) Breakout Sessions information for meeting." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForGetMeetingObject" }, "description": "Tracking codes information." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for visual watermark." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled. If it's enabled, the `liveStream` must be specified. The RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "MeetingObjectForAdminListMeeting": { "type": "object", "required": [ "id", "meetingSeriesId", "title", "meetingType", "state", "timezone", "start", "end", "hostUserId", "hostDisplayName", "hostEmail", "siteUrl", "telephony", "enabledBreakoutSessions" ], "properties": { "id": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7_20200516T230000Z", "description": "Unique identifier for meeting. For a meeting series, the `id` is used to identify the entire series. For scheduled meetings from a series, the `id` is used to identify that scheduled meeting. For a meeting instance that is in progress or has concluded, the `id` is used to identify that instance." }, "meetingSeriesId": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7", "description": "Unique identifier for meeting series. It only apples to scheduled meeting and meeting instance. If it's a scheduled meeting from a series or a meeting instance that is happening or has happened, the `meetingSeriesId` is the `id` of the primary series." }, "scheduledMeetingId": { "type": "string", "example": "dfb45ece33264639a7bc3dd9535d53f7", "description": "Unique identifier for scheduled meeting which current meeting is associated with. It only apples to meeting instance which is happening or has happened. It's the `id` of the scheduled meeting this instance is associated with." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "meetingType": { "type": "string", "enum": [ "meetingSeries", "scheduledMeeting", "meeting" ], "description": "Meeting type.\n * `meetingSeries` - Primary instance of a scheduled series of meetings which consists of one or more scheduled meetings based on a `recurrence` rule. When a non-recurring meeting is scheduled with no `recurrence`, its `meetingType` is also `meetingSeries` which is a meeting series with only one occurrence in Webex meeting modeling.\n * `scheduledMeeting` - Instance from a primary meeting series.\n * `meeting` - Meeting instance that is in progress or has completed.\n" }, "state": { "type": "string", "enum": [ "active", "scheduled", "ready", "lobby", "inProgress", "ended", "missed", "expired" ], "description": "Meeting state.\n * `active` - Only applies to a meeting series. Indicates that one or more future scheduled meetings exist for this meeting series.\n * `scheduled` - Only applies to scheduled meeting. Indicates that the meeting is scheduled in the future.\n * `ready` - Only applies to scheduled meeting. Indicates that this scheduled meeting is ready to start or join immediately.\n * `lobby` - Only applies to meeting instances. Indicates that a locked meeting has been joined by participants, but no hosts have joined.\n * `inProgress` - Applies to meeting series and meeting instance. For meeting series, indicates that an instance of this series is in progress; for a meeting instances, indicates that the meeting has been joined and unlocked.\n * `ended` - Applies to scheduled meetings and meeting instances. For scheduled meetings, indicates that the meeting was started and is now over. For meeting instances, indicates that the meeting instance has concluded.\n * `missed` - This state only applies to scheduled meetings. Indicates that the meeting was scheduled in the past but never happened.\n * `expired` - This state only applies to a meeting series. Indicates that all scheduled meetings of this series have passed.\n" }, "hostDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state, whether or not the meeting host joined the meeting. If true, the meeting host has joined the meeitng even if they dropped off; otherwise, the meeting host hasn't ever join the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "attendeeDidJoin": { "type": "boolean", "description": "Only applies to meeting series in the `inProgress` state, scheduled meetings in the `ready` state, and meeting instances in the `inProgress` state. Whether or not anyone has joined the meeting. If true, the meeting host or any attendee has joined the meeting; otherwise, no one has joined the meeting. Indicates that someone is waiting in the lobby and the host hasn't joined the meeting if `attendeeDidJoin` is true and `hostDidJoin` is false." }, "isModified": { "type": "boolean", "description": "This state only applies to scheduled meeting. Flag identifying whether or not the scheduled meeting has been modified." }, "timezone": { "type": "string", "example": "UTC", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) of `start` and `end`, conforming with the [IANA time zone database](https://www.iana.org/time-zones)." }, "start": { "type": "string", "example": "2019-03-18T11:26:30Z", "description": "Start time for meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meetingType of a meeting is `meetingSeries`, `start` is the scheduled start time of the first occurrence of this series. If the meeting is a meeting series and the `current` filter is true, `start` is the date and time the upcoming or ongoing meeting of the series starts. If the meetingType of a meeting is `scheduledMeeting`, `start` is the scheduled start time of this occurrence. If the meetingType of a meeting is `meeting`, `start` is the actual start time of the meeting instance. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "end": { "type": "string", "example": "2019-03-18T12:26:30Z", "description": "End time for a meeting in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If the meetingType of a meeting is `meetingSeries`, `end` is the scheduled end time of the first occurrence of this series. If the meeting is a meeting series and the current filter is true, `end` is the date and time the upcoming or ongoing meeting of the series ends. If the meetingType of a meeting is `scheduledMeeting`, `end` is the scheduled end time of this occurrence. If the meetingType of a meeting is `meeting`, `end` is the actual end time of the meeting instance. If a meeting instance is in progress, `end` is not available. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=10", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Can be modified for a meeting series using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\"." }, "hostUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83QkFCQkU5OS1CNDNFLTREM0YtOTE0Ny1BMUU5RDQ2QzlDQTA", "description": "Unique identifier for the meeting host." }, "hostDisplayName": { "type": "string", "example": "John Andersen", "description": "Display name for the meeting host." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting." }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "description": "Room ID of the associated Webex space. Only applies to ad-hoc meetings and space meetings." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically. Can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by a `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowAnyUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting. The `enabledJoinBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect to audio before the host joins the meeting. Only applicable if the `enabledJoinBeforeHost` attribute is set to `true`. The `enableConnectAudioBeforeHost` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. The `joinBeforeHostMinutes` attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 10, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required when scheduling a webinar meeting. All available meeting session types enabled for the user can be retrieved using the [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ], "description": "Specifies whether the meeting is a regular meeting, a webinar, or a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n * `meeting` - If the value of `scheduledType` attribute is `meeting`, it is a regular meeting.\n * `webinar` - If the value of `scheduledType` attribute is `webinar`, it is a webinar meeting.\n * `personalRoomMeeting` - If the value of `scheduledType` attribute is `personalRoomMeeting`, it is a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings).\n" }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by the `siteUrl` parameter when creating the meeting. If not specified, it's a user's preferred site. The `allowFirstUserToBeCoHost` attribute can be modified for a meeting series or a scheduled meeting uisng the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt. This attribute can be modified for a meeting series or a scheduled meeting using the [Update a Meeting](/docs/api/v1/meetings/update-a-meeting) API." }, "hasChat": { "type": "boolean", "description": "Whether or not this meeting instance has chat." }, "hasRecording": { "type": "boolean", "description": "Whether or not this meeting instance has been recorded. `true` if the meeting instance has been recorded even if the recording has been deleted." }, "hasTranscription": { "type": "boolean", "description": "Whether or not this meeting instance has a transcription." }, "hasSummary": { "type": "boolean", "description": "Whether or not this meeting instance has a summary." }, "hasClosedCaption": { "type": "boolean", "description": "Whether or not this meeting instance has closed captions." }, "hasPolls": { "type": "boolean", "description": "Whether or not this meeting instance has polls." }, "hasQA": { "type": "boolean", "description": "Whether or not this meeting instance has Q&A." }, "hasRegistration": { "type": "boolean", "description": "Whether or not this meeting instance has a registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasRegistrants": { "type": "boolean", "description": "Whether or not someone has registered a this meeting instance via the registration form. Only applies to ended meeting or webinar instances. Doesn't apply to meeting series, scheduled meetings, or in-progress meeting or webinar instances." }, "hasPostEventSurvey": { "type": "boolean", "description": "Whether this meeting instance has a survey and someone has responded to the survey. Only applies to ended webinar instances. Doesn't apply to meeting series, scheduled meetings, in-progress meeting or webinar instances, or ended meeting instances." }, "telephony": { "type": "object", "required": [ "callInNumbers" ], "properties": { "callInNumbers": { "type": "array", "items": { "type": "object", "required": [ "label", "callInNumber", "tollType" ], "properties": { "label": { "type": "string", "example": "Call-in toll-free number (US/Canada)", "description": "Label for the call-in number." }, "callInNumber": { "type": "string", "example": "123456789", "description": "Call-in number to join the teleconference from a phone." }, "tollType": { "type": "string", "enum": [ "toll", "tollFree" ], "description": "Type of toll for the call-in number." } } }, "description": "Array of call-in numbers for joining a teleconference from a phone." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForTelephony" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) information of global call-in numbers for joining a teleconference from a phone." } }, "description": "Information for callbacks from a meeting to phone or for joining a teleconference using a phone." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its domain, for example, Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc." }, "simultaneousInterpretation": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting" }, "description": "Interpreters for meeting." } }, "description": "Simultaneous interpretation information for the meeting." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled." }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/LinksObjectForBreakoutSessions" }, "description": "[HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) Breakout Sessions information for meeting." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForGetMeetingObject" }, "description": "Tracking codes information." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for visual watermark." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled. If enabled, the `liveStream` must be specified. The RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. Applies when `enabledLiveStream` is `true`." } } }, "PatchMeetingObject": { "type": "object", "properties": { "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. The title can be a maximum of 128 characters long." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long. It can be specified `null` so that it becomes null and hidden from the response after the patch." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details." }, "start": { "type": "string", "example": "2020-05-15T20:30:00-08:00", "description": "Date and time for the start of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `start` cannot be before current date and time or after `end`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `start` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, if `start` is within the same minute as the current time, `start` will be adjusted to the upcoming minute; otherwise, `start` will be adjusted with seconds and milliseconds stripped off. For instance, if the current time is `2022-03-01T10:32:16.657+08:00`, `start` of `2022-03-01T10:32:28.076+08:00` or `2022-03-01T10:32:41+08:00` will be adjusted to `2022-03-01T10:33:00+08:00`, and `start` of `2022-03-01T11:32:28.076+08:00` or `2022-03-01T11:32:41+08:00` will be adjusted to `2022-03-01T11:32:00+08:00`." }, "end": { "type": "string", "example": "2020-05-15T21:30:00-08:00", "description": "Date and time for the end of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `end` cannot be before current date and time or before `start`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `end` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, `end` will be adjusted with seconds and milliseconds stripped off. For instance, `end` of `2022-03-01T11:52:28.076+08:00` or `2022-03-01T11:52:41+08:00` will be adjusted to `2022-03-01T11:52:00+08:00`." }, "timezone": { "type": "string", "example": "America/Los_Angeles", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in which the meeting was originally scheduled (conforming with the [IANA time zone database](https://www.iana.org/time-zones))." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=20", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\". It can be specified `null` so that the meeting becomes non-recurring and the `recurrence` attribute becomes null and hidden from the response after the patch." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect audio in the meeting before the host joins the meeting. This attribute is only applicable if the `enabledJoinBeforeHost` attribute is set to true." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 30, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required while scheduling webinar meeting. All available meeting session types enabled for the user can be retrieved by [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt." }, "sendEmail": { "type": "boolean", "example": true, "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host. The field is not editable and is only used to patch a meeting on behalf of the real meeting host. Please use the [Reassign Meetings to a New Host](/docs/api/v1/meetings/reassign-meetings-to-a-new-host) API if you need to update the meeting host." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries meetings by a key in its own domain. The maximum size of `integrationTags` is 3 and each item of `integrationTags` can be a maximum of 64 characters long. Please note that an empty or null `integrationTags` will delete all existing integration tags for the meeting implicitly. Developer can update integration tags for a `meetingSeries` but he cannot update it for a `scheduledMeeting` or a `meeting` instance." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled. If the value of `enabledBreakoutSessions` is false, users can not set breakout sessions. If the value of `enabledBreakoutSessions` is true, users can update breakout sessions using the [Update Breakout Sessions](/docs/api/v1/meetings/{meetingId}/breakoutSessions) API. Updating breakout sessions are not supported by this API." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForCreateMeetingObject" }, "description": "Tracking codes information. All available tracking codes and their options for the specified site can be retrieved by [List Meeting Tracking Codes](/docs/api/v1/meetings/list-meeting-tracking-codes) API. If an optional tracking code is missing from the `trackingCodes` array and there's a default option for this tracking code, the default option is assigned automatically. If the `inputMode` of a tracking code is `select`, its value must be one of the site-level options or the user-level value. Tracking code is not supported for a personal room meeting or an ad-hoc space meeting. It can be specified `null` so that it becomes null and hidden from the response after the patch." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled. If it's `true`, `scheduledType` equals or defaults to `meeting`, and `audioConnectionOptions.audioConnectionType` equals `VoIP`, the audio for this meeting will have a watermark. In this case, a unique identifier is embedded into the audio that plays out of each Webex app and device. An administrator can use this watermark when analyzing an unauthorized recording to identify which Webex app or device was the source of the recording." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled. If it's `true`, the video for this meeting will have a watermark. In this case, Webex superimposes a watermark image pattern on top of the meeting video and shared content to deter participants from leaking meeting information. Each participant viewing the meeting sees a watermark image pattern with their email address. If the participant is not signed in, the watermark image pattern includes their display name and email address." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for the visual watermark. The value must be between 5 and 80, inclusive. A smaller value means less distraction for meeting participants, while a larger value shows a clearer watermark. It's supported when `enabledVisualWatermark` is `true`." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar. This option works when the value of `scheduledType` attribute is `webinar`. Please note that `requireAttendeeLogin` cannot be set if someone has already registered for the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only. This option works when the registration option is disabled and the value of `scheduledType` attribute is `webinar`. Please note that `restrictToInvitees` cannot be set to `true` if `requireAttendeeLogin` is `false`." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "UpdateMeetingObject": { "type": "object", "properties": { "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. The title can be a maximum of 128 characters long." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details." }, "start": { "type": "string", "example": "2020-05-15T20:30:00-08:00", "description": "Date and time for the start of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `start` cannot be before current date and time or after `end`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `start` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, if `start` is within the same minute as the current time, `start` will be adjusted to the upcoming minute; otherwise, `start` will be adjusted with seconds and milliseconds stripped off. For instance, if the current time is `2022-03-01T10:32:16.657+08:00`, `start` of `2022-03-01T10:32:28.076+08:00` or `2022-03-01T10:32:41+08:00` will be adjusted to `2022-03-01T10:33:00+08:00`, and `start` of `2022-03-01T11:32:28.076+08:00` or `2022-03-01T11:32:41+08:00` will be adjusted to `2022-03-01T11:32:00+08:00`." }, "end": { "type": "string", "example": "2020-05-15T21:30:00-08:00", "description": "Date and time for the end of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `end` cannot be before current date and time or before `start`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `end` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, `end` will be adjusted with seconds and milliseconds stripped off. For instance, `end` of `2022-03-01T11:52:28.076+08:00` or `2022-03-01T11:52:41+08:00` will be adjusted to `2022-03-01T11:52:00+08:00`." }, "timezone": { "type": "string", "example": "America/Los_Angeles", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in which the meeting was originally scheduled (conforming with the [IANA time zone database](https://www.iana.org/time-zones))." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=20", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\"." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect audio in the meeting before the host joins the meeting. This attribute is only applicable if the `enabledJoinBeforeHost` attribute is set to true." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 30, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required while scheduling webinar meeting. All available meeting session types enabled for the user can be retrieved by [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt." }, "sendEmail": { "type": "boolean", "example": true, "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host. The field is not editable and is only used to update a meeting on behalf of the real meeting host. Please use the [Reassign Meetings to a New Host](/docs/api/v1/meetings/reassign-meetings-to-a-new-host) API if you need to update the meeting host." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries meetings by a key in its own domain. The maximum size of `integrationTags` is 3 and each item of `integrationTags` can be a maximum of 64 characters long. Please note that an empty or null `integrationTags` will delete all existing integration tags for the meeting implicitly. Developer can update integration tags for a `meetingSeries` but he cannot update it for a `scheduledMeeting` or a `meeting` instance." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled. If the value of `enabledBreakoutSessions` is false, users can not set breakout sessions. If the value of `enabledBreakoutSessions` is true, users can update breakout sessions using the [Update Breakout Sessions](/docs/api/v1/meetings/{meetingId}/breakoutSessions) API. Updating breakout sessions are not supported by this API." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForCreateMeetingObject" }, "description": "Tracking codes information. All available tracking codes and their options for the specified site can be retrieved by [List Meeting Tracking Codes](/docs/api/v1/meetings/list-meeting-tracking-codes) API. If an optional tracking code is missing from the `trackingCodes` array and there's a default option for this tracking code, the default option is assigned automatically. If the `inputMode` of a tracking code is `select`, its value must be one of the site-level options or the user-level value. Tracking code is not supported for a personal room meeting or an ad-hoc space meeting." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled. If it's `true`, `scheduledType` equals or defaults to `meeting`, and `audioConnectionOptions.audioConnectionType` equals `VoIP`, the audio for this meeting will have a watermark. In this case, a unique identifier is embedded into the audio that plays out of each Webex app and device. An administrator can use this watermark when analyzing an unauthorized recording to identify which Webex app or device was the source of the recording." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled. If it's `true`, the video for this meeting will have a watermark. In this case, Webex superimposes a watermark image pattern on top of the meeting video and shared content to deter participants from leaking meeting information. Each participant viewing the meeting sees a watermark image pattern with their email address. If the participant is not signed in, the watermark image pattern includes their display name and email address." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for the visual watermark. The value must be between 5 and 80, inclusive. A smaller value means less distraction for meeting participants, while a larger value shows a clearer watermark. It's supported when `enabledVisualWatermark` is `true`." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar. This option works when the value of `scheduledType` attribute is `webinar`. Please note that `requireAttendeeLogin` cannot be set if someone has already registered for the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only. This option works when the registration option is disabled and the value of `scheduledType` attribute is `webinar`. Please note that `restrictToInvitees` cannot be set to `true` if `requireAttendeeLogin` is `false`." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "CreateMeetingObject": { "type": "object", "required": [ "title", "start", "end" ], "properties": { "adhoc": { "type": "boolean", "description": "Whether or not to create an ad-hoc meeting for the room specified by `roomId`. When `true`, `roomId` is required." }, "roomId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPT00vNDMzZjk0ZjAtOTZhNi0xMWViLWJhOTctOTU3OTNjZDhiY2Q2", "description": "Unique identifier for the Webex space which the meeting is to be associated with. It can be retrieved by [List Rooms](/docs/api/v1/rooms/list-rooms). `roomId` is required when `adhoc` is `true`. When `roomId` is specified, the parameter `hostEmail` will be ignored." }, "templateId": { "type": "string", "example": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "description": "Unique identifier for meeting template. Please note that `start` and `end` are optional when `templateId` is specified. The list of meeting templates that is available for the authenticated user can be retrieved from [List Meeting Templates](/docs/api/v1/meetings/list-meeting-templates). This parameter is ignored for an ad-hoc meeting." }, "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. The title can be a maximum of 128 characters long. The default value for an ad-hoc meeting is the user's name if not specified." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "start": { "type": "string", "example": "2020-05-15T20:30:00-08:00", "description": "Date and time for the start of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `start` cannot be before current date and time or after `end`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Please note that when a meeting is being scheduled, `start` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, if `start` is within the same minute as the current time, `start` will be adjusted to the upcoming minute; otherwise, `start` will be adjusted with seconds and milliseconds stripped off. For instance, if the current time is `2022-03-01T10:32:16.657+08:00`, `start` of `2022-03-01T10:32:28.076+08:00` or `2022-03-01T10:32:41+08:00` will be adjusted to `2022-03-01T10:33:00+08:00`, and `start` of `2022-03-01T11:32:28.076+08:00` or `2022-03-01T11:32:41+08:00` will be adjusted to `2022-03-01T11:32:00+08:00`. The default value for an ad-hoc meeting is 5 minutes after the current time and the user's input value will be ignored. An ad-hoc meeting can be started immediately even if the `start` is 5 minutes after the current time." }, "end": { "type": "string", "example": "2020-05-15T21:30:00-08:00", "description": "Date and time for the end of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `end` cannot be before current date and time or before `start`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Please note that when a meeting is being scheduled, `end` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, `end` will be adjusted with seconds and milliseconds stripped off. For instance, `end` of `2022-03-01T11:52:28.076+08:00` or `2022-03-01T11:52:41+08:00` will be adjusted to `2022-03-01T11:52:00+08:00`. The default value for an ad-hoc meeting is 20 minutes after the current time and the user's input value will be ignored." }, "timezone": { "type": "string", "example": "America/Los_Angeles", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in which the meeting was originally scheduled (conforming with the [IANA time zone database](https://www.iana.org/time-zones)). The default value for an ad-hoc meeting is `UTC` and the user's input value will be ignored." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=20", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)), applying only to meeting series. It doesn't apply to a scheduled meeting or an ended or ongoing meeting instance. This parameter is ignored for an ad-hoc meeting. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\"." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's the user's preferred site. The default value for an ad-hoc meeting is `true` and the user's input value will be ignored." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting. The default value for an ad-hoc meeting is `true` and the user's input value will be ignored." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect audio in the meeting before the host joins the meeting. This attribute is only applicable if the `enabledJoinBeforeHost` attribute is set to true. The default value for an ad-hoc meeting is `true` and the user's input value will be ignored." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. This attribute is only applicable if the `enabledJoinBeforeHost` attribute is set to true. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default value for an ad-hoc meeting is 0 and the user's input value will be ignored." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation. This parameter is ignored for an ad-hoc meeting." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar. The default value for an ad-hoc meeting is `false` and the user's input value will be ignored." }, "reminderTime": { "type": "number", "example": 10, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host. This parameter is ignored for an ad-hoc meeting." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting. The default value for an ad-hoc meeting is `allowJoinWithLobby` and the user's input value will be ignored.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required when scheduling a webinar meeting. All available meeting session types enabled for the user can be retrieved using the [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "scheduledType": { "type": "string", "enum": [ "meeting", "webinar", "personalRoomMeeting" ], "description": "When set as an attribute in a POST request body, specifies whether it's a regular meeting, a webinar, or a meeting scheduled in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings). If not specified, it's a regular meeting by default. The default value for an ad-hoc meeting is `meeting` and the user's input value will be ignored.\n * `meeting` - Set the value of `scheduledType` attribute to `meeting` for creating a regular meeting.\n * `webinar` - Set the value of `scheduledType` attribute to `webinar` for creating a webinar meeting.\n * `personalRoomMeeting` - Set the value of `scheduledType` attribute to `personalRoomMeeting` for creating a meeting in the user's [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings). Please note that `templateId`, `roomId`, `integrationTags`, `enabledWebcastView`, `enabledAutoRecordMeeting` and `registration` are not supported when creating a personal room meeting.\n" }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled. This parameter is ignored for an ad-hoc meeting." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically. This parameter is ignored for an ad-hoc meeting." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts. The default value for an ad-hoc meeting is `false` and the user's input value will be ignored." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it. The default value for an ad-hoc meeting is null and the user's input value will be ignored." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site. The default value for an ad-hoc meeting is `false` and the user's input value will be ignored." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt. The default value for an ad-hoc meeting is `true` and the user's input value will be ignored." }, "invitees": { "type": "array", "items": { "$ref": "#/components/schemas/InviteeObjectForCreateMeeting" }, "description": "Invitees for meeting. The maximum size of invitees is 1000. If `roomId` is specified and `invitees` is missing, all the members in the space are invited implicitly. If both `roomId` and `invitees` are specified, only those in the `invitees` list are invited. `coHost` for each invitee is `true` by default if `roomId` is specified when creating a meeting, and anyone in the invitee list that is not qualified to be a cohost will be invited as a non-cohost invitee. The user's input value will be ignored for an ad-hoc meeting and the the members of the room specified by `roomId` except \"me\" will be used by default." }, "sendEmail": { "type": "boolean", "example": true, "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true. The default value for an ad-hoc meeting is `false` and the user's input value will be ignored." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "URL of the Webex site which the meeting is created on. If not specified, the meeting is created on user's preferred site. All available Webex sites and preferred site of the user can be retrieved by `Get Site List` API." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "registration": { "type": "object", "properties": { "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration request is accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration. This option must always be `true`." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration. This option must always be `true`." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration. This option must always be `true`." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is shown or required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is shown or required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is shown or required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is shown or required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is shown or required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is shown or required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is shown or required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is shown or required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is shown or required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is shown or required for meeting registration." }, "maxRegisterNum": { "type": "number", "example": 1000, "description": "Maximum number of meeting registrations. This only applies to meetings. The maximum number of participants for meetings and webinars, with the limit based on the user capacity and controlled by a toggle at the site level. The default maximum number of participants for webinars is 10000, but the actual maximum number of participants is limited by the user capacity." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedQuestionForCreateMeeting" }, "description": "Customized questions for meeting registration." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/StandardRegistrationApproveRule" }, "description": "The approval rules for standard questions." } }, "description": "Meeting registration. When this option is enabled, meeting invitees must register personal information in order to join the meeting. Meeting invitees will receive an email with a registration link for the registration. When the registration form has been submitted and approved, an email with a real meeting link will be received. By clicking that link the meeting invitee can join the meeting. Please note that meeting registration does not apply to a meeting when it's a recurring meeting with a `recurrence` field or no `password` or when the feature toggle `DecoupleJBHWithRegistration` is disabled the `Join Before Host` option is enabled for the meeting, See [Register for a Meeting in Cisco Webex Meetings](https://help.webex.com/en-us/nmgmeff/Register-for-a-Meeting-in-Cisco-Webex-Meetings) for details." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries meetings by a key in its own domain. The maximum size of `integrationTags` is 3 and each item of `integrationTags` can be a maximum of 64 characters long. This parameter is ignored for an ad-hoc meeting." }, "simultaneousInterpretation": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfCreateOrUpdateMeeting" }, "description": "Interpreters for meeting." } }, "description": "Simultaneous interpretation information for a meeting." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled." }, "breakoutSessions": { "type": "array", "items": { "$ref": "#/components/schemas/PreMeetingBreakoutSessionWithoutIdObject" }, "description": "Breakout sessions are smaller groups that are split off from the main meeting or webinar. They allow a subset of participants to collaborate and share ideas over audio and video. Use breakout sessions for workshops, classrooms, or for when you need a moment to talk privately with a few participants outside of the main session. Please note that maximum number of breakout sessions in a meeting or webinar is 100. In webinars, if hosts preassign attendees to breakout sessions, the role of `attendee` will be changed to `panelist`. Breakout session is not supported for a meeting with simultaneous interpretation." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForCreateMeetingObject" }, "description": "Tracking codes information. All available tracking codes and their options for the specified site can be retrieved by [List Meeting Tracking Codes](/docs/api/v1/meetings/list-meeting-tracking-codes) API. If an optional tracking code is missing from the `trackingCodes` array and there's a default option for this tracking code, the default option is assigned automatically. If the `inputMode` of a tracking code is `select`, its value must be one of the site-level options or the user-level value. Tracking code is not supported for a personal room meeting or an ad-hoc space meeting." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled. If it's `true`, `scheduledType` equals or defaults to `meeting`, and `audioConnectionOptions.audioConnectionType` equals `VoIP`, the audio for this meeting will have a watermark. In this case, a unique identifier is embedded into the audio that plays out of each Webex app and device. An administrator can use this watermark when analyzing an unauthorized recording to identify which Webex app or device was the source of the recording." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled. If it's `true`, the video for this meeting will have a watermark. In this case, Webex superimposes a watermark image pattern on top of the meeting video and shared content to deter participants from leaking meeting information. Each participant viewing the meeting sees a watermark image pattern with their email address. If the participant is not signed in, the watermark image pattern includes their display name and email address." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for the visual watermark. The value must be between 5 and 80, inclusive. A smaller value means less distraction for meeting participants, while a larger value shows a clearer watermark. It's supported when `enabledVisualWatermark` is `true`." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar. This option works when the value of `scheduledType` attribute is `webinar`. Please note that `requireAttendeeLogin` cannot be set if someone has already registered for the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only. This option works when the registration option is disabled and the value of `scheduledType` attribute is `webinar`. Please note that `restrictToInvitees` cannot be set to `true` if `requireAttendeeLogin` is `false`." }, "enabledLiveStream": { "type": "boolean", "description": "Whether or not live streaming is enabled. If it's enabled, the `liveStream` must be specified. The RTMP streaming specified by `liveStream.rtmpUrl` can be started and viewed during the meeting without any ad-hoc settings." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. It applies when `enabledLiveStream` is `true`." } } }, "LiveStreamObject": { "type": "object", "required": [ "destination", "rtmpUrl", "streamUrl" ], "properties": { "destination": { "type": "string", "example": "Facebook", "description": "A descriptive text to describe the destination of the live streaming." }, "rtmpUrl": { "type": "string", "example": "rtmps://example.com:1935/MediaLive/WebexStreaming", "description": "Live streaming RTMP URL." }, "streamUrl": { "type": "string", "example": "https://example.com/Webex-Streaming/index_a.m3u8", "description": "The URL to view the live streaming, i.e. the playback URL." }, "layoutWithoutSharedContent": { "type": "string", "enum": [ "grid", "stack", "focus" ], "description": "Live streaming layout when there's no shared content.\n * `grid` - The video layout that allows you to see multiple participants in a meeting in grids.\n * `stack` - The video layout that displays the active speaker on the stage and up to six participants in thumbnails across the top.\n * `focus` - The video layout that only displays the active speaker.\n" }, "layoutWithSharedContent": { "type": "string", "enum": [ "stack", "focusedContentWithActiveSpeaker", "focusedContent" ], "description": "Live streaming layout when there's shared content.\n * `stack` - The video layout that displays the shared content on the stage and up to six participants in thumbnails across the top.\n * `focusedContentWithActiveSpeaker` - The layout that displays the shared content in the main part of the screen and a large thumbnail of the active speaker in the upper right corner.\n * `focusedContent` - The layout that only displays the shared content in the main part of the screen and does not display the participants.\n" }, "allowChangeLayoutInMeeting": { "type": "boolean", "description": "Whether or not to allow change the live streaming layout in the meeitng." }, "followStageLayoutWhenSynced": { "type": "boolean", "example": true, "description": "Whether or not to follow the stage layout when it's being synchronized." }, "resolution": { "type": "string", "example": "1920x1080", "description": "Resolution of the live streaming." } } }, "TemplateObject": { "type": "object", "required": [ "id", "name", "locale", "siteUrl", "templateType", "isDefault", "isStandard" ], "properties": { "id": { "type": "string", "example": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "description": "Unique identifier for meeting template." }, "name": { "type": "string", "example": "Meeting template 1", "description": "Meeting template name." }, "locale": { "type": "string", "example": "en_US", "description": "Meeting template locale." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting template." }, "templateType": { "type": "string", "enum": [ "meeting", "webinar" ], "description": "Meeting template type.\n * `meeting` - Webex meeting.\n * `webinar` - Webex webinar.\n" }, "isDefault": { "type": "boolean", "description": "Whether or not the meeting template is a default template." }, "isStandard": { "type": "boolean", "description": "Whether or not the meeting template is a standard template." } } }, "DetailedTemplateObject": { "type": "object", "required": [ "id", "name", "locale", "siteUrl", "templateType", "isDefault", "isStandard", "meeting" ], "properties": { "id": { "type": "string", "example": "N2Q3ZWE1ZjQyYjkyMWVhY2UwNTM4NmNhMjRhZDczMGU6VS0yMDA5NzItTUMtZW5fVVM", "description": "Unique identifier for meeting template." }, "name": { "type": "string", "example": "Meeting template 1", "description": "Meeting template name." }, "locale": { "type": "string", "example": "en_US", "description": "Meeting template locale." }, "siteUrl": { "type": "string", "example": "site4-example.webex.com", "description": "Site URL for the meeting template." }, "templateType": { "type": "string", "enum": [ "meeting", "webinar" ], "description": "Meeting template type.\n * `meeting` - Webex meeting.\n * `webinar` - Webex webinar.\n" }, "isDefault": { "type": "boolean", "description": "Whether or not the meeting template is a default template." }, "isStandard": { "type": "boolean", "description": "Whether or not the meeting template is a standard template." }, "meeting": { "$ref": "#/components/schemas/CreateMeetingObject", "description": "Meeting object which is used to create a meeting by the meeting template. Please note that the meeting object should be used to create a meeting immediately after retrieval since the `start` and `end` may be invalid quickly after generation." } } }, "Control": { "type": "object", "properties": { "locked": { "type": "boolean", "description": "Whether the meeting is locked or not." }, "recordingStarted": { "type": "boolean", "example": true, "description": "The value can be true or false, it indicates the meeting recording started or not." }, "recordingPaused": { "type": "boolean", "example": true, "description": "The value can be true or false, it indicates the meeting recording paused or not." } } }, "Registration": { "type": "object", "properties": { "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration requests are accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration. This option must always be `true`." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration. This option must always be `true`." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration. This option must always be `true`." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is shown or required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is shown or required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is shown or required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is shown or required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is shown or required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is shown or required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is shown or required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is shown or required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is shown or required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is shown or required for meeting registration." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedQuestionForGetMeeting" }, "description": "Customized questions for meeting registration." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/StandardRegistrationApproveRule" }, "description": "The approval rules for standard questions." } } }, "RegistrantFormObject": { "type": "object", "required": [ "firstName", "lastName", "email" ], "properties": { "firstName": { "type": "string", "example": "Bob", "description": "The registrant's first name." }, "lastName": { "type": "string", "example": "Lee", "description": "The registrant's last name. (Required)" }, "email": { "type": "string", "example": "bob@example.com", "description": "The registrant's email." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true` send email to the registrant. Default: `true`." }, "jobTitle": { "type": "string", "example": "manager", "description": "The registrant's job title. Registration options define whether or not this is required." }, "companyName": { "type": "string", "example": "Cisco Systems, Inc.", "description": "The registrant's company. Registration options define whether or not this is required." }, "address1": { "type": "string", "example": "address1 string", "description": "The registrant's first address line. Registration options define whether or not this is required." }, "address2": { "type": "string", "example": "address2 string", "description": "The registrant's second address line. Registration options define whether or not this is required." }, "city": { "type": "string", "example": "New York", "description": "The registrant's city name. Registration options define whether or not this is required." }, "state": { "type": "string", "example": "New York", "description": "The registrant's state. Registration options define whether or not this is required." }, "zipCode": { "type": "number", "example": 123456, "description": "The registrant's postal code. Registration options define whether or not this is required." }, "countryRegion": { "type": "string", "example": "United States", "description": "The America is not a country or a specific region. Registration options define whether or not this is required." }, "workPhone": { "type": "string", "example": "+1 123456", "description": "The registrant's work phone number. Registration options define whether or not this is required." }, "fax": { "type": "string", "example": "123456", "description": "The registrant's FAX number. Registration options define whether or not this is required." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedRegistrant" }, "description": "The registrant's answers for customized questions. Registration options define whether or not this is required." } } }, "CustomizedRegistrant": { "type": "object", "required": [ "questionId", "answers" ], "properties": { "questionId": { "type": "number", "example": 330087, "description": "Unique identifier for the customized questions retrieved from the registration form." }, "answers": { "type": "array", "items": { "$ref": "#/components/schemas/AnswerForCustomizedQuestion" }, "description": "The answers for customized questions. If the question type is checkbox, more than one answer can be set." } } }, "AnswerForCustomizedQuestion": { "type": "object", "required": [ "answer" ], "properties": { "optionId": { "type": "number", "example": 1, "description": "Unique identifier for the option." }, "answer": { "type": "string", "example": "green", "description": "The content of the answer or the option for this question." } } }, "Registrant": { "type": "object", "properties": { "id": { "type": "string", "example": "fbd83190-97b2-4bb0-b56b-8fde463d137b", "description": "New registrant's ID." }, "status": { "type": "string", "enum": [ "approved", "pending", "rejected" ], "description": "New registrant's status.\n * `approved` - Registrant has been approved.\n * `pending` - Registrant is in a pending list waiting for host or cohost approval.\n * `rejected` - Registrant has been rejected by the host or cohost.\n" }, "firstName": { "type": "string", "example": "bob", "description": "Registrant's first name." }, "lastName": { "type": "string", "example": "Lee", "description": "Registrant's last name." }, "email": { "type": "string", "example": "bob@example.com", "description": "Registrant's email." }, "jobTitle": { "type": "string", "example": "manager", "description": "Registrant's job title." }, "companyName": { "type": "string", "example": "cisco", "description": "Registrant's company." }, "address1": { "type": "string", "example": "address1 string", "description": "Registrant's first address line." }, "address2": { "type": "string", "example": "address2 string", "description": "Registrant's second address line." }, "city": { "type": "string", "example": "New York", "description": "Registrant's city name." }, "state": { "type": "string", "example": "New York", "description": "Registrant's state." }, "zipCode": { "type": "number", "example": 123456, "description": "Registrant's postal code." }, "countryRegion": { "type": "string", "example": "United States", "description": "Registrant's country or region." }, "workPhone": { "type": "string", "example": "+1 123456", "description": "Registrant's work phone number." }, "fax": { "type": "string", "example": "123456", "description": "Registrant's FAX number." }, "registrationTime": { "type": "string", "example": "2021-09-07T09:29:13+08:00", "description": "Registrant's registration time." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedRegistrant" }, "description": "Registrant's answers for customized questions, Registration options define whether or not this is required." }, "sourceId": { "type": "string", "example": "cisco", "description": "Registrant's source id.The `sourceId` is from [Create Invitation Sources](/docs/api/v1/meetings/create-invitation-sources) API." }, "registrationId": { "type": "string", "example": "1111", "description": "Registrant's registration ID. Registrants have a special number to identify a registrations if it is webinar-enabled and enabled registration ID." } } }, "RegistrantCreateResponse": { "type": "object", "properties": { "id": { "type": "string", "example": "123456", "description": "New registrant's ID." }, "status": { "type": "string", "enum": [ "approved", "pending", "rejected" ], "description": "New registrant's status.\n * `approved` - Registrant has been approved.\n * `pending` - Registrant is in a pending list waiting for host or cohost approval.\n * `rejected` - Registrant has been rejected by the host or cohost.\n" }, "firstName": { "type": "string", "example": "bob", "description": "Registrant's first name." }, "lastName": { "type": "string", "example": "Lee", "description": "Registrant's last name." }, "email": { "type": "string", "example": "bob@example.com", "description": "Registrant's email." }, "jobTitle": { "type": "string", "example": "manager", "description": "Registrant's job title." }, "companyName": { "type": "string", "example": "cisco", "description": "Registrant's company." }, "address1": { "type": "string", "example": "address1 string", "description": "Registrant's first address line." }, "address2": { "type": "string", "example": "address2 string", "description": "Registrant's second address line." }, "city": { "type": "string", "example": "New York", "description": "Registrant's city name." }, "state": { "type": "string", "example": "New York", "description": "Registrant's state." }, "zipCode": { "type": "number", "example": 123456, "description": "Registrant's postal code." }, "countryRegion": { "type": "string", "example": "United States", "description": "Registrant's country or region." }, "workPhone": { "type": "string", "example": "+1 123456", "description": "Registrant's work phone number." }, "fax": { "type": "string", "example": "123456", "description": "Registrant's FAX number." }, "registrationTime": { "type": "string", "example": "2021-09-07T09:29:13+08:00", "description": "Registrant's registration time." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedRegistrant" }, "description": "Registrant's answers for customized questions, Registration options define whether or not this is required." } } }, "Registrants": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "123456", "description": "Registrant ID." } } }, "queryRegistrants": { "type": "object", "required": [ "emails" ], "properties": { "status": { "type": "string", "enum": [ "approved", "pending", "rejected" ], "description": "Registrant's status.\n * `approved` - Registrant has been approved.\n * `pending` - Registrant is in a pending list waiting for host or cohost approval.\n * `rejected` - Registrant has been rejected by the host or cohost.\n" }, "orderType": { "type": "string", "enum": [ "DESC", "ASC" ], "description": "Sort order for the registrants." }, "orderBy": { "type": "string", "enum": [ "firstName", "lastName", "status", "email" ], "description": "Registrant ordering field. Ordered by `registrationTime` by default.\n * `firstName` - Registrant's first name.\n * `lastName` - Registrant's last name.\n * `status` - Registrant's status.\n * `email` - registrant's email.\n" }, "emails": { "type": "array", "items": { "type": "string", "example": "bob@example.com" }, "description": "List of registrant email addresses." } } }, "MeetingSessionTypeObject": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "628", "description": "Unique identifier for the meeting session type." }, "name": { "type": "string", "example": "Webex Meetings EC 2.0 meeting", "description": "Name of the meeting session type." }, "type": { "type": "string", "enum": [ "meeting", "webinar", "privateMeeting" ], "description": "Meeting session type.\n * `meeting` - Meeting session type for a meeting.\n * `webinar` - Meeting session type for a webinar.\n * `privateMeeting` - Meeting session type for a private meeting.\n" }, "attendeesCapacity": { "type": "number", "example": 1000, "description": "The maximum number of attendees for the meeting session type." } } }, "UpdateMeetingSimultaneousInterpretationObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfCreateOrUpdateMeeting" }, "description": "Interpreters for meeting." } } }, "GetMeetingSimultaneousInterpretationObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether or not simultaneous interpretation is enabled." }, "interpreters": { "type": "array", "items": { "$ref": "#/components/schemas/InterpreterObjectForSimultaneousInterpretationOfGetOrListMeeting" }, "description": "Interpreters for meeting." } } }, "UpdateInterpreterObject": { "type": "object", "required": [ "languageCode1", "languageCode2" ], "properties": { "languageCode1": { "type": "string", "example": "en", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "languageCode2": { "type": "string", "example": "de", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "email": { "type": "string", "example": "marcus.tuchel@example.com", "description": "Email address of meeting interpreter. If not specified, it'll be an empty interpreter for the bi-directional language channel. Please note that multiple interpreters with different emails can be assigned to the same bi-directional language channel, but the same email cannot be assigned to more than one interpreter." }, "displayName": { "type": "string", "example": "Tuchel", "description": "Display name of meeting interpreter. If the interpreter is already an invitee of the meeting and it has a different display name, that invitee's display name will be overwritten by this attribute." }, "hostEmail": { "type": "string", "example": "brenda.song@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin on-behalf-of scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true`, send email to the interpreter." } } }, "CreateInterpreterObject": { "type": "object", "required": [ "languageCode1", "languageCode2" ], "properties": { "languageCode1": { "type": "string", "example": "en", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "languageCode2": { "type": "string", "example": "de", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "email": { "type": "string", "example": "marcus.hoffmann@example.com", "description": "Email address of meeting interpreter. If not specified, an empty interpreter will be created for this bi-directional language channel, and a specific email can be assigned to this empty interpreter by `Update a Meeting Interpreter` API later. Please note that multiple interpreters with different emails can be assigned to the same bi-directional language channel, but the same email cannot be assigned to more than one interpreter." }, "displayName": { "type": "string", "example": "Hoffmann", "description": "Display name of meeting interpreter. If the interpreter is already an invitee of the meeting and it has a different display name, that invitee's display name will be overwritten by this attribute." }, "hostEmail": { "type": "string", "example": "brenda.song@example.com", "description": "Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin on-behalf-of scopes. When used, the admin may specify the email of a user in a site they manage to be the meeting host." }, "sendEmail": { "type": "boolean", "example": true, "description": "If `true`, send email to the interpreter." } } }, "GetInterpreterObject": { "type": "object", "required": [ "id", "languageCode1", "languageCode2" ], "properties": { "id": { "type": "string", "example": "OGQ0OGRiM2U3ZTAxNDZiMGFjYzJjMzYxNDNmNGZhN2RfZTA5MTJiZDBjNWVlNDA4YjgxMTZlMjU4Zjg2NWIzZmM", "description": "Unique identifier for meeting interpreter." }, "languageCode1": { "type": "string", "example": "en", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "languageCode2": { "type": "string", "example": "de", "description": "The pair of `languageCode1` and `languageCode2` form a bi-directional simultaneous interpretation language channel. The language codes conform with [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)." }, "email": { "type": "string", "example": "marcus.hoffmann@example.com", "description": "Email address of meeting interpreter." }, "displayName": { "type": "string", "example": "Hoffmann", "description": "Display name of meeting interpreter." } } }, "UpdateMeetingBreakoutSessionsObject": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return details for a meeting that is hosted by that user." }, "sendEmail": { "type": "boolean", "example": true, "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/PreMeetingBreakoutSessionWithoutIdObject" }, "description": "Breakout sessions are smaller groups that are split off from the main meeting or webinar. They allow a subset of participants to collaborate and share ideas over audio and video. Use breakout sessions for workshops, classrooms, or for when you need a moment to talk privately with a few participants outside of the main session. Please note that maximum number of breakout sessions in a meeting or webinar is 100. In webinars, if hosts preassign attendees to breakout sessions, the role of `attendee` will be changed to `panelist`. Breakout session is not supported for a meeting with simultaneous interpretation." } } }, "PreMeetingBreakoutSessionWithoutIdObject": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "Breakout Session Name", "description": "Name for breakout session." }, "invitees": { "type": "array", "items": { "type": "string" }, "description": "Invitees for breakout session. Please note that one invitee cannot be assigned to more than one breakout session." } } }, "PreMeetingBreakoutSessionsObject": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/PreMeetingBreakoutSessionObject" }, "description": "Breakout sessions information for meeting." } } }, "PreMeetingBreakoutSessionObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "18d2e565770c4eee918784ee333510ec", "description": "Unique identifier for breakout session." }, "name": { "type": "string", "example": "Breakout Session Name", "description": "Name for breakout session." }, "invitees": { "type": "array", "items": { "type": "string" }, "description": "Invitees for breakout session. Only applies to breakout sessions which are created when meeting is scheduled." } } }, "PrePostMeetingBreakoutSessionsObject": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/PrePostMeetingBreakoutSessionObject" }, "description": "Breakout sessions information for meeting." } } }, "PrePostMeetingBreakoutSessionObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "18d2e565770c4eee918784ee333510ec", "description": "Unique identifier for breakout session." }, "name": { "type": "string", "example": "Breakout Session Name", "description": "Name for breakout session." }, "invitees": { "type": "array", "items": { "type": "string" }, "description": "Invitees for breakout session. Only applies to breakout sessions which are created when meeting is scheduled." }, "startTime": { "type": "string", "example": "2022-10-25T09:10:00Z", "description": "The time the breakout session was started. Only applies to breakout sessions of ended meeting instances." }, "endTime": { "type": "string", "example": "2022-10-25T09:20:00Z", "description": "The time the breakout session was ended. Only applies to breakout sessions of ended meeting instances." } } }, "LinksObjectForBreakoutSessions": { "type": "object", "required": [ "rel", "href", "method" ], "properties": { "rel": { "type": "string", "example": "breakoutSessions", "description": "Link relation describing how the target resource is related to the current context (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "href": { "type": "string", "example": "/api/v1/meetings/2c87cf8ece4e414a9fe5516e4a0aac76/breakoutSessions", "description": "Target resource URI (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." }, "method": { "type": "string", "example": "GET", "description": "Target resource method (conforming with [RFC5998](https://tools.ietf.org/html/rfc5988))." } } }, "JoinMeetingObject": { "type": "object", "properties": { "meetingId": { "type": "string", "example": "98d8c2212c9d62b162b9565932735e59", "description": "Unique identifier for the meeting. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is also supported for this API." }, "meetingNumber": { "type": "string", "example": "123456789", "description": "Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended." }, "webLink": { "type": "string", "example": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e", "description": "Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join." }, "joinDirectly": { "type": "boolean", "description": "Whether or not to redirect to `joinLink`. It is an optional field and default value is true." }, "email": { "type": "string", "example": "brenda.song@example.com", "description": "Email address of meeting participant. If `email` is specified, the link is generated for the user of `email`; otherwise, the API returns the link for the user calling the API. `email` is required for a [guest issuer](https://developer.webex.com/docs/guest-issuer)." }, "displayName": { "type": "string", "example": "Brenda Song", "description": "Display name of meeting participant. If `displayName` is specified, `email` must be specified as well. If `email` is specified and `displayName` is not, display name is the same as `email`. If neither `displayName` nor `email` is specified, the API returns the link for the user calling the API. The maximum length of `displayName` is 128 characters. `displayName` is required for a [guest issuer](https://developer.webex.com/docs/guest-issuer)." }, "password": { "type": "string", "example": "BgJep@43", "description": "Required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, cohost, or invitee." }, "expirationMinutes": { "type": "number", "example": 5, "description": "Expiration duration of `joinLink` in minutes. Must be between 1 and 60." }, "registrationId": { "type": "string", "example": "1111", "description": "Required when the meeting is webinar-enabled and enabled registration ID." }, "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This attribute should be set if the user or application calling the API has the admin on-behalf-of scopes. This parameter is required for a [Service App](/docs/service-apps). It only applies to meetings, not webinars." }, "createJoinLinkAsWebLink": { "type": "boolean", "description": "When `createJoinLinkAsWebLink` is true, the returned `joinLink` is the webLink of the meeting, otherwise, the normal `joinLink` is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot join the meeting by the link directly and must go through the login flow." }, "createStartLinkAsWebLink": { "type": "boolean", "description": "When `createStartLinkAsWebLink` is true, the returned `startLink` is the webLink of the meeting, otherwise, the normal `startLink` is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot start the meeting using the link and must go through the login flow." } } }, "JoinMeetingLinkObject": { "type": "object", "properties": { "startLink": { "type": "string", "example": "https://example.dmz.webex.com/wbxmjs/joinservice/sites/example/meeting/download/b9dd6cac53564877b65589cc17d4233e?siteurl=example&integrationJoinToken=QUhTSwAAAIVboyqJZyO/aObaDYnIe0wkyteQTUFUGkboab2OL/M30apxnba6ZI4G37P0uvRMihtrYnt9wk+Wgj4GMTjeKJ0YuiEsi1PYJ9AfQcft60Mt/N6q6jEC+aldJ5PfmR+ic9dsgRn6Pgz9AmyjMSCr/3Zx7VOJXKPzWHZIc4q0EqOqDyUnWu5aEtJUldB/kZYKtUrbPUj4KUQKbc60e0tGt/St3uuBBVCuf7P45GmmyVk+b3xqlol2aUokcKlYtIig8It/NDIY5sCvCg+GHxtoEWHRGVj3+0lhNXiQfNe1vTRH7w==", "description": "The link is used to start a meeting as the meeting host. Only the meeting host or cohost can generate the `startLink`." }, "joinLink": { "type": "string", "example": "https://example.webex.com/wbxmjs/joinservice/sites/example/meeting/download/cdedf9ae847b4f9993f87e62a8889dad?siteurl=example&integrationJoinToken=QUhTSwAAAIVAFMmwcApsg+NPn9DlUdF1yv2eVVq2HaXr2vu0/4Ttl9P38kCzoA3A5CKTcDnLr79X4FSvZnZUmUPlv/4F/4/iverF7eOgZaYM5rgUayI3L9ye6lNyYGNb7ZYEAL6oo4xFUDRo8oE3+H/iBeu+nzQnkKcmnTQQPjzZVJQcZVM9tQ==&principal=QUhTSwAAAIXf3TeZvJmVBoXnIhYAIpNdFJ5pfxSftfCOhmwAlckVkd1ZuyfEMosdWeWGHDsThiN+5I55up8e5By/SIu5dUkL9QPu6qVPVhH24xIxkBHfhasau2XB0VZgyIG64tCkEcwf4s0/gJO3N/2RhWkmB669", "description": "The link is used to join the meeting." }, "expiration": { "type": "string", "example": "2022-05-30T09:44:08Z", "description": "Expiration time of `joinLink`. When both `createJoinLinkAsWebLink` and `createStartLinkAsWebLink` are true, this attribute is not returned in the response." } } }, "SurveyObject": { "type": "object", "required": [ "id", "surveyName", "meetingId", "questions" ], "properties": { "id": { "type": "string", "example": "18d2e565770c4eee918784ee333510ec", "description": "Unique identifier for the survey." }, "surveyName": { "type": "string", "example": "Survey name", "description": "Name for the survey." }, "meetingId": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999", "description": "Unique identifier for the meeting." }, "description": { "type": "string", "example": "Survey name", "description": "Description for the survey." }, "allowAnonymousSubmit": { "type": "boolean", "example": true, "description": "Whether the survey allows attendees to submit anonymously." }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionObject" }, "description": "Questions for the survey." } } }, "QuestionObject": { "type": "object", "required": [ "id", "question", "type" ], "properties": { "id": { "type": "number", "example": 3388057, "description": "Unique identifier for the question." }, "question": { "type": "string", "example": "Do you like cisco?", "description": "Details for the question." }, "type": { "type": "string", "enum": [ "text", "rating", "checkbox", "singleDropdown", "singleRadio" ], "description": "Type for the question.\n * `text` - Text input.\n * `rating` - Rating.\n * `checkbox` - Check box which requires `options`.\n * `singleDropdown` - Drop down list box which requires `options`.\n * `singleRadio` - Single radio button which requires `options`.\n" }, "fromScore": { "type": "number", "example": 1, "description": "The lowest score of the rating question. This attribute will be ingnored, if the value of `type` attribute is not `rating`." }, "fromLabel": { "type": "string", "example": "disagree", "description": "The lowest score label of the rating question. This attribute will be ingnored, if the value of `type` attribute is not `rating`." }, "toScore": { "type": "number", "example": 5, "description": "The highest score of the rating question. This attribute will be ingnored, if the value of `type` attribute is not `rating`." }, "toLabel": { "type": "string", "example": "agree", "description": "The highest score label of the rating question. This attribute will be ingnored, if the value of `type` attribute is not `rating`." }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionOptionObject" }, "description": "Options for the question. This attribute will be ingnored, if the value of `type` attribute is `text` or `rating`." } } }, "QuestionWithAnswersObject": { "type": "object", "required": [ "id", "question", "type" ], "properties": { "id": { "type": "number", "example": 3388057, "description": "Unique identifier for the question." }, "question": { "type": "string", "example": "Do you like cisco?", "description": "Details for the question." }, "type": { "type": "string", "enum": [ "text", "rating", "checkbox", "singleDropdown", "singleRadio" ], "description": "Type for the question.\n * `text` - Text input.\n * `rating` - Rating.\n * `checkbox` - Check box which requires `options`.\n * `singleDropdown` - Drop down list box which requires `options`.\n * `singleRadio` - Single radio button which requires `options`.\n" }, "answers": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionAnswerObject" }, "description": "The user's answers for the question." } } }, "QuestionOptionObject": { "type": "object", "required": [ "id", "value" ], "properties": { "id": { "type": "number", "example": 1, "description": "Unique identifier for the question option." }, "value": { "type": "string", "example": "Yes", "description": "Value for the question option." } } }, "QuestionAnswerObject": { "type": "object", "required": [ "optionId", "answer" ], "properties": { "optionId": { "type": "number", "example": 1, "description": "Unique identifier for the question option. This attribute will be ingnored, if the value of `type` attribute is `text` or `rating`." }, "answer": { "type": "string", "example": "Yes", "description": "The user's answers for the question." } } }, "SurveyResultObject": { "type": "object", "required": [ "id", "surveyName", "meetingId", "email", "displayName", "createTime", "questions" ], "properties": { "id": { "type": "string", "example": "18d2e565770c4eee918784ee333510ec", "description": "Unique identifier for the survey result." }, "surveyName": { "type": "string", "example": "Survey name", "description": "Name for the survey." }, "meetingId": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c4999", "description": "Unique identifier for the meeting." }, "email": { "type": "string", "example": "bob@example.com", "description": "Email address of the user who submits the survey." }, "displayName": { "type": "string", "example": "Bob", "description": "Name of the user who submits the survey." }, "createTime": { "type": "string", "example": "2022-07-06T14:13:06+08:00", "description": "The time when the user submits the survey." }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionWithAnswersObject" }, "description": "User's answers for the questions" } } }, "CustomizedQuestionForCreateMeeting": { "type": "object", "required": [ "question", "type" ], "properties": { "question": { "type": "string", "example": "How are you", "description": "Title of the customized question." }, "required": { "type": "boolean", "example": true, "description": "Whether or not the customized question is required to be answered by participants." }, "type": { "type": "string", "enum": [ "singleLineTextBox", "multiLineTextBox", "checkbox", "dropdownList", "radioButtons" ], "description": "Type of the question being asked.\n * `singleLineTextBox` - Single line text box.\n * `multiLineTextBox` - Multiple line text box.\n * `checkbox` - Check box which requires `options`.\n * `dropdownList` - Drop down list box which requires `options`.\n * `radioButtons` - Single radio button which requires `options`.\n" }, "maxLength": { "type": "number", "description": "The maximum length of a string that can be entered by the user, ranging from `0` to `999`. Only required by `singleLineTextBox` and `multiLineTextBox`." }, "options": { "type": "array", "items": { "type": "object", "required": [ "value" ], "properties": { "value": { "type": "string", "example": "green", "description": "The content of the option." } } }, "description": "The content of `options`. Required if the question type is one of `checkbox`, `dropdownList`, or `radioButtons`." }, "rules": { "type": "array", "items": { "type": "object", "required": [ "condition", "value", "result" ], "properties": { "condition": { "type": "string", "enum": [ "contains", "notContains", "beginsWith", "endsWith", "equals", "notEquals" ], "description": "Judgment expression for approval rules.\n * `contains` - The content of the answer contains the value.\n * `notContains` - The content of the answer does not contain the value\n * `beginsWith` - The content of the answer begins with the value.\n * `endsWith` - The content of the answer ends with the value.\n * `equals` - The content of the answer is the same as the value.\n * `notEquals` - The content of the answer is not the same as the value.\n" }, "value": { "type": "string", "example": "tom", "description": "The keyword for the approval rule. If the rule matches the keyword, the corresponding action will be executed." }, "result": { "type": "string", "enum": [ "approve", "reject" ], "description": "The automatic approval result for the approval rule.\n * `approve` - If the user's registration value meets the criteria, the registration form will be automatically approved.\n * `reject` - If the user's registration value meets the criteria, the registration form will be automatically rejected.\n" }, "matchCase": { "type": "boolean", "example": true, "description": "Whether to check the case of values." } } }, "description": "The automatic approval rules for customized questions." } } }, "CustomizedQuestionForGetMeeting": { "type": "object", "required": [ "id", "question", "type" ], "properties": { "id": { "type": "number", "example": 330521, "description": "Unique identifier for the question." }, "question": { "type": "string", "example": "How are you", "description": "Title of the customized question." }, "required": { "type": "boolean", "example": true, "description": "Whether or not the customized question is required to be answered by participants." }, "type": { "type": "string", "enum": [ "singleLineTextBox", "multiLineTextBox", "checkbox", "dropdownList", "radioButtons" ], "description": "Type of the question being asked.\n * `singleLineTextBox` - Single line text box.\n * `multiLineTextBox` - Multiple line text box.\n * `checkbox` - Check box which requires `options`.\n * `dropdownList` - Drop down list box which requires `options`.\n * `radioButtons` - Single radio button which requires `options`.\n" }, "maxLength": { "type": "number", "description": "The maximum length of a string that can be entered by the user, ranging from `0` to `999`. Only required by `singleLineTextBox` and `multiLineTextBox`." }, "options": { "type": "array", "items": { "type": "object", "required": [ "id", "value" ], "properties": { "id": { "type": "number", "example": 1, "description": "The unique id of options." }, "value": { "type": "string", "example": "green", "description": "The content of the option." } } }, "description": "TThe content of `options`. Required if the question type is one of `checkbox`, `dropdownList`, or `radioButtons`." }, "rules": { "type": "array", "items": { "type": "object", "required": [ "condition", "value", "result", "order" ], "properties": { "condition": { "type": "string", "enum": [ "contains", "notContains", "beginsWith", "endsWith", "equals", "notEquals" ], "description": "Judgment expression for approval rules.\n * `contains` - The content of the answer contains the value.\n * `notContains` - The content of the answer does not contain the value\n * `beginsWith` - The content of the answer begins with the value.\n * `endsWith` - The content of the answer ends with the value.\n * `equals` - The content of the answer is the same as the value.\n * `notEquals` - The content of the answer is not the same as the value.\n" }, "value": { "type": "string", "example": "tom", "description": "The keyword for the approval rule. If the rule matches the keyword, the corresponding action will be executed." }, "result": { "type": "string", "enum": [ "approve", "reject" ], "description": "The automatic approval result for the approval rule.\n * `approve` - If the user's registration value meets the criteria, the registration form will be automatically approved.\n * `reject` - If the user's registration value meets the criteria, the registration form will be automatically rejected.\n" }, "matchCase": { "type": "boolean", "example": true, "description": "Whether to check the case of values." }, "order": { "type": "number", "example": 1, "description": "The priority number of the approval rule. Approval rules for standard questions and custom questions need to be ordered together." } } }, "description": "The automatic approval rules for customized questions." } } }, "StandardRegistrationApproveRule": { "type": "object", "required": [ "question", "condition", "value", "result", "order" ], "properties": { "question": { "type": "string", "enum": [ "lastName", "email", "jobTitle", "companyName", "address1", "address2", "city", "state", "zipCode", "countryRegion", "workPhone", "fax" ], "description": "Name for standard question.\n * `lastName` - If the value is `lastName`, this approval rule applies to the standard question of \"Last Name\".\n * `email` - If the value is `email`, this approval rule applies to the standard question of \"Email\".\n * `jobTitle` - If the value is `jobTitle`, this approval rule applies to the standard question of \"Job Title\".\n * `companyName` - If the value is `companyName`, this approval rule applies to the standard question of \"Company Name\".\n * `address1` - If the value is `address1`, this approval rule applies to the standard question of \"Address 1\".\n * `address2` - If the value is `address2`, this approval rule applies to the standard question of \"Address 2\".\n * `city` - If the value is `city`, this approval rule applies to the standard question of \"City\".\n * `state` - If the value is `state`, this approval rule applies to the standard question of \"State\".\n * `zipCode` - If the value is `zipCode`, this approval rule applies to the standard question of \"Zip/Post Code\".\n * `countryRegion` - If the value is `countryRegion`, this approval rule applies to the standard question of \"Country Region\".\n * `workPhone` - If the value is `workPhone`, this approval rule applies to the standard question of \"Work Phone\".\n * `fax` - If the value is `fax`, this approval rule applies to the standard question of \"Fax\".\n" }, "condition": { "type": "string", "enum": [ "contains", "notContains", "beginsWith", "endsWith", "equals", "notEquals" ], "description": "Judgment expression for approval rules.\n * `contains` - The content of the answer contains the value.\n * `notContains` - The content of the answer does not contain the value\n * `beginsWith` - The content of the answer begins with the value.\n * `endsWith` - The content of the answer ends with the value.\n * `equals` - The content of the answer is the same as the value.\n * `notEquals` - The content of the answer is not the same as the value.\n" }, "value": { "type": "string", "example": "tom", "description": "The keyword for the approval rule. If the rule matches the keyword, the corresponding action will be executed." }, "result": { "type": "string", "enum": [ "approve", "reject" ], "description": "The automatic approval result for the approval rule.\n * `approve` - If the user's registration value meets the criteria, the registration form will be automatically approved.\n * `reject` - If the user's registration value meets the criteria, the registration form will be automatically rejected.\n" }, "matchCase": { "type": "boolean", "example": true, "description": "Whether to check the case of values." }, "order": { "type": "number", "example": 1, "description": "The priority number of the approval rule. Approval rules for standard questions and custom questions need to be ordered together." } } }, "RegistrationForUpdate": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "'john.andersen@example.com'", "description": "- Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes. If set, the admin may specify the email of a user in a site they manage and the API will return an update for a meeting that is hosted by that user." }, "autoAcceptRequest": { "type": "boolean", "description": "Whether or not meeting registration requests are accepted automatically." }, "requireFirstName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's first name is required for meeting registration. This option must always be `true`." }, "requireLastName": { "type": "boolean", "example": true, "description": "Whether or not a registrant's last name is required for meeting registration. This option must always be `true`." }, "requireEmail": { "type": "boolean", "example": true, "description": "Whether or not a registrant's email is required for meeting registration. This option must always be `true`." }, "requireJobTitle": { "type": "boolean", "description": "Whether or not a registrant's job title is shown or required for meeting registration." }, "requireCompanyName": { "type": "boolean", "description": "Whether or not a registrant's company name is shown or required for meeting registration." }, "requireAddress1": { "type": "boolean", "description": "Whether or not a registrant's first address field is shown or required for meeting registration." }, "requireAddress2": { "type": "boolean", "description": "Whether or not a registrant's second address field is shown or required for meeting registration." }, "requireCity": { "type": "boolean", "description": "Whether or not a registrant's city is shown or required for meeting registration." }, "requireState": { "type": "boolean", "description": "Whether or not a registrant's state is shown or required for meeting registration." }, "requireZipCode": { "type": "boolean", "description": "Whether or not a registrant's postal code is shown or required for meeting registration." }, "requireCountryRegion": { "type": "boolean", "description": "Whether or not a registrant's country or region is shown or required for meeting registration." }, "requireWorkPhone": { "type": "boolean", "description": "Whether or not a registrant's work phone number is shown or required for meeting registration." }, "requireFax": { "type": "boolean", "description": "Whether or not a registrant's fax number is shown or required for meeting registration." }, "maxRegisterNum": { "type": "number", "example": 1000, "description": "Maximum number of meeting registrations. This only applies to meetings. The maximum number of participants for meetings and webinars, with the limit based on the user capacity and controlled by a toggle at the site level. The default maximum number of participants for webinars is 10000, but the actual maximum number of participants is limited by the user capacity." }, "customizedQuestions": { "type": "array", "items": { "$ref": "#/components/schemas/CustomizedQuestionForCreateMeeting" }, "description": "Customized questions for meeting registration." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/StandardRegistrationApproveRule" }, "description": "The approval rule for standard questions." } } }, "SurveyLinkRequestObject": { "type": "object", "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin on-behalf-of scopes. An admin can specify the email of the meeting host who is in a site he manages and the API returns post survey links on behalf of the meeting host." }, "meetingStartTimeFrom": { "type": "string", "example": "2019-03-18T09:30:00Z", "description": "Start date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format for the meeting objects being requested and conforms with the `timezone` in the request header if specified. `meetingStartTimeFrom` cannot be after `meetingStartTimeTo`. Only applies when `meetingId` is not an instance ID. The API generates survey links for the last instance of `meetingId` in the time range specified by `meetingStartTimeFrom` and `meetingStartTimeTo`. If not specified, `meetingStartTimeFrom` equals `meetingStartTimeTo` minus `1` month; if `meetingStartTimeTo` is also not specified, the default value for `meetingStartTimeFrom` is `1` month before the current date and time." }, "meetingStartTimeTo": { "type": "string", "example": "2019-03-25T09:30:00Z", "description": "End date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format for the meeting objects being requested and conforms with the `timezone` in the request header if specified. `meetingStartTimeTo` cannot be prior to `meetingStartTimeFrom`. Only applies when `meetingId` is not an instance ID. The API generates survey links for the last instance of `meetingId` in the time range specified by `meetingStartTimeFrom` and `meetingStartTimeTo`. If not specified, `meetingStartTimeTo` equals `meetingStartTimeFrom` plus `1` month; if `meetingStartTimeFrom` is also not specified, the default value for `meetingStartTimeTo` is the current date and time." }, "emails": { "type": "array", "items": { "type": "string" }, "description": "Participants' email list. The maximum size of `emails` is 100." } } }, "SurveyLinkObject": { "type": "object", "properties": { "email": { "type": "string", "example": "kingu1@example.com", "description": "Participant email." }, "surveyLink": { "type": "string", "example": "https://example.webex.com/webappng/sites/example/meeting/surveyPage/fa1fc86f70d74c08bc7dc5a3b499ab98?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaXRlSWQiOjIwNjI4NDIsImJpcnRoVGltZSI6MTY4ODQzODYwODY4NCwiZW1haWwiOiJRVWhUU3dBQUFJVllnWEhTSVJLa2hzN2pIR0lCNzJxVDM3SDc5a1NLWjcwUFNBVG9aekJYeHV3KzhJenZnd3l6ZEJ5ZGFDeGc1TnZLcW9mRHV4RjlqdWpGeWhld3EyRmFsWVpNTU9Sa3drNVRNQWZZR2lTUVFRPT0iLCJtZWV0aW5nSW5zdGFuY2VJZCI6Ijc0Y2YyZTJhMjI0ZDQ3OTViM2QwMjliMDZjMGI4NWFjX0lfMjY0Mzg5MTg4NzU2OTY1MjUxIn0.SDJTSwAAAIVIzXgb0wNfEdKwDeRiGzxLWfhoSG5blNcDoCslAiserg", "description": "Meeting survey Link for the participant." } } }, "InvitationSourceCreateObject": { "type": "object", "required": [ "sourceId", "sourceEmail" ], "properties": { "sourceId": { "type": "string", "example": "cisco", "description": "Source ID for the invitation." }, "sourceEmail": { "type": "string", "example": "john001@example.com", "description": "Email for invitation source." } } }, "InvitationSourceObject": { "type": "object", "required": [ "id", "sourceId", "sourceEmail" ], "properties": { "id": { "type": "string", "example": "1", "description": "Unique identifier for invitation source." }, "sourceId": { "type": "string", "example": "cisco", "description": "Source ID for invitation." }, "sourceEmail": { "type": "string", "example": "john001@example.com", "description": "Email for invitation source." }, "joinLink": { "type": "string", "example": "https://example.webex.com/example/j.php?MTID=m6d75f1c875b3e3c5d18c7598036bdd8b", "description": "The link bound to `sourceId` can directly join the meeting. If the meeting requires registration,`joinLink` is not returned." }, "registerLink": { "type": "string", "example": "https://example.webex.com/example/j.php?RGID=rb05b31307b5b820e16594da9d1cfc588", "description": "The link bound to `sourceId` can directly register the meeting. If the meeting requires registration, `registerLink` is returned." } } }, "TrackingCodeItemForCreateMeetingObject": { "type": "object", "required": [ "name", "value" ], "properties": { "name": { "type": "string", "example": "Department", "description": "Name of the tracking code. The name cannot be empty and the maximum size is 120 characters." }, "value": { "type": "string", "description": "Value for the tracking code. `value` cannot be empty and the maximum size is 120 characters." } } }, "TrackingCodeItemForGetMeetingObject": { "type": "object", "required": [ "name", "value" ], "properties": { "name": { "type": "string", "example": "Department", "description": "Name for the tracking code." }, "value": { "type": "string", "description": "Value for the tracking code." } } }, "MeetingTrackingCodesObject": { "type": "object", "required": [ "id", "name", "siteUrl", "options", "inputMode", "service", "type" ], "properties": { "id": { "type": "string", "example": "1", "description": "Unique identifier for the tracking code." }, "name": { "type": "string", "example": "Department", "description": "Name for the tracking code." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the tracking code." }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/OptionsForTrackingCodeObject" }, "description": "Tracking code option list. The options here differ from those in the [site-level tracking codes](/docs/api/v1/tracking-codes/get-a-tracking-code) and the [user-level tracking codes](/docs/api/v1/tracking-codes/get-user-tracking-codes). It is the result of a selective combination of the two. If there's user-level value for a tracking code, the user-level value becomes the default option for the tracking code, and the site-level default value becomes non-default." }, "inputMode": { "type": "string", "enum": [ "text", "select", "editableSelect", "hostProfileSelect" ], "description": "The input mode in which the tracking code value can be assigned.\n * `text` - Text input.\n * `select` - Drop down list which requires `options`.\n * `editableSelect` - Both text input and select from list.\n * `hostProfileSelect` - An input method which is only available for the host profile and sign-up pages.\n" }, "service": { "type": "string", "enum": [ "All", "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "Service for schedule or sign up pages\n * `All` - Tracking codes apply to all services.\n * `MeetingCenter` - Users can set tracking codes when scheduling a meeting.\n * `EventCenter` - Users can set tracking codes when scheduling an event.\n * `TrainingCenter` - Users can set tracking codes when scheduling a training session.\n * `SupportCenter` - Users can set tracking codes when scheduling a support meeting.\n" }, "type": { "type": "string", "enum": [ "optional", "required", "adminSet", "notUsed", "notApplicable" ], "description": "Type for meeting scheduler or meeting start pages.\n * `optional` - Available to be chosen but not compulsory.\n * `required` - Officially compulsory.\n * `adminSet` - The value is set by admin.\n * `notUsed` - The value cannot be used.\n * `notApplicable` - This value only applies to the service of `All`. When the type of `All` for a tracking code is `notApplicable`, there are different types for different services. For example, `required` for `MeetingCenter`, `optional` for `EventCenter` and `notUsed` for others.\n" } } }, "OptionsForTrackingCodeObject": { "type": "object", "required": [ "value", "defaultValue" ], "properties": { "value": { "type": "string", "description": "The value of a tracking code option. `value` cannot be empty and the maximum size is 120 characters." }, "defaultValue": { "type": "boolean", "description": "Whether or not the option is the default option of a tracking code." } } }, "ReassignMeetingRequestObject": { "type": "object", "required": [ "hostEmail", "meetingIds" ], "properties": { "hostEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address of the new meeting host." }, "meetingIds": { "type": "array", "items": { "type": "string" }, "description": "List of meeting series IDs to be reassigned the new host. The size is between 1 and 100. All the meetings of `meetingIds` should belong to the same site, which is the `siteUrl` in the request header, if specified, or the admin user's preferred site, if not specified. All available Webex sites and the preferred sites of a user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." } } }, "ReassignMeetingResponseObject": { "type": "object", "required": [ "meetingId", "httpStatus" ], "properties": { "meetingId": { "type": "string", "example": "560d7b784f5143e3be2fc3064a5c5888", "description": "Unique identifier for the meeting to be reassigned host." }, "httpStatus": { "type": "string", "example": "404", "description": "HTTP status code for the meeting reassignment result." }, "message": { "type": "string", "example": "The requested resource could not be found.", "description": "General message for the host reassignment of `meetingId` if it fails." }, "errors": { "type": "array", "items": { "$ref": "#/components/schemas/ReassignMeetingErrorDescriptionObject" }, "description": "Detailed descriptions for the host reassignment of `meetingId` if it fails." } } }, "ReassignMeetingErrorDescriptionObject": { "type": "object", "required": [ "description" ], "properties": { "description": { "type": "string", "example": "The meeting is not found.", "description": "Detailed description for the host reassignment of `meetingId` if it fails." } } }, "EndMeetingRequestObject": { "type": "object", "properties": { "reason": { "type": "string", "example": "Agenda has been completed and the meeting is ended.", "description": "The reason for ending the meeting. This field is optional." } } }, "GetTrackingCodesObject": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/GetTrackingCodeObject" }, "description": "Tracking codes information." } } }, "GetTrackingCodeObject": { "type": "object", "required": [ "id", "name", "siteUrl", "options", "inputMode", "hostProfileCode", "scheduleStartCodes" ], "properties": { "id": { "type": "string", "example": "1", "description": "Unique identifier for tracking code." }, "name": { "type": "string", "example": "Department", "description": "Name for tracking code." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the tracking code." }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/OptionsForTrackingCodeObject" }, "description": "Tracking code option list." }, "inputMode": { "type": "string", "enum": [ "text", "select", "editableSelect", "hostProfileSelect" ], "description": "An option for how an admin user can provide a code value.\n * `text` - Text input.\n * `select` - Drop down list which requires `options`.\n * `editableSelect` - Both text input and select from list.\n * `hostProfileSelect` - An input method is only available for the host profile and sign-up pages.\n" }, "hostProfileCode": { "type": "string", "enum": [ "optional", "required", "adminSet", "notUsed" ], "description": "Type for the host profile.\n * `optional` - Available to be chosen but not compulsory.\n * `required` - Officially compulsory.\n * `adminSet` - The value is set by admin.\n * `notUsed` - The value cannot be used.\n" }, "scheduleStartCodes": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleStartCodeObject" }, "description": "Specify how tracking codes are used for each service on the meeting scheduler or meeting start pages." } } }, "ScheduleStartCodeObject": { "type": "object", "required": [ "service", "type" ], "properties": { "service": { "type": "string", "enum": [ "All", "MeetingCenter", "EventCenter", "TrainingCenter", "SupportCenter" ], "description": "Service for schedule or sign up pages\n * `All` - Tracking codes apply to all services.\n * `MeetingCenter` - Users can set tracking codes when scheduling a meeting.\n * `EventCenter` - Users can set tracking codes when scheduling an event.\n * `TrainingCenter` - Users can set tracking codes when scheduling a training session.\n * `SupportCenter` - Users can set tracking codes when scheduling a support meeting.\n" }, "type": { "type": "string", "enum": [ "optional", "required", "adminSet", "notUsed", "notApplicable" ], "description": "Type for meeting scheduler or meeting start pages.\n * `optional` - Available to be chosen but not compulsory.\n * `required` - Officially compulsory.\n * `adminSet` - The value is set by admin. This value only applies when `hostProfileCode` is `adminSet`.\n * `notUsed` - The value cannot be used.\n * `notApplicable` - This value only applies to the service of `All`. When the type of `All` for a tracking code is `notApplicable`, there are different types for different services. For example, `required` for `MeetingCenter`, `optional` for `EventCenter` and `notUsed` for others.\n" } } }, "CreateOrUpdateTrackingCodeObject": { "type": "object", "required": [ "name", "siteUrl", "options", "inputMode", "hostProfileCode", "scheduleStartCodes" ], "properties": { "name": { "type": "string", "example": "Department", "description": "Name for tracking code. The name cannot be empty and the maximum size is 120 characters." }, "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the tracking code." }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/OptionsForCreateOrUpdateTrackingCodeObject" }, "description": "Tracking code option list. The maximum size of `options` is 500." }, "inputMode": { "type": "string", "enum": [ "text", "select", "editableSelect", "hostProfileSelect" ], "description": "Select an option for how users can provide a code value. Please note that if users set `inputMode` as `hostProfileSelect`, `scheduleStartCode` should be `null`, which means `hostProfileSelect` only applies to \"Host Profile\".\n * `text` - Text input.\n * `select` - Drop down list which requires `options`.\n * `editableSelect` - Both text input and select from list.\n * `hostProfileSelect` - An input method is only available for the host profile and sign-up pages.\n" }, "hostProfileCode": { "type": "string", "enum": [ "optional", "required", "adminSet", "notUsed" ], "description": "Type for the host profile.\n * `optional` - Available to be chosen but not compulsory.\n * `required` - Officially compulsory.\n * `adminSet` - The value is set by admin.\n * `notUsed` - The value cannot be used.\n" }, "scheduleStartCodes": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleStartCodeObject" }, "description": "Specify how tracking codes are used for each service on the meeting scheduler or meeting start pages. The maximum size of `scheduleStartCodes` is 5." } } }, "OptionsForCreateOrUpdateTrackingCodeObject": { "type": "object", "required": [ "value", "defaultValue" ], "properties": { "value": { "type": "string", "description": "The value of a tracking code option. `value` cannot be empty and the maximum size is 120 characters." }, "defaultValue": { "type": "boolean", "description": "Whether or not the option is the default option of a tracking code." } } }, "GetTrackingCodeForUserObject": { "type": "object", "required": [ "siteUrl" ], "properties": { "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the tracking code." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOGJiOWNjMC0zMWM2LTQ3MzYtYmE4OC0wMDk5ZmQzNDNmODE", "description": "Unique identifier for the user." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the user." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/GetTrackingCodeItemForUserObject" }, "description": "Tracking code information." } } }, "UpdateTrackingCodeForUserObject": { "type": "object", "required": [ "siteUrl" ], "properties": { "siteUrl": { "type": "string", "example": "example.webex.com", "description": "Site URL for the tracking code." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xOGJiOWNjMC0zMWM2LTQ3MzYtYmE4OC0wMDk5ZmQzNDNmODE", "description": "Unique identifier for the user. At least one parameter of `personId` or `email` is required. `personId` must precede `email` if both are specified." }, "email": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the user. At least one parameter of `personId` or `email` is required. `personId` must precede `email` if both are specified." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateTrackingCodeItemForUserObject" }, "description": "Tracking code information for updates." } } }, "GetTrackingCodeItemForUserObject": { "type": "object", "required": [ "id", "name", "value" ], "properties": { "id": { "type": "string", "example": "1", "description": "Unique identifier for tracking code." }, "name": { "type": "string", "example": "Department", "description": "Name for tracking code." }, "value": { "type": "string", "description": "Value for tracking code." } } }, "UpdateTrackingCodeItemForUserObject": { "type": "object", "required": [ "name", "value" ], "properties": { "name": { "type": "string", "example": "Department", "description": "Name for tracking code. The name cannot be empty and the maximum size is 120 characters." }, "value": { "type": "string", "description": "Value for tracking code. `value` cannot be empty and the maximum size is 120 characters." } } }, "PatchGroupMeetingObject": { "type": "object", "properties": { "title": { "type": "string", "example": "John's Meeting", "description": "Meeting title. The title can be a maximum of 128 characters long." }, "agenda": { "type": "string", "example": "John's Agenda", "description": "Meeting agenda. The agenda can be a maximum of 1300 characters long. It can be specified `null` so that it becomes null and hidden from the response after the patch." }, "password": { "type": "string", "example": "BgJep@43", "description": "Meeting password. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details." }, "start": { "type": "string", "example": "2020-05-15T20:30:00-08:00", "description": "Date and time for the start of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `start` cannot be before current date and time or after `end`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `start` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, if `start` is within the same minute as the current time, `start` will be adjusted to the upcoming minute; otherwise, `start` will be adjusted with seconds and milliseconds stripped off. For instance, if the current time is `2022-03-01T10:32:16.657+08:00`, `start` of `2022-03-01T10:32:28.076+08:00` or `2022-03-01T10:32:41+08:00` will be adjusted to `2022-03-01T10:33:00+08:00`, and `start` of `2022-03-01T11:32:28.076+08:00` or `2022-03-01T11:32:41+08:00` will be adjusted to `2022-03-01T11:32:00+08:00`." }, "end": { "type": "string", "example": "2020-05-15T21:30:00-08:00", "description": "Date and time for the end of meeting in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `end` cannot be before current date and time or before `start`. Duration between `start` and `end` cannot be shorter than 10 minutes or longer than 23 hours 59 minutes. Refer to the [Webex Meetings](/docs/meetings#restrictions-on-updating-a-meeting) guide for more information about restrictions on updating date and time for a meeting. Please note that when a meeting is being updated, `end` of the meeting will be accurate to minutes, not seconds or milliseconds. Therefore, `end` will be adjusted with seconds and milliseconds stripped off. For instance, `end` of `2022-03-01T11:52:28.076+08:00` or `2022-03-01T11:52:41+08:00` will be adjusted to `2022-03-01T11:52:00+08:00`." }, "timezone": { "type": "string", "example": "America/Los_Angeles", "description": "[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in which the meeting was originally scheduled (conforming with the [IANA time zone database](https://www.iana.org/time-zones))." }, "recurrence": { "type": "string", "example": "FREQ=DAILY;INTERVAL=1;COUNT=20", "description": "Meeting series recurrence rule (conforming with [RFC 2445](https://www.ietf.org/rfc/rfc2445.txt)). Applies only to a recurring meeting series, not to a meeting series with only one scheduled meeting. Multiple days or dates for monthly or yearly `recurrence` rule are not supported, only the first day or date specified is taken. For example, \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10,11,12\" is not supported and it will be partially supported as \"FREQ=MONTHLY;INTERVAL=1;COUNT=10;BYMONTHDAY=10\". It can be specified `null` so that the meeting becomes non-recurring and the `recurrence` attribute becomes null and hidden from the response after the patch. If you specify a `recurrence` like `FREQ=DAILY;INTERVAL=1` which never ends, the furthest date of the series is unlimited. You can also specify a `recurrence` with a very distant ending date in the future, e.g. `FREQ=DAILY;INTERVAL=1;UNTIL=21241001T000000Z`, but the actual furthest date accepted for the recurring meeting is five years from now. Specifically, if it has an ending date, there can be up to 5 occurrences for a yearly meeting, 60 occurrences for a monthly meeting, 261 occurrences for a weekly meeting, or 1826 occurrences for a daily meeting." }, "enabledAutoRecordMeeting": { "type": "boolean", "description": "Whether or not meeting is recorded automatically." }, "allowAnyUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the meeting. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "enabledJoinBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to join the meeting before the host joins the meeting." }, "enableConnectAudioBeforeHost": { "type": "boolean", "description": "Whether or not to allow any attendee to connect audio in the meeting before the host joins the meeting. This attribute is only applicable if the `enabledJoinBeforeHost` attribute is set to true." }, "joinBeforeHostMinutes": { "type": "number", "example": 15, "description": "Number of minutes an attendee can join the meeting before the meeting start time and the host joins. Only applicable if the `enabledJoinBeforeHost` attribute is set to true. Valid options for a meeting are `0`, `5`, `10`, and `15`, and valid options for a webinar are `0`, `15`, `30`, `45`, and `60`. The default is `0` if not specified." }, "excludePassword": { "type": "boolean", "description": "Whether or not to exclude the meeting password from the email invitation." }, "publicMeeting": { "type": "boolean", "description": "Whether or not to allow the meeting to be listed on the public calendar." }, "reminderTime": { "type": "number", "example": 30, "description": "The number of minutes before the meeting begins, that an email reminder is sent to the host." }, "unlockedMeetingJoinSecurity": { "type": "string", "enum": [ "allowJoin", "allowJoinWithLobby", "blockFromJoin" ], "description": "Specifies how the people who aren't on the invite can join the unlocked meeting.\n * `allowJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoin`, people can join the unlocked meeting directly.\n * `allowJoinWithLobby` - If the value of `unlockedMeetingJoinSecurity` attribute is `allowJoinWithLobby`, people will wait in the lobby until the host admits them.\n * `blockFromJoin` - If the value of `unlockedMeetingJoinSecurity` attribute is `blockFromJoin`, people can't join the unlocked meeting.\n" }, "sessionTypeId": { "type": "number", "example": 3, "description": "Unique identifier for a meeting session type for the user. This attribute is required while scheduling webinar meeting. All available meeting session types enabled for the user can be retrieved by [List Meeting Session Types](/docs/api/v1/meetings/list-meeting-session-types) API." }, "enabledWebcastView": { "type": "boolean", "description": "Whether or not webcast view is enabled." }, "panelistPassword": { "type": "string", "example": "GwLqa@78", "description": "Password for panelists of a webinar meeting. Must conform to the site's password complexity settings. Read [password management](https://help.webex.com/en-us/zrupm6/Manage-Security-Options-for-Your-Site-in-Webex-Site-Administration) for details. If not specified, a random password conforming to the site's password rules will be generated automatically." }, "enableAutomaticLock": { "type": "boolean", "description": "Whether or not to automatically lock the meeting after it starts." }, "automaticLockMinutes": { "type": "number", "example": 10, "description": "The number of minutes after the meeting begins, for automatically locking it." }, "allowFirstUserToBeCoHost": { "type": "boolean", "description": "Whether or not to allow the first attendee of the meeting with a host account on the target site to become a cohost. The target site is specified by `siteUrl` parameter when creating the meeting; if not specified, it's user's preferred site." }, "allowAuthenticatedDevices": { "type": "boolean", "description": "Whether or not to allow authenticated video devices in the meeting's organization to start or join the meeting without a prompt." }, "sendEmail": { "type": "boolean", "example": true, "description": "Whether or not to send emails to host and invitees. It is an optional field and default value is true." }, "meetingOptions": { "type": "object", "properties": { "enabledChat": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat in the meeting. Also depends on the session type." }, "enabledVideo": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to have video in the meeting. Also depends on the session type." }, "enabledPolling": { "type": "boolean", "description": "Whether or not to allow any attendee to poll in the meeting. Can only be set `true` for a webinar. The value of this attribute depends on the session type for a meeting. Please contact your site admin if this attribute is not available. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "enabledNote": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to take notes in the meeting. The value of this attribute also depends on the session type. Not supported if the site has been migrated to the Webex Suite meeting platform." }, "noteType": { "type": "string", "enum": [ "allowAll", "allowOne" ], "description": "Whether note taking is enabled. If the value of `enabledNote` is false, users cannot set this attribute and get the default value `allowAll`. Not supported if the site has been migrated to the Webex Suite meeting platform.\n * `allowAll` - If the value of `noteType` attribute is `allowAll`, all participants can take notes.\n * `allowOne` - If the value of `noteType` attribute is `allowOne`, only a single note taker is allowed.\n" }, "enabledFileTransfer": { "type": "boolean", "description": "Whether or not to allow any attendee to transfer files in the meeting. The value of this attribute also depends on the session type." }, "enabledUCFRichMedia": { "type": "boolean", "description": "Whether or not to allow any attendee to share [Universal Communications Format](https://www.cisco.com/c/en/us/td/docs/collaboration/training_center/wbs30/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions/WebEx_BK_TE1FB6C1_00_training-center-frequently-asked-questions_chapter_0110.pdf) media files in the meeting. The value of this attribute also depends on the sessionType. Not supported if the site has been migrated to the Webex Suite meeting platform." } }, "description": "Meeting Options." }, "attendeePrivileges": { "type": "object", "properties": { "enabledShareContent": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to share content in the meeting." }, "enabledSaveDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to save shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledPrintDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to print shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledAnnotate": { "type": "boolean", "description": "Whether or not to allow any attendee to annotate shared documents, slides, or whiteboards when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewParticipantList": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to view participants." }, "enabledViewThumbnails": { "type": "boolean", "description": "Whether or not to allow any attendee to see a small preview image of any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledRemoteControl": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to control applications, web browsers, or desktops remotely. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyDocument": { "type": "boolean", "description": "Whether or not to allow any attendee to view any shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledViewAnyPage": { "type": "boolean", "description": "Whether or not to allow any attendee to scroll through any page of shared documents or slides when they are shared as files in the content viewer instead of in a window or application. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledContactOperatorPrivately": { "type": "boolean", "description": "Whether or not to allow any attendee to contact the operator privately. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatHost": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the host in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatPresenter": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with the presenter in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." }, "enabledChatOtherParticipants": { "type": "boolean", "example": true, "description": "Whether or not to allow any attendee to chat with other participants in private. This option is no longer supported for meetings on a site which has been migrated to the Webex Suite Meeting Platform (WSMP)." } }, "description": "Attendee Privileges. This attribute is not supported for a webinar." }, "integrationTags": { "type": "array", "items": { "type": "string" }, "description": "External keys created by an integration application in its own domain, for example Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries meetings by a key in its own domain. The maximum size of `integrationTags` is 3 and each item of `integrationTags` can be a maximum of 64 characters long. Please note that an empty or null `integrationTags` will delete all existing integration tags for the meeting implicitly. Developer can update integration tags for a `meetingSeries` but he cannot update it for a `scheduledMeeting` or a `meeting` instance." }, "enabledBreakoutSessions": { "type": "boolean", "description": "Whether or not breakout sessions are enabled. If the value of `enabledBreakoutSessions` is false, users can not set breakout sessions. If the value of `enabledBreakoutSessions` is true, users can update breakout sessions using the [Update Breakout Sessions](/docs/api/v1/meetings/{meetingId}/breakoutSessions) API. Updating breakout sessions are not supported by this API." }, "trackingCodes": { "type": "array", "items": { "$ref": "#/components/schemas/TrackingCodeItemForCreateMeetingObject" }, "description": "Tracking codes information. All available tracking codes and their options for the specified site can be retrieved by [List Meeting Tracking Codes](/docs/api/v1/meetings/list-meeting-tracking-codes) API. If an optional tracking code is missing from the `trackingCodes` array and there's a default option for this tracking code, the default option is assigned automatically. If the `inputMode` of a tracking code is `select`, its value must be one of the site-level options or the user-level value. Tracking code is not supported for a personal room meeting or an ad-hoc space meeting. It can be specified `null` so that it becomes null and hidden from the response after the patch." }, "enabledAudioWatermark": { "type": "boolean", "description": "Whether or not the audio watermark is enabled. If it's `true`, `scheduledType` equals or defaults to `meeting`, and `audioConnectionOptions.audioConnectionType` equals `VoIP`, the audio for this meeting will have a watermark. In this case, a unique identifier is embedded into the audio that plays out of each Webex app and device. An administrator can use this watermark when analyzing an unauthorized recording to identify which Webex app or device was the source of the recording." }, "enabledVisualWatermark": { "type": "boolean", "description": "Whether or not the visual watermark is enabled. If it's `true`, the video for this meeting will have a watermark. In this case, Webex superimposes a watermark image pattern on top of the meeting video and shared content to deter participants from leaking meeting information. Each participant viewing the meeting sees a watermark image pattern with their email address. If the participant is not signed in, the watermark image pattern includes their display name and email address." }, "visualWatermarkOpacity": { "type": "number", "example": 10, "description": "Opacity level for the visual watermark. The value must be between 5 and 80, inclusive. A smaller value means less distraction for meeting participants, while a larger value shows a clearer watermark. It's supported when `enabledVisualWatermark` is `true`." }, "audioConnectionOptions": { "type": "object", "properties": { "audioConnectionType": { "type": "string", "enum": [ "webexAudio", "VoIP", "other", "none" ], "description": "Choose how meeting attendees join the audio portion of the meeting.\n * `webexAudio` - Provide a hybrid audio option, allowing attendees to join using their computer audio or a phone.\n * `VoIP` - Only restricts attendees to join the audio portion of the meeting using their computer instead of a telephone option.\n * `other` - Other teleconference services.\n * `none` - The way of attendees join the audio portion of the meeting is the default value.\n" }, "enabledTollFreeCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show toll-free call-in numbers." }, "enabledGlobalCallIn": { "type": "boolean", "example": true, "description": "Whether or not to show global call-in numbers to attendees." }, "enabledAudienceCallBack": { "type": "boolean", "description": "Whether or not to allow attendees to receive a call-back and call-in is available. Can only be set `true` for a webinar." }, "entryAndExitTone": { "type": "string", "enum": [ "beep", "announceName", "noTone" ], "description": "Select the sound you want users who have a phone audio connection to hear when someone enters or exits the meeting.\n * `beep` - All call-in users joining the meeting will hear the beep.\n * `announceName` - All call-in users joining the meeting will hear their names.\n * `noTone` - Turn off beeps and name announcements.\n" }, "allowHostToUnmuteParticipants": { "type": "boolean", "description": "Whether or not to allow the host to unmute participants." }, "allowAttendeeToUnmuteSelf": { "type": "boolean", "example": true, "description": "Whether or not to allow attendees to unmute themselves." }, "muteAttendeeUponEntry": { "type": "boolean", "description": "Whether or not to auto-mute attendees when attendees enter meetings." } }, "description": "Audio connection options." }, "requireAttendeeLogin": { "type": "boolean", "description": "Require attendees to sign in before joining the webinar. This option works when the value of `scheduledType` attribute is `webinar`. Please note that `requireAttendeeLogin` cannot be set if someone has already registered for the webinar." }, "restrictToInvitees": { "type": "boolean", "description": "Restrict webinar to invited attendees only. This option works when the registration option is disabled and the value of `scheduledType` attribute is `webinar`. Please note that `restrictToInvitees` cannot be set to `true` if `requireAttendeeLogin` is `false`." }, "enabledLiveStream": { "type": "boolean", "description": "When `true`, live streaming is enabled." }, "liveStream": { "$ref": "#/components/schemas/LiveStreamObject", "description": "Live streaming settings. Applies when `enabledLiveStream` is `true`." } } }, "GetMeetingConfigurationCommonSettingObject": { "type": "object", "properties": { "siteOptions": { "type": "object", "properties": { "allowCustomPersonalRoomURL": { "type": "boolean", "description": "Allow hosts to change their Personal Room URLs." } }, "description": "Site Options on Webex Administration." }, "telephonyConfig": { "type": "object", "properties": { "allowCallIn": { "type": "boolean", "description": "Whether call-in teleconferencing for sessions was enabled." }, "allowCallBack": { "type": "boolean", "description": "Whether call-back teleconferencing for sessions was enabled." }, "allowOtherTeleconf": { "type": "boolean", "description": "Whether other teleconferencing for sessions was enabled." }, "allowTollFreeCallin": { "type": "boolean", "description": "Whether toll-free call-in teleconferencing was enabled." }, "allowInternationalCallin": { "type": "boolean", "description": "Whether international call-in teleconferencing was enabled." }, "allowInternationalCallback": { "type": "boolean", "description": "Whether international call-back teleconferencing was enabled." }, "VoIP": { "type": "boolean", "description": "Whether Voice Over IP functionality using the attendee computer's speakers and microphones was enabled." } }, "description": "Telephony Configuration on WebEx Super Admin (These options are read-only, unable to update by Update Common Settings API)." }, "defaultSchedulerOptions": { "type": "object", "required": [ "entryAndExitTone", "telephonySupport" ], "properties": { "entryAndExitTone": { "type": "string", "enum": [ "NoTone", "Beep", "AnnounceName" ], "description": "Determines if a sound is made when someone enters or exits.\n * `NoTone` - No tone.\n * `Beep` - Beep.\n * `AnnounceName` - Announce name.\n" }, "joinTeleconfNotPress1": { "type": "boolean", "description": "Specifies whether or not joining teleconference without pressing 1 is checked by default." }, "telephonySupport": { "type": "string", "enum": [ "None", "WebexTeleconferencing", "Other" ], "description": "Specifies the type of teleconference support for meetings.\n * `None` - None.\n * `WebexTeleconferencing` - Webex teleconferencing.\n * `Other` - Other Teleconferencing.\n" }, "tollFree": { "type": "boolean", "description": "Specifies whether toll-free call-in is available." }, "VoIP": { "type": "boolean", "description": "Denotes if VoIP protocols are being used." } }, "description": "Default Scheduler Options on Webex Administration (These options are applied to the site as defaults, but individual users can change them)." }, "scheduleMeetingOptions": { "type": "object", "properties": { "emailReminders": { "type": "boolean", "description": "Determines if email reminders are to be sent out." } }, "description": "Schedule Meeting Options on Webex Administration." }, "securityOptions": { "type": "object", "properties": { "joinBeforeHost": { "type": "boolean", "description": "Allow attendees or panelists to join before the host." }, "audioBeforeHost": { "type": "boolean", "description": "Allows attendees or panelists to join the teleconference before the host." }, "firstAttendeeAsPresenter": { "type": "boolean", "description": "Allows first attendee or panelist as the presenter." }, "unlistAllMeetings": { "type": "boolean", "description": "Specifies that all meetings must be unlisted." }, "requireLoginBeforeAccess": { "type": "boolean", "description": "Determines if a user must login before getting site access." }, "allowMobileScreenCapture": { "type": "boolean", "description": "Allow screen capture (Android devices only)." }, "requireStrongPassword": { "type": "boolean", "description": "Determines if strict passwords are required for meetings." }, "passwordCriteria": { "type": "object", "properties": { "mixedCase": { "type": "boolean", "description": "Determines if a password requires mixed case." }, "minLength": { "type": "number", "example": 8, "description": "Sets the minimum password length." }, "minNumeric": { "type": "number", "example": 2, "description": "Sets the minimum number of numeric characters in the password." }, "minAlpha": { "type": "number", "example": 4, "description": "Sets the minimum number of alphabetical characters in the password." }, "minSpecial": { "type": "number", "example": 1, "description": "Sets the minimum number of special characters in the password." }, "disallowDynamicWebText": { "type": "boolean", "description": "Do not allow dynamic web page text for meeting passwords (like site name, host's name, username, meeting topic)." }, "disallowList": { "type": "boolean", "description": "Specifies if passwords from the `disallowValues` list are to be allowed." }, "disallowValues": { "type": "array", "items": { "type": "string" }, "description": "Sets password values that are not allowed." } }, "description": "Criteria of a strong password." } }, "description": "Security Options on Webex Administration." } } }, "UpdateMeetingConfigurationCommonSettingObject": { "type": "object", "properties": { "siteOptions": { "type": "object", "properties": { "allowCustomPersonalRoomURL": { "type": "boolean", "description": "Allow hosts to change their Personal Room URLs." } }, "description": "Site Options on Webex Administration." }, "defaultSchedulerOptions": { "type": "object", "required": [ "entryAndExitTone", "telephonySupport" ], "properties": { "entryAndExitTone": { "type": "string", "enum": [ "NoTone", "Beep", "AnnounceName" ], "description": "Determines if a sound is made when someone enters or exits.\n * `NoTone` - No tone.\n * `Beep` - Beep.\n * `AnnounceName` - Announce name.\n" }, "joinTeleconfNotPress1": { "type": "boolean", "description": "Specifies whether or not joining teleconference without pressing 1 is checked by default." }, "telephonySupport": { "type": "string", "enum": [ "None", "WebexTeleconferencing", "Other" ], "description": "Specifies the type of teleconference support for meetings.\n * `None` - None.\n * `WebexTeleconferencing` - Webex teleconferencing (Unabled when Webex Super Admin hasn't turned on call-in teleconferencing and call-back teleconferencing).\n * `Other` - Other Teleconferencing (Unabled when Webex Super Admin hasn't turned on other teleconferencing).\n" }, "tollFree": { "type": "boolean", "description": "Specifies whether toll-free call-in is available, it can't be specified when `telephonySupport` was not `WebexTeleconferencing`, and it can't be specified as `true` when Webex Super Admin hasn't turned on toll-free call-in teleconferencing." }, "VoIP": { "type": "boolean", "description": "Denotes if VoIP protocols are being used, it can't be specified as `true` when Webex Super Admin hasn't turned on Voice Over IP functionality." } }, "description": "Default Scheduler Options on Webex Administration (These options are applied to the site as defaults, but individual users can change them)." }, "scheduleMeetingOptions": { "type": "object", "properties": { "emailReminders": { "type": "boolean", "description": "Determines if email reminders are to be sent out." } }, "description": "Schedule Meeting Options on Webex Administration." }, "securityOptions": { "type": "object", "properties": { "joinBeforeHost": { "type": "boolean", "description": "Allow attendees or panelists to join before the host." }, "audioBeforeHost": { "type": "boolean", "description": "Allows attendees or panelists to join the teleconference before the host, it can't be turned on when `joinBeforeHost` was `false`." }, "firstAttendeeAsPresenter": { "type": "boolean", "description": "Allows first attendee or panelist as the presenter, it can't be turned on when `firstAttendeeAsPresenter` was `false`." }, "unlistAllMeetings": { "type": "boolean", "description": "Specifies that all meetings must be unlisted." }, "requireLoginBeforeAccess": { "type": "boolean", "description": "Determines if a user must login before getting site access." }, "allowMobileScreenCapture": { "type": "boolean", "description": "Allow screen capture (Android devices only)." }, "requireStrongPassword": { "type": "boolean", "description": "Determines if strict passwords are required for meetings." }, "passwordCriteria": { "type": "object", "properties": { "mixedCase": { "type": "boolean", "description": "Determines if a password requires mixed case." }, "minLength": { "type": "number", "example": 8, "description": "Sets the minimum password length, maximum value limit of 12." }, "minNumeric": { "type": "number", "example": 2, "description": "Sets the minimum number of numeric characters in the password, maximum value limit of 12." }, "minAlpha": { "type": "number", "example": 4, "description": "Sets the minimum number of alphabetical characters in the password, maximum value limit of 12." }, "minSpecial": { "type": "number", "example": 1, "description": "Sets the minimum number of special characters in the password, maximum value limit of 12." }, "disallowDynamicWebText": { "type": "boolean", "description": "Do not allow dynamic web page text for meeting passwords (like site name, host's name, username, meeting topic)." }, "disallowList": { "type": "boolean", "description": "Specifies if passwords from the `disallowValues` list are to be allowed." }, "disallowValues": { "type": "array", "items": { "type": "string" }, "description": "Sets password values that are not allowed, and cannot type repeated items in it." } }, "description": "Criteria of a strong password, which cannot be specified when `requireStrongPassword` was `false`." } }, "description": "Security Options on Webex Administration." } } }, "ClustersAvailability": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterAvailabilityCollection" } } } }, "ClusterAvailabilityCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "description": "The unique ID for the organization." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterAvailability" }, "description": "Availability details of the Video Mesh cluster." }, "from": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time (inclusive) of the availability data." }, "to": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time (inclusive) of the availability data." } } }, "NodesAvailability": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/NodeAvailabilityCollection" } } } }, "SingleNodeAvailability": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SingleNodeAvailabilityCollection" } } } }, "NodeAvailabilityCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "description": "Unique ID for a Video Mesh organization." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/NodeAvailability" }, "description": "Availability details of the Video Mesh cluster." }, "from": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time (inclusive) of the availability data." }, "to": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time (inclusive) of the availability data." } } }, "SingleNodeAvailabilityCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "description": "Unique ID for a Video Mesh organization." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/SingleNodeAvailabilityObject" }, "description": "Availability details of the Video Mesh cluster." }, "from": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time (inclusive) of the availability data." }, "to": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time (inclusive) of the availability data." } } }, "ClusterAvailability": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "availabilitySegments": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterAvailableTimeline" }, { "$ref": "#/components/schemas/ClusterUnAvailableTimeline" } ] } } } }, "ClusterAvailableTimeline": { "type": "object", "properties": { "segmentStartTime": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Available", "description": "Availability information of the Video Mesh cluster." }, "noOfOnlineNodes": { "type": "number", "example": 1, "description": "Number of nodes that are online." }, "noOfOfflineNodes": { "type": "number", "example": 1, "description": "Number of nodes that are offline." }, "totalNodes": { "type": "number", "example": 2, "description": "Total number of nodes in the Video Mesh cluster." } } }, "ClusterUnAvailableTimeline": { "type": "object", "properties": { "segmentStartTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Unavailable", "description": "Availability information of the Video Mesh cluster." }, "noOfOnlineNodes": { "type": "number", "description": "Number of nodes that are online." }, "noOfOfflineNodes": { "type": "number", "example": 2, "description": "Number of nodes that are offline." }, "totalNodes": { "type": "number", "example": 2, "description": "Total number of nodes in the Video Mesh cluster." } } }, "NodeAvailability": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "hostNameOrIp": { "type": "string", "example": "xyz.abc.com", "description": "Host Name or the IP of the Video Mesh node." }, "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMWViNjVmZGYtOTY0My00MTdmLTk5NzQtYWQ3MmNhZTBlMTBmOmMyNTk0YmY2NDFmZTRkNTFiZDg3YThiMjYxYzg3NWY1", "description": "ID of the Video Mesh node." }, "availabilitySegments": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/NodeAvailableTimeline" }, { "$ref": "#/components/schemas/NodeUnAvailableTimeline" } ] } } } }, "SingleNodeAvailabilityObject": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "hostNameOrIp": { "type": "string", "example": "xyz.abc.com", "description": "Host Name or the IP of the Video Mesh node." }, "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMWViNjVmZGYtOTY0My00MTdmLTk5NzQtYWQ3MmNhZTBlMTBmOmMyNTk0YmY2NDFmZTRkNTFiZDg3YThiMjYxYzg3NWY1", "description": "ID of the Video Mesh node." }, "availabilitySegments": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/SingleNodeAvailableTimeline" }, { "$ref": "#/components/schemas/SingleNodeUnAvailableTimeline" } ] } } } }, "NodeAvailableTimeline": { "type": "object", "properties": { "noOfOnlineNodes": { "type": "number", "example": 1, "description": "Number of nodes that are online." }, "noOfOfflineNodes": { "type": "number", "description": "Number of nodes that are offline." }, "segmentStartTime": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Available", "description": "Availability information of the Video Mesh node." }, "unAvailabilityReason": { "type": "string", "example": "NA", "description": "Reason for the Video Mesh node being unavailable (if any)." }, "totalNodes": { "type": "number", "example": 1, "description": "Total number of nodes in the Video Mesh cluster." } } }, "SingleNodeAvailableTimeline": { "type": "object", "properties": { "segmentStartTime": { "type": "string", "example": "2021-09-15T15:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Available", "description": "Availability information of the Video Mesh node." }, "unAvailabilityReason": { "type": "string", "example": "NA", "description": "Reason for the Video Mesh node being unavailable (if any)." } } }, "NodeUnAvailableTimeline": { "type": "object", "properties": { "noOfOnlineNodes": { "type": "number", "description": "Number of nodes that are online." }, "noOfOfflineNodes": { "type": "number", "example": 1, "description": "Number of nodes that are offline." }, "segmentStartTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Unavailable", "description": "Availability information of the Video Mesh node" }, "unAvailabilityReason": { "type": "string", "example": "Connectivity Issues to the Node", "description": "Reason for the Video Mesh node being unavailable (if any)." }, "totalNodes": { "type": "number", "example": 1, "description": "Total number of nodes in the Video Mesh cluster." } } }, "SingleNodeUnAvailableTimeline": { "type": "object", "properties": { "segmentStartTime": { "type": "string", "example": "2021-09-15T16:53:00Z", "description": "Start date and time of the segment of availability data." }, "segmentEndTime": { "type": "string", "example": "2021-09-15T17:53:00Z", "description": "End date and time of the segment of availability data." }, "availability": { "type": "string", "example": "Unavailable", "description": "Availability information of the Video Mesh node." }, "unAvailabilityReason": { "type": "string", "example": "Connectivity Issues to the Node", "description": "Reason for the Video Mesh node being unavailable (if any)." } } }, "MediaHealthMonitoringResultsforOrganization": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionfororganization" } } } }, "MediaHealthMonitoringResultsCollectionfororganization": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Media Health Monitoring Tool data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Media Health Monitoring Tool data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/MediaHealthMonitoringclusters" }, "description": "Media Health Monitoring Tool test results." } } }, "MediaHealthMonitoringResultsforcluster": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionforcluster" } } } }, "MediaHealthMonitoringclusters": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringforfirstcluster" }, { "$ref": "#/components/schemas/MediaHealthMonitoringforsecondcluster" } ] }, "description": "The list of Video Mesh clusters." } } }, "MediaHealthMonitoringforfirstcluster": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "banglore", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringsecondnode" }, { "$ref": "#/components/schemas/MediaHealthMonitoringfirstnode" } ] }, "description": "The Video Mesh nodes in the cluster." } } }, "MediaHealthMonitoringforsecondcluster": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringsecondnode" }, { "$ref": "#/components/schemas/MediaHealthMonitoringfirstnode" } ] }, "description": "The Video Mesh nodes in the cluster." } } }, "MediaHealthMonitoringResultsCollectionforcluster": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Media Health Monitoring Tool data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Media Health Monitoring Tool data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/PerclusterMediaHealthMonitoringclusters" }, "description": "Media Health Monitoring Tool test results." } } }, "PerclusterMediaHealthMonitoringclusters": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/PerclusterMediaHealthMonitoringresult" }, "description": "List of Video Mesh clusters." } } }, "PerclusterMediaHealthMonitoringresult": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringsecondnode" }, { "$ref": "#/components/schemas/MediaHealthMonitoringfirstnode" } ] }, "description": "The Video Mesh nodes in the cluster." } } }, "MediaHealthMonitoringfirstnode": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "xyz.company.com", "description": "Host name or IP Address of the Video Mesh node." }, "mhmTestResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringTestResultsFailure" }, { "$ref": "#/components/schemas/MediaHealthMonitoringTestResultsSuccess" } ] }, "description": " The Media Health Monitoring Tool test results for a single Video Mesh node." } } }, "MediaHealthMonitoringsecondnode": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "abc.company.com", "description": "Host name or the IP of the Video Mesh node." }, "mhmTestResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaHealthMonitoringTestResultsFailure" }, { "$ref": "#/components/schemas/MediaHealthMonitoringTestResultsSuccess" } ] }, "description": "The Media Health Monitoring Tool test results for a single Video Mesh node." } } }, "MediaHealthMonitoringResultsfornode": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/MediaHealthMonitoringResultsCollectionfornode" } } } }, "MediaHealthMonitoringResultsCollectionfornode": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Media Health Monitoring Tool data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Media Health Monitoring Tool data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/PernodeMediaHealthMonitoringclusters" }, "description": "Media Health Monitoring Tool test results." } } }, "PernodeMediaHealthMonitoringclusters": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/PernodeMediaHealthMonitoringresult" }, "description": "The list of Video Mesh clusters." } } }, "PernodeMediaHealthMonitoringresult": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/MediaHealthMonitoringfirstnode" }, "description": "The Video Mesh nodes in the cluster." } } }, "MediaHealthMonitoringTestResultsFailure": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T15:53:00Z", "description": "The timestamp of the test run." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "Unique ID of the test." }, "testResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaSignallingtestResultFailure" }, { "$ref": "#/components/schemas/MediaCascadetestResultFailure" }, { "$ref": "#/components/schemas/SIPSignallingtestResultFailure" } ] }, "description": "Test results of Media Signalling, SIP Signalling, Media Cascade runs." } } }, "MediaHealthMonitoringTestResultsSuccess": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T15:53:00Z", "description": "The timestamp of the test run." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "Unique ID of the test." }, "testResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MediaSignallingtestResultSuccess" }, { "$ref": "#/components/schemas/MediaCascadetestResultSuccess" }, { "$ref": "#/components/schemas/SIPSignallingtestResultSuccess" } ] }, "description": "Test results of Media Signalling, SIP Signalling, Media Cascade runs." } } }, "MediaSignallingtestResultSuccess": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Signalling", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Success", "description": "The result, either `Success` or `Failed`." } } }, "MediaCascadetestResultSuccess": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Cascade", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Success", "description": "The result, either `Success` or `Failed`." } } }, "SIPSignallingtestResultSuccess": { "type": "object", "properties": { "testName": { "type": "string", "example": "SIP Signalling", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Success", "description": "The result, either `Success` or `Failed`." } } }, "MediaSignallingtestResultFailure": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Signalling", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Failed", "description": "Test results(Success/Failed)." }, "failureReason": { "type": "string", "example": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support.", "description": "Reason for test failure." } } }, "MediaCascadetestResultFailure": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Cascade", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Failed", "description": "Test results(Success/Failed)." }, "failureReason": { "type": "string", "example": "An internal error occurred in monitoring tool [Error Code:1004]. If the issue persists, please contact Cisco Support.", "description": "Reason for test failure." } } }, "SIPSignallingtestResultFailure": { "type": "object", "properties": { "testName": { "type": "string", "example": "SIP Signalling", "description": "The name of the test." }, "testResult": { "type": "string", "example": "Failed", "description": "Test results(Success/Failed)." }, "failureReason": { "type": "string", "example": "An internal error occurred in monitoring tool [Error Code:1002]. If the issue persists, please contact Cisco Support.", "description": "Reason for test failure." } } }, "OverflowtoCloud": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/OverflowtoCloudCollection" } } } }, "OverflowtoCloudCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) for the Overflow to Cloud data." }, "to": { "type": "string", "example": "2022-03-24T04:22:03Z", "description": "End date and time (inclusive) for the Overflow to Cloud data." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/CloudOverflowTrend1" }, { "$ref": "#/components/schemas/CloudOverflowTrend2" } ] }, "description": "Overflow data for the organization." } } }, "CloudOverflowTrend1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "overflowDetails": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/OverflowDetails1" }, { "$ref": "#/components/schemas/OverflowDetails2" } ] }, "description": "Overflow Details." } } }, "CloudOverflowTrend2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "overflowDetails": { "type": "array", "items": { "$ref": "#/components/schemas/OverflowDetails3" }, "description": "Overflow Details." } } }, "OverflowDetails1": { "type": "object", "properties": { "overflowReason": { "type": "string", "example": "Capacity exceeded", "description": "The reason for this overflow." }, "overflowCount": { "type": "number", "example": 25, "description": "Number of overflows." }, "possibleRemediation": { "type": "string", "example": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters.", "description": "Any possible remediations for this overflow." } } }, "OverflowDetails2": { "type": "object", "properties": { "overflowReason": { "type": "string", "example": "Connectivity issues", "description": "The reason for this overflow." }, "overflowCount": { "type": "number", "example": 1, "description": "Number of overflows." }, "possibleRemediation": { "type": "string", "example": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration.", "description": "Any possible remediations for this overflow." } } }, "OverflowDetails3": { "type": "object", "properties": { "overflowReason": { "type": "string", "example": "Capacity exceeded", "description": "The reason for this overflow." }, "overflowCount": { "type": "number", "example": 38, "description": "Number of overflows." }, "possibleRemediation": { "type": "string", "example": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters.", "description": "Any possible remediations for this overflow." } } }, "RedirectforOrg": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RedirectCollectionForOrg" } } } }, "RedirectCollectionForOrg": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) for the Call Redirect details." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the Call Redirect details." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/RedirectTrend1" }, { "$ref": "#/components/schemas/RedirectTrend2" } ] }, "description": "Redirect details for the organization." } } }, "RedirectTrend1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterRedirectBlr1" }, { "$ref": "#/components/schemas/ClusterRedirectSJ1" } ] } } } }, "RedirectTrend2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterRedirectBlr2" }, { "$ref": "#/components/schemas/ClusterRedirectSJ2" } ] } } } }, "ClusterRedirectBlr1": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "bangalore", "description": "Name of the Video Mesh cluster." }, "redirectDetails": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterRedirectDetailsBlr1a" }, { "$ref": "#/components/schemas/ClusterRedirectDetailsBlr1b" } ] }, "description": "Call Redirect Details." } } }, "ClusterRedirectBlr2": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "bangalore", "description": "Name of the Video Mesh cluster." }, "redirectDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterRedirectDetailsBlr2" }, "description": "Call Redirect Details." } } }, "ClusterRedirectSJ1": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "redirectDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterRedirectDetailsSJ1" }, "description": "Call Redirect Details." } } }, "ClusterRedirectSJ2": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "redirectDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterRedirectDetailsSJ2" }, "description": "Call Redirect Details." } } }, "ClusterRedirectDetailsBlr1a": { "type": "object", "properties": { "redirectReason": { "type": "string", "example": "Capacity exceeded", "description": "The reason for the redirect." }, "redirectCount": { "type": "number", "example": 10, "description": "Number of Call Redirects." }, "possibleRemediation": { "type": "string", "example": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters.", "description": " Any possible remediations for this overflow." } } }, "ClusterRedirectDetailsBlr1b": { "type": "object", "properties": { "redirectReason": { "type": "string", "example": "Connectivity issues", "description": "The reason for the redirect." }, "redirectCount": { "type": "number", "example": 78, "description": "Number of Call Redirects." }, "possibleRemediation": { "type": "string", "example": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration.", "description": " Any possible remediations for this overflow." } } }, "ClusterRedirectDetailsBlr2": { "type": "object", "properties": { "redirectReason": { "type": "string", "example": "Node upgrading", "description": "The reason for the redirect." }, "redirectCount": { "type": "number", "example": 4, "description": "Number of Call Redirects." }, "possibleRemediation": { "type": "string", "example": "Video Mesh Node is being upgraded. Please wait for upgrades to finish.", "description": "Any possible remediations for this overflow." } } }, "ClusterRedirectDetailsSJ1": { "type": "object", "properties": { "redirectReason": { "type": "string", "example": "Capacity exceeded", "description": "The reason for the redirect." }, "redirectCount": { "type": "number", "example": 26, "description": "Number of Call Redirects." }, "possibleRemediation": { "type": "string", "example": "Video Mesh exceeded its capacity. If this happens frequently, consider adding more nodes to your clusters.", "description": "Any possible remediations for this overflow." } } }, "ClusterRedirectDetailsSJ2": { "type": "object", "properties": { "redirectReason": { "type": "string", "example": "Connectivity issues", "description": "The reason for the redirect." }, "redirectCount": { "type": "number", "example": 47, "description": "Number of Call Redirects." }, "possibleRemediation": { "type": "string", "example": "Connectivity Issues between Video Mesh Node and Cloud. Check your network configuration.", "description": "Any possible remediations for this overflow." } } }, "RedirectForCluster": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/RedirectCollectionForCluster" } } } }, "RedirectCollectionForCluster": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) for the Call Redirect details." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the Call Redirect details." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/RedirectTrendForCluster1" }, { "$ref": "#/components/schemas/RedirectTrendForCluster2" } ] }, "description": "Redirect details for the organization." } } }, "RedirectTrendForCluster1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterRedirectBlr1" } } } }, "RedirectTrendForCluster2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterRedirectBlr2" } } } }, "ClustersUtilization": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterUtilizationCollection" } } } }, "ClusterUtilizationCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "description": "The unique ID for the organization." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) of the utilization data." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the utilization data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterUtilizationTrend1" }, { "$ref": "#/components/schemas/ClusterUtilizationTrend2" } ] }, "description": "Utilization details of the Video Mesh cluster" } } }, "ClusterUtilizationTrend1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterUtilizationT1SJ" }, { "$ref": "#/components/schemas/ClusterUtilizationT1Blr" } ] } } } }, "ClusterUtilizationT1SJ": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "utilizationMetrics": { "$ref": "#/components/schemas/UtilizationMetricsT1SJ", "description": "Utilization details for the cluster in the time interval." } } }, "ClusterUtilizationT1Blr": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "bangalore", "description": "Name of the Video Mesh cluster." }, "utilizationMetrics": { "$ref": "#/components/schemas/UtilizationMetricsT1Blr", "description": "Utilization details for the cluster in the time interval." } } }, "UtilizationMetricsT1SJ": { "type": "object", "properties": { "peakCpu": { "type": "number", "example": 54.54, "description": "Peak CPU usage during the time interval." }, "avgCpu": { "type": "number", "example": 4.27, "description": "Average CPU usage during the time interval." }, "activeCalls": { "type": "number", "example": 5, "description": "Maximum active calls at a point in the time interval." }, "activePrivateCalls": { "type": "number", "example": 1, "description": "Maximum active private calls at a point in the time interval." } } }, "UtilizationMetricsT1Blr": { "type": "object", "properties": { "peakCpu": { "type": "number", "example": 62, "description": "Peak CPU usage during the time interval." }, "avgCpu": { "type": "number", "example": 3.64, "description": "Average CPU usage during the time interval." }, "activeCalls": { "type": "number", "description": "Maximum active calls at a point in the time interval." }, "activePrivateCalls": { "type": "number", "description": "Maximum active private calls at a point in the time interval." } } }, "ClusterUtilizationTrend2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterUtilizationT2SJ" }, { "$ref": "#/components/schemas/ClusterUtilizationT2Blr" } ] } } } }, "ClusterUtilizationT2SJ": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "utilizationMetrics": { "$ref": "#/components/schemas/UtilizationMetricsT2SJ", "description": "Utilization details for the cluster in the time interval." } } }, "ClusterUtilizationT2Blr": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "bangalore", "description": "Name of the Video Mesh cluster." }, "utilizationMetrics": { "$ref": "#/components/schemas/UtilizationMetricsT2Blr", "description": "Utilization Metric details for the cluster in the time interval." } } }, "UtilizationMetricsT2SJ": { "type": "object", "properties": { "peakCpu": { "type": "number", "example": 73.26, "description": "Peak CPU usage during the time interval." }, "avgCpu": { "type": "number", "example": 13.16, "description": "Average CPU usage during the time interval." }, "activeCalls": { "type": "number", "example": 7, "description": "Maximum active calls at a point in the time interval." }, "activePrivateCalls": { "type": "number", "example": 2, "description": "Maximum active private calls at a point in the time interval." } } }, "UtilizationMetricsT2Blr": { "type": "object", "properties": { "peakCpu": { "type": "number", "example": 69.75, "description": "Peak CPU usage during the time interval." }, "avgCpu": { "type": "number", "example": 57.89, "description": "Average CPU usage during the time interval." }, "activeCalls": { "type": "number", "example": 142, "description": "Maximum active calls at a point in the time interval." }, "activePrivateCalls": { "type": "number", "example": 15, "description": "Maximum active private calls at a point in the time interval." } } }, "UtilizationForCluster": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/UtilizationForClusterCollection" } } } }, "UtilizationForClusterCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ=", "description": "The unique ID for the organization." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) of the utilization data." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the utilization data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/UtilizationForClusterTrend1" }, { "$ref": "#/components/schemas/UtilizationForClusterTrend2" } ] }, "description": "Utilization details of the Video Mesh cluster." } } }, "UtilizationForClusterTrend1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterUtilizationT1Blr" } } } }, "UtilizationForClusterTrend2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterUtilizationT2Blr" } } } }, "ReachabilityTestResults": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsfororganization" } } } }, "ReachabilityTestResultsCluster": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsforcluster" } } } }, "ReachabilityTestResultsNode": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsfornode" } } } }, "ReachabilityTestresultsfororganization": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Reachability test results data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Reachability test results data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestResultsforcluster" }, "description": "Reachability test results data." } } }, "ReachabilityTestresultsforcluster": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Reachability test results data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Reachability test results data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestResultsforsinglecluster" }, "description": "Reachability test results data." } } }, "ReachabilityTestresultsfornode": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Reachability test results data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Reachability test results data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestResultsforoneclusteronenode" }, "description": "Reachability test results data." } } }, "ReachabilityTestResultsforcluster": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestResultsforfirstcluster" }, { "$ref": "#/components/schemas/ReachabilityTestResultsforsecondcluster" } ] }, "description": "List of Video Mesh clusters." } } }, "ReachabilityTestResultsforsinglecluster": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestResultsforfirstcluster" }, "description": "List of Video Mesh clusters." } } }, "ReachabilityTestResultsforoneclusteronenode": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestResultsforonecluster" }, "description": "List of Video Mesh clusters." } } }, "ReachabilityTestResultsforonecluster": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "banglore", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsfirstnode" }, "description": "The Video Mesh nodes in the cluster." } } }, "ReachabilityTestResultsforfirstcluster": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "banglore", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsfirstnode" }, { "$ref": "#/components/schemas/ReachabilityTestresultssecondnode" } ] }, "description": "The Video Mesh nodes in the cluster." } } }, "ReachabilityTestResultsforsecondcluster": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsfirstnode" }, { "$ref": "#/components/schemas/ReachabilityTestresultssecondnode" } ] }, "description": "The Video Mesh nodes in the cluster." } } }, "ReachabilityTestresultsfirstnode": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "xyz.company.com", "description": "Host name or the IP of the Video Mesh node." }, "testResults": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsdestinationcluster" }, "description": " Reachability test results for a single Video Mesh node." } } }, "ReachabilityTestresultssecondnode": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "abc.company.com", "description": "Host name or the IP of the Video Mesh node." }, "testResults": { "type": "array", "items": { "$ref": "#/components/schemas/ReachabilityTestresultsdestinationcluster" }, "description": " Reachability test results for a single Video Mesh node." } } }, "ReachabilityTestresultsdestinationcluster": { "type": "object", "properties": { "destinationCluster": { "type": "string", "example": "Amsterdam Cluster", "description": "Cloud Webex cluster against which Reachability test is being executed." }, "stunResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestResultsStunresults1" }, { "$ref": "#/components/schemas/ReachabilityTestResultsStunresults2" } ] }, "description": "STUN test results for a Video Mesh cluster." } } }, "ReachabilityTestResultsStunresults1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T15:53:00Z", "description": "The timestamp of the test run." }, "triggerType": { "type": "string", "example": "OnDemand", "description": "The type of the test being executed. Can be either `OnDemand` or `Periodic`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "Unique ID of the test." }, "udp": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsFailure" }, { "$ref": "#/components/schemas/ReachabilityTestresultsSuccess" } ] }, "description": "List of UDP ports being checked in Reachability test." }, "tcp": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsFailure" }, { "$ref": "#/components/schemas/ReachabilityTestresultsSuccess" } ] }, "description": "List of TCP ports being checked in Reachability test." } } }, "ReachabilityTestResultsStunresults2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T16:53:00Z", "description": "The timestamp of the test run." }, "triggerType": { "type": "string", "example": "OnDemand", "description": "The type of the test being executed. Can be either `OnDemand` or `Periodic`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "Unique ID of the test." }, "udp": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsFailure" }, { "$ref": "#/components/schemas/ReachabilityTestresultsSuccess" } ] }, "description": "List of UDP ports being checked in Reachability test." }, "tcp": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ReachabilityTestresultsFailure" }, { "$ref": "#/components/schemas/ReachabilityTestresultsSuccess" } ] }, "description": "List of TCP ports being checked in Reachability test." } } }, "ReachabilityTestresultsSuccess": { "type": "object", "properties": { "ipAddress": { "type": "string", "example": "1.1.1.1", "description": "Destination IP address." }, "port": { "type": "number", "example": 5004, "description": "Port number." }, "reachable": { "type": "boolean", "example": true, "description": "Port reachability information." } } }, "ReachabilityTestresultsFailure": { "type": "object", "properties": { "ipAddress": { "type": "string", "example": "1.1.1.1", "description": "Destination IP address." }, "port": { "type": "number", "example": 51004, "description": "Port number." }, "reachable": { "type": "boolean", "description": "Port reachability information." } } }, "ClusterDetails": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterDetailsCollection" } } } }, "ClusterDetailsCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/BlrClusterDetails" }, { "$ref": "#/components/schemas/SJClusterDetails" } ] }, "description": " Details of all the clusters of the organization." } } }, "BlrClusterDetails": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzFlYjY1ZmRmLTk2NDMtNDE3Zi05OTc0LWFkNzJjYWUwZTEwZjpiMzdmNTgzYy1kZGRjLTQyOGItODJlNS1jYmU2ODFkYjQ5NjI", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "Bangalore", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/BlrNode1" }, { "$ref": "#/components/schemas/BlrNode2" } ] }, "description": "The Video Mesh nodes in the cluster." }, "releaseChannel": { "type": "string", "example": "alpha", "description": "Release Channel of the Video Mesh cluster." }, "upgradeSchedule": { "$ref": "#/components/schemas/ClusterUpgradeScheduleBlr", "description": "Upgrade Schedule details of the Video Mesh cluster." } } }, "BlrNode1": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo0NjdiNGIxZC1jZWI2LTQwN2EtYWZmOC1mMjIxZmFiNzhjNzI", "description": "ID of the Video Mesh node." }, "hostNameOrIp": { "type": "string", "example": "xyz.abc.com", "description": "Host Name or the IP of the Video Mesh node." }, "deploymentType": { "type": "string", "example": "Video Mesh Node Lite", "description": "Deployment Type of the Video Mesh node." }, "location": { "$ref": "#/components/schemas/BlrNodeLocation", "description": "Location details of the Video Mesh node." } } }, "BlrNodeLocation": { "type": "object", "properties": { "countryCode": { "type": "string", "example": "IN", "description": "Country code of the Location where the Video Mesh node is deployed." }, "city": { "type": "string", "example": "Bangalore", "description": "City where Video Mesh node is deployed." }, "timeZone": { "type": "string", "example": "Asia/Kolkata", "description": "Time zone in which the Video Mesh node is deployed." } } }, "BlrNode2": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh node." }, "hostNameOrIp": { "type": "string", "example": "201.21.201.21", "description": "Host Name or the IP of the Video Mesh node." }, "deploymentType": { "type": "string", "example": "Video Mesh Node Lite", "description": "Deployment Type of the Video Mesh node." }, "location": { "$ref": "#/components/schemas/BlrNodeLocation", "description": "Location details of the Video Mesh node." } } }, "SJClusterDetails": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/SJNode1" }, { "$ref": "#/components/schemas/SJNode2" } ] }, "description": "The Video Mesh nodes in the cluster." }, "releaseChannel": { "type": "string", "example": "alpha", "description": "Release Channel of the Video Mesh cluster." }, "upgradeSchedule": { "$ref": "#/components/schemas/ClusterUpgradeScheduleSJ", "description": "Upgrade Schedule details of the Video Mesh cluster." } } }, "SJNode1": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo0NjdiNGIxZC1jZWI2LTQwN2EtYWZmOC1mMjIxZmFiNzhjNzI", "description": "ID of the Video Mesh node." }, "hostNameOrIp": { "type": "string", "example": "abc.company.com", "description": "Host Name or the IP of the Video Mesh node." }, "deploymentType": { "type": "string", "example": "Video Mesh Node Lite", "description": "Deployment Type of the Video Mesh node." }, "location": { "$ref": "#/components/schemas/SJNodeLocation", "description": "Location details of the Video Mesh node." } } }, "SJNode2": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh node." }, "hostNameOrIp": { "type": "string", "example": "xyz.abc.com", "description": "Host Name or the IP of the Video Mesh node." }, "deploymentType": { "type": "string", "example": "Video Mesh Node Lite", "description": "Deployment Type of the Video Mesh node." }, "location": { "$ref": "#/components/schemas/SJNodeLocation", "description": "Location details of the Video Mesh node." } } }, "SJNodeLocation": { "type": "object", "properties": { "countryCode": { "type": "string", "example": "US", "description": "Country Code of the Location where the Video Mesh node is deployed." }, "city": { "type": "string", "example": "San Jose", "description": "City where Video Mesh node is deployed." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Time zone in which the Video Mesh node is deployed." } } }, "ScheduleDays": { "type": "string", "enum": [ "sunday", "saturday", "tuesday", "friday", "wednesday", "thursday", "monday" ] }, "ClusterUpgradeScheduleBlr": { "type": "object", "properties": { "scheduleDays": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleDays" }, "description": "Days of the week when scheduled upgrades will occur for the Video Mesh cluster." }, "scheduleTime": { "type": "string", "example": "02:00", "description": "Time when scheduled upgrade will occur for the Video Mesh cluster." }, "scheduleTimeZone": { "type": "string", "example": "Asia/Kolkata", "description": "Timezone of the scheduled upgrade of Video Mesh cluster." }, "upgradePending": { "type": "boolean", "example": true, "description": "Upgrade Pending information." }, "nextUpgradeTime": { "type": "string", "example": "2020-03-25T20:30:00Z", "description": "Time when the next upgrade is scheduled for the Video Mesh cluster." } } }, "ClusterUpgradeScheduleSJ": { "type": "object", "properties": { "scheduleDays": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleDays" }, "description": "Days of the week when scheduled upgrades will occur for the Video Mesh cluster." }, "scheduleTime": { "type": "string", "example": "02:00", "description": "Time when scheduled upgrade will occur for the Video Mesh cluster." }, "scheduleTimeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Timezone of the scheduled upgrade of Video Mesh cluster." }, "upgradePending": { "type": "boolean", "example": true, "description": "Upgrade Pending information." }, "nextUpgradeTime": { "type": "string", "example": "2020-03-26T09:00:00Z", "description": "Time when the next upgrade is scheduled for the Video Mesh cluster." } } }, "SpecificClusterDetails": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/SpecificClusterDetailsCollection" } } } }, "SpecificClusterDetailsCollection": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/BlrClusterDetails" }, "description": " Details of the cluster." } } }, "TriggeredTestResult": { "type": "object", "properties": { "type": { "type": "string", "example": "MediaHealthMonitorTest", "description": "Test type of the command ID." }, "commandId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "The unique ID for the test being executed." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/TestClustersResult" } } } }, "TestClustersResult": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/Results" } } } }, "Results": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "test_manual", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/NodesResult" } } } }, "NodesResult": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": " Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "abc.company.com", "description": "Host name or IP Address of the Video Mesh node." }, "mhmTestResults": { "type": "array", "items": { "$ref": "#/components/schemas/MHMTestResults" } } } }, "MHMTestResults": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T15:53:00Z", "description": "The timestamp of the test run." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU" }, "testResults": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/MHMTestResult1" }, { "$ref": "#/components/schemas/MHMTestResult2" }, { "$ref": "#/components/schemas/MHMTestResult3" } ] } } } }, "MHMTestResult1": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Signalling" }, "testResult": { "type": "string", "example": "Failed" }, "failureReason": { "type": "string", "example": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." } } }, "MHMTestResult2": { "type": "object", "properties": { "testName": { "type": "string", "example": "Media Cascade" }, "testResult": { "type": "string", "example": "Failed" }, "failureReason": { "type": "string", "example": "An internal error occurred in monitoring tool [Error Code:1003]. If the issue persists, please contact Cisco Support." } } }, "MHMTestResult3": { "type": "object", "properties": { "testName": { "type": "string", "example": "SIP Signalling" }, "testResult": { "type": "string", "example": "Success" } } }, "TriggeredTestStatus1": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "commandId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "The unique ID of the test being executed." }, "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": " Unique ID of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/NodeStatusList1" }, { "$ref": "#/components/schemas/NodeStatusList2" } ] } } } }, "TriggeredTestStatus2": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "commandId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT01NQU5EX0lELzJjM2M5ZjllLTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhYzo2NTJmNmMxMC01NjgxLTExZWQtOTkyZS1kNTY5YzlkMDlhNzU", "description": "The unique ID of the test being executed." }, "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "description": "Unique ID of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/NodeStatusList1" } } } }, "NodeStatusList1": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "status": { "type": "string", "enum": [ "Dispatched", "Completed", "Errored" ], "description": "Status of the test triggered." } } }, "NodeStatusList2": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGU5OTc4Zjk5MDJl", "description": "Unique ID of the Video Mesh node." }, "status": { "type": "string", "enum": [ "Dispatched", "Completed", "Errored" ], "description": "Status of the test triggered." } } }, "TriggerOnDemandBody": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ReachabilityTest", "NetworkTest", "MediaHealthMonitorTest" ], "description": "Test type to trigger on node.\n * `ReachabilityTest` - Used to test whether the media ports within the Video Mesh node are open, and whether the Video Mesh node is able to reach the cloud clusters pertaining to the media containers via those ports.\n * `NetworkTest` - Used to test the network environment of the Video Mesh node by running various connectivity, bandwidth, and DNS resolution tests against Webex Cloud and ThirdParty Cloud (Docker) services.\n * `MediaHealthMonitorTest` - Used to test the meetings and call health of Video Mesh nodes using signalling and cascading methods.\n" } } }, "TriggerOn-DemandBodyCluster": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ReachabilityTest", "NetworkTest", "MediaHealthMonitorTest" ], "description": "Test type to trigger on node.\n * `ReachabilityTest` - Used to test whether the media ports within the Video Mesh node are open, and whether the Video Mesh node is able to reach the cloud clusters pertaining to the media containers via those ports.\n * `NetworkTest` - Used to test the network environment of the Video Mesh node by running various connectivity, bandwidth, and DNS resolution tests against Webex Cloud and ThirdParty Cloud (Docker) services.\n * `MediaHealthMonitorTest` - Used to test the meetings and call health of Video Mesh nodes using signaling and cascading methods.\n" }, "nodes": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGU5OTc4Zjk5MDJk,Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOWUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFjOjE1NmRmNzg5Yzg1NTRhYmNhZGVmZ2U5OTc4Zjk5MDJk" }, "description": "List of nodes to test." } } }, "ConnectivityTestResultsObject": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Network Test data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Network Test data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsClustersObject1" }, "description": "Network test results." } } }, "ConnectivityTestResultsClustersObject1": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/PerClusterConnectivityResult1" }, { "$ref": "#/components/schemas/PerClusterConnectivityResult2" } ] }, "description": "List of Video Mesh clusters." } } }, "ConnectivityTestResultsClustersObject2": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/PerClusterConnectivityResult2" }, "description": "List of Video Mesh clusters." } } }, "ConnectivityTestResultsClustersObject3": { "type": "object", "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/PerClusterConnectivityResult3" }, "description": "List of Video Mesh clusters." } } }, "ConnectivityTestResultsClustersObject": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Network Test data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Network Test data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsClustersObject2" }, "description": "Network test results." } } }, "ConnectivityTestResultsNodesObject": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ=", "description": "Unique ID of the organization." }, "from": { "type": "string", "example": "2023-01-15T15:53:00Z", "description": "Start date and time (inclusive) of the Network Test data." }, "to": { "type": "string", "example": "2023-01-20T15:53:00Z", "description": "End date and time (inclusive) of the Network Test data." }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsClustersObject3" }, "description": "Network test results." } } }, "PerClusterConnectivityResult1": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "sanjose", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/PerNodeConnectivityResult1" }, { "$ref": "#/components/schemas/PerNodeConnectivityResult3" } ] } } } }, "PerClusterConnectivityResult2": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWk=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "shangai", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/PerNodeConnectivityResult2" } } } }, "PerClusterConnectivityResult3": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzJjM2M5Zjk1LTczZDktNDQ2MC1hNjY4LTA0NzE2MmZmMWJhZDpmMWJmMGI1MC0yMDUyLTQ3ZmUtYjg3ZC01MTFjMmZlNzQ3MWI=", "description": "Unique ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "shangai", "description": "Name of the Video Mesh cluster." }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/PerNodeConnectivityResult1" } } } }, "PerNodeConnectivityResult1": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "abc.company.com", "description": "Host name or IP Address of the Video Mesh node." }, "testResults": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsForNode" } } } }, "PerNodeConnectivityResult2": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "def.company.com", "description": "Host name or IP Address of the Video Mesh node." }, "testResults": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsForNode" } } } }, "PerNodeConnectivityResult3": { "type": "object", "properties": { "nodeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DT05ORUNUT1IvMmMzYzlmOTUtNzNkOS00NDYwLWE2NjgtMDQ3MTYyZmYxYmFkOjE1NmRmNzg5Yzg1NTRkNTVhMjc1ZGY5OTc4Zjk5MDJk", "description": "Unique ID of the Video Mesh node." }, "hostNameOrIP": { "type": "string", "example": "xyz.company.com", "description": "Host name or IP Address of the Video Mesh node." }, "testResults": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectivityTestResultsForNode" } } } }, "ConnectivityTestResultsForNode": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-15T15:53:00Z", "description": "The timestamp of the test run." }, "triggerType": { "type": "string", "example": "OnDemand", "description": "The type of the test being executed. Can be either `OnDemand` or `Periodic`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NPTU1BTkRJRC8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY6YWRlODhhNjAtMzk5Mi0xMWVkLTlhYmQtYzUyMjRiZjNjMzQ4", "description": "Unique ID of the test." }, "result": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/DNSResolutionTest" }, { "$ref": "#/components/schemas/WebSocketConnectivityTest" }, { "$ref": "#/components/schemas/HTTPConnectivityTest" }, { "$ref": "#/components/schemas/BandwidthTest" } ] } } } }, "BandwidthTest": { "type": "object", "properties": { "type": { "type": "string", "example": "BandwidthTest", "description": "The type of test result." }, "results": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ServiceTypeResult4" }, { "$ref": "#/components/schemas/ServiceTypeResult2" } ] }, "description": "Test Results from different services." } } }, "WebSocketConnectivityTest": { "type": "object", "properties": { "type": { "type": "string", "example": "WebSocketConnectivityTest", "description": "The type of test result." }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceTypeResult5" }, "description": "Test Results from different services." } } }, "DNSResolutionTest": { "type": "object", "properties": { "type": { "type": "string", "example": "DNSResolutionTest", "description": "The type of test result." }, "results": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ServiceTypeResult1" }, { "$ref": "#/components/schemas/ServiceTypeResult2" } ] }, "description": "Test Results from different services." } } }, "HTTPConnectivityTest": { "type": "object", "properties": { "type": { "type": "string", "example": "HTTPConnectivityTest", "description": "The type of test result." }, "results": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ServiceTypeResult3" }, { "$ref": "#/components/schemas/ServiceTypeResult2" } ] }, "description": "Test Results from different services." } } }, "FailureDetails1": { "type": "object", "properties": { "possibleFailureReason": { "type": "array", "items": { "type": "string", "example": "DNS Resolution issue detected in the Video Mesh Node [Error Code: 1302]." }, "description": "Possible reasons for failure for the test." }, "possibleRemediation": { "type": "array", "items": { "type": "string", "example": "Please ensure that the configured DNS Servers are correct and healthy, and verify the network settings are adhering to the Video Mesh Deployment Guide. If the issue persists, please contact Cisco Support." }, "description": "Possible fixes for the failures mentioned above." } } }, "FailureDetails2": { "type": "object", "properties": { "possibleFailureReason": { "type": "array", "items": { "type": "string", "example": "Connectivity issue detected between the Video Mesh Node and the Webex Cloud [Error Code: 1106]." }, "description": "Possible reasons for failure for the test." }, "possibleRemediation": { "type": "array", "items": { "type": "string", "example": "One or more Webex cloud services may not be responding. Retry the test after some time. If the issue persists, please contact Cisco Support." }, "description": "Possible fixes for the failures mentioned above." } } }, "FailureDetails3": { "type": "object", "properties": { "possibleFailureReason": { "type": "array", "items": { "type": "string", "example": "Degraded Network Bandwidth speed detected in the Video Mesh Node connectivity to the Webex Cloud [Error Code: 1402,1405]." }, "description": "Possible reasons for failure for the test." }, "possibleRemediation": { "type": "array", "items": { "type": "string", "example": "Please refer to Video Mesh deployment guide to ensure the network settings are configured correctly, and the minimum internet speed requirements are met. If the issue persists, please contact Cisco Support." }, "description": "Possible fixes for the failures mentioned above." } } }, "ServiceTypeResult1": { "type": "object", "properties": { "serviceType": { "type": "string", "example": "WebexCloud", "description": "Service for which the test was executed." }, "testResult": { "type": "string", "example": "Failed", "description": "Result of the test executed." }, "failureDetails": { "$ref": "#/components/schemas/FailureDetails1" } } }, "ServiceTypeResult2": { "type": "object", "properties": { "serviceType": { "type": "string", "example": "ThirdPartyCloud", "description": "Service for which the test was executed." }, "testResult": { "type": "string", "example": "Success", "description": "Result of the test executed." } } }, "ServiceTypeResult3": { "type": "object", "properties": { "serviceType": { "type": "string", "example": "WebexCloud", "description": "Service for which test was executed." }, "testResult": { "type": "string", "example": "Failed", "description": "Result of the test executed." }, "failureDetails": { "$ref": "#/components/schemas/FailureDetails2" } } }, "ServiceTypeResult4": { "type": "object", "properties": { "serviceType": { "type": "string", "example": "WebexCloud", "description": "Service for which the test was executed." }, "testResult": { "type": "string", "example": "Failed", "description": "Result of the test executed." }, "failureDetails": { "$ref": "#/components/schemas/FailureDetails3" } } }, "ServiceTypeResult5": { "type": "object", "properties": { "serviceType": { "type": "string", "example": "WebexCloud", "description": "Service for which the test was executed." }, "testResult": { "type": "string", "example": "Success", "description": "Result of the test executed." } } }, "ClienttypedistributionforOrg": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClienttypedistributionCollectionforOrg" } } } }, "ClienttypedistributionCollectionforOrg": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) for the Client Type Distribution details." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the Client Type Distribution details." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClientTypeDistributionTrend1" }, { "$ref": "#/components/schemas/ClientTypeDistributionTrend2" } ] }, "description": "Client Type Distribution details for the organization." } } }, "ClientTypeDistributionTrend1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterClientTypeDistributionBlr1" }, { "$ref": "#/components/schemas/ClusterClientTypeDistributionSJ1" } ] } } } }, "ClientTypeDistributionTrend2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterClientTypeDistributionBlr2" }, { "$ref": "#/components/schemas/ClusterClientTypeDistributionSJ2" } ] } } } }, "ClusterClientTypeDistributionBlr1": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "Bangalore", "description": "Name of the Video Mesh cluster." }, "clientTypeDistributionDetails": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClusterClientTypeDistributionDetailsBlr1a" }, { "$ref": "#/components/schemas/ClusterClientTypeDistributionDetailsBlr1b" } ] }, "description": "Client Type Distribution Details." } } }, "ClusterClientTypeDistributionBlr2": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOWZkOTg", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "Bangalore", "description": "Name of the Video Mesh cluster." }, "clientTypeDistributionDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterClientTypeDistributionDetailsBlr2" }, "description": "Client Type Distribution Details." } } }, "ClusterClientTypeDistributionSJ1": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "clientTypeDistributionDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterClientTypeDistributionDetailsSJ1" }, "description": "Client Type Distribution Details." } } }, "ClusterClientTypeDistributionSJ2": { "type": "object", "properties": { "clusterId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzM2ZDg5NGY3LTJiNTctNDNjMS1hY2VlLWQ0N2U2Nzc2MTQxNDo1ODJhMWFlYy03YTMwLTQ2MDItYTI2NS02YTE5NDcwOTEyMzQ=", "description": "ID of the Video Mesh cluster." }, "clusterName": { "type": "string", "example": "San Jose", "description": "Name of the Video Mesh cluster." }, "clientTypeDistributionDetails": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterClientTypeDistributionDetailsSJ2" }, "description": "Client Type Distribution Details." } } }, "ClusterClientTypeDistributionDetailsBlr1a": { "type": "object", "properties": { "deviceType": { "type": "string", "example": "sipEndpoint", "description": "The type of device." }, "description": { "type": "string", "example": "SIP Devices", "description": "The description of the device type." }, "count": { "type": "number", "example": 10, "description": " The count of the device type." } } }, "ClusterClientTypeDistributionDetailsBlr1b": { "type": "object", "properties": { "deviceType": { "type": "string", "example": "webexAppVdi", "description": "The type of device." }, "description": { "type": "string", "example": "Webex App VDI", "description": "The description of the device type." }, "count": { "type": "number", "example": 78, "description": " The count of the device type." } } }, "ClusterClientTypeDistributionDetailsBlr2": { "type": "object", "properties": { "deviceType": { "type": "string", "example": "webexForMobile", "description": "The type of device." }, "description": { "type": "string", "example": "Webex App Mobile", "description": "The description of the device type." }, "count": { "type": "number", "example": 4, "description": "The count of the device type." } } }, "ClusterClientTypeDistributionDetailsSJ1": { "type": "object", "properties": { "deviceType": { "type": "string", "example": "webexForDesktop", "description": "The type of device." }, "description": { "type": "string", "example": "Webex App Desktop", "description": "The description of the device type." }, "count": { "type": "number", "example": 26, "description": "The count of the device type." } } }, "ClusterClientTypeDistributionDetailsSJ2": { "type": "object", "properties": { "deviceType": { "type": "string", "example": "webexDevices", "description": "The type of device." }, "description": { "type": "string", "example": "Webex Devices", "description": "The description of the device type." }, "count": { "type": "number", "example": 47, "description": "The count of the device type." } } }, "ClientTypeDistributionForCluster": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ClientTypeDistributionCollectionForCluster" } } } }, "ClientTypeDistributionCollectionForCluster": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNmQ4OTRmNy0yYjU3LTQzYzEtYWNlZS1kNDdlNjc3NjE0MTQ", "description": "The unique ID for the organization." }, "from": { "type": "string", "example": "2022-03-23T10:22:03Z", "description": "Start date and time (inclusive) for the Client Type Distribution details." }, "to": { "type": "string", "example": "2022-03-24T10:22:03Z", "description": "End date and time (inclusive) of the Client Type Distribution details." }, "aggregationInterval": { "type": "string", "example": "10m", "description": "The aggregation period of the trend data." }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/ClientTypeDistributionTrendForCluster1" }, { "$ref": "#/components/schemas/ClientTypeDistributionTrendForCluster2" } ] }, "description": "Client Type Distribution details for the organization." } } }, "ClientTypeDistributionTrendForCluster1": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:30:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterClientTypeDistributionBlr1" } } } }, "ClientTypeDistributionTrendForCluster2": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2022-03-23T10:40:00Z", "description": "Timestamp." }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterClientTypeDistributionBlr2" } } } }, "UpdateEventThresholdConfig1": { "type": "object", "properties": { "minThreshold": { "type": "number", "example": 40, "description": "Threshold value (in percentage) to trigger an event." }, "defaultMinThreshold": { "type": "number", "example": 10, "description": "Deafault Threshold value (in percentage) to trigger an event." } } }, "UpdateEventThresholdConfig2": { "type": "object", "properties": { "minThreshold": { "type": "number", "example": 60, "description": "Threshold value (in percentage) to trigger an event." }, "defaultMinThreshold": { "type": "number", "example": 10, "description": "Deafault Threshold value (in percentage) to trigger an event." } } }, "GetEventThresholdResponse": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "description": "Unique ID of the organization." }, "eventThresholds": { "type": "array", "items": { "$ref": "#/components/schemas/GetEntityThresholdConfig1" } } } }, "ListEventThresholdResponse": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "description": "Unique ID of the organization." }, "eventThresholds": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/GetEntityThresholdConfig1" }, { "$ref": "#/components/schemas/GetEntityThresholdConfig2" } ] } } } }, "GetEntityThresholdConfig1": { "type": "object", "properties": { "eventName": { "type": "string", "example": "clusterCallsRedirected", "description": "Name of the event." }, "eventThresholdId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "description": "Unique ID of the event threshold configuration." }, "eventScope": { "type": "string", "example": "CLUSTER", "description": "The `eventScope` is scope of event." }, "entityId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "description": "The `entityId` is the unique ID of the Organization or the unique ID of the Video Mesh Cluster." }, "thresholdConfig": { "$ref": "#/components/schemas/EventThresholdConfig1", "description": "Threshold configuration of an `entityId`." } } }, "EventThresholdConfig1": { "type": "object", "properties": { "minThreshold": { "type": "number", "example": 10, "description": "Threshold value (in percentage) to trigger an event." }, "defaultMinThreshold": { "type": "number", "example": 10, "description": "Deafault Threshold value (in percentage) to trigger an event." } } }, "GetEntityThresholdConfig2": { "type": "object", "properties": { "eventName": { "type": "string", "example": "orgCallsOverflowed", "description": "Name of the event." }, "eventThresholdId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg", "description": "Unique ID of the event threshold configuration." }, "eventScope": { "type": "string", "example": "ORG", "description": "The `eventScope` is scope of event." }, "entityId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "description": "The `entityId` is the unique ID of the Organization or the unique ID of the Video Mesh Cluster." }, "thresholdConfig": { "$ref": "#/components/schemas/EventThresholdConfig2", "description": "Threshold configuration of an `entityId`." } } }, "EventThresholdConfig2": { "type": "object", "properties": { "minThreshold": { "type": "number", "example": 10, "description": "Threshold value (in percentage) to trigger an event." }, "defaultMinThreshold": { "type": "number", "example": 10, "description": "Deafault Threshold value (in percentage) to trigger an event. " } } }, "BulkUpdateEventThresholdResponse": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "description": "Unique ID of the organization." }, "eventThresholds": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateEventThresholdResponse1" }, "description": "List of successful updated response" }, "failedEventThresholdIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg" }, "description": "List of failed or invalid event threshold IDs." } } }, "UpdateEventThresholdResponse1": { "type": "object", "properties": { "eventName": { "type": "string", "example": "clusterCallsRedirected", "description": "Name of the event." }, "eventThresholdId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3Zjo2YzJhZGRmMS0wYjAzLTRiZWEtYjIxYy0xYzFjYzdiY2UwOWQ", "description": "Unique ID of the event threshold configuration." }, "eventScope": { "type": "string", "example": "CLUSTER", "description": "The `eventScope` is scope of event." }, "entityId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hZQlJJRF9DTFVTVEVSLzRiNTk5NzkwLWVlMzctMTFlZC1hMDViLTAyNDJhYzEyMDAwMzo2NjMxOTMyNC1lZTM3LTExZWQtYTA1Yi0wMjQyYWMxMjAwMDM", "description": "The `entityId` is the unique ID of the Organization or the unique ID of the Video Mesh Cluster." }, "thresholdConfig": { "$ref": "#/components/schemas/UpdateEventThresholdConfig1", "description": "Threshold configuration of an `entityId`." } } }, "UpdateEventThresholdResponse2": { "type": "object", "properties": { "eventName": { "type": "string", "example": "orgCallsOverflowed", "description": "Name of the event." }, "eventThresholdId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg", "description": "Unique ID of the event threshold configuration." }, "eventScope": { "type": "string", "example": "ORG", "description": "The `eventScope` is scope of event." }, "entityId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg", "description": "The `entityId` is the unique ID of the Organization or the unique ID of the Video Mesh Cluster." }, "thresholdConfig": { "$ref": "#/components/schemas/UpdateEventThresholdConfig2", "description": "Threshold configuration of an `entityId`." } } }, "EventThresholdBody": { "type": "object", "properties": { "eventName": { "type": "string", "enum": [ "clusterCallsRedirected", "orgCallsOverflowed" ], "description": "The name of the event corresponding to the `entitiyId`.\n * `clusterCallsRedirected` - Event name for cluster call redirects.\n * `orgCallsOverflowed` - Event name for organization call overflows.\n" } } }, "ResetEventThresholdResponse": { "type": "object", "properties": { "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yYzNjOWY5NS03M2Q5LTQ0NjAtYTY2OC0wNDcxNjJmZjFiYWQ", "description": "Unique ID of the organization." }, "eventThresholds": { "type": "array", "items": { "$ref": "#/components/schemas/GetEntityThresholdConfig1" }, "description": "List of successful updated responses." }, "failedEventThresholdIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0VWRU5ULzQyN2U5ZTk2LTczYTctNDYwYS04MGZhLTcyNWU4MWE2MDg3ZjowM2ZkYjkzZC1jNTllLTQzMjQtODIwNS1lNDIyYzA3NGQ5Mzg" }, "description": "List of failed or invalid event threshold IDs." } } } }, "securitySchemes": { "oauth2": { "flows": { "authorizationCode": { "authorizationUrl": "/", "scopes": {}, "tokenUrl": "/" } }, "type": "oauth2" }, "bearer-key": { "type": "http", "description": "e.g. Bearer YOUR_AUTHORIZATION_TOKEN", "scheme": "bearer", "bearerFormat": "JWT" } }, "parameters": {}, "responses": {}, "requestBodies": {} } }