{ "openapi": "3.0.0", "info": { "title": "Webex Cloud Calling", "version": "1.0.0", "description": "The Webex Cloud Calling APIs enable comprehensive management of cloud-based calling services, including user provisioning, device assignment, call routing, feature configuration, and number management. These APIs facilitate integration with enterprise directories, automation of telephony workflows, and centralized management of global calling infrastructure. Use cases include automated onboarding, self-service portals, integration with CRM/ERP systems, and real-time monitoring of call quality and usage." }, "tags": [ { "name": "External Voicemail", "description": "Operations related to external voicemail Message Waiting Indicator (MWI) status." }, { "name": "User Call Settings (2/2)", "description": "APIs for managing user call settings including music on hold, access codes, transfer numbers, digit patterns, and more." } ], "paths": { "/telephony/config/locations/{locationId}/dectNetworks": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "dectNetworkId" ], "properties": { "dectNetworkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf", "description": "A unique identifier for the DECT network." } } }, "example": { "dectNetworkId": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf" } } } }, "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 DECT Network", "operationId": "Create a DECT Network", "description": "Create a multi-cell DECT network for a given location.\n\nCreating a DECT network requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create a DECT network in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create a DECT network in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "test-dect", "displayName": "test-dect", "model": "DMS Cisco DBS210", "defaultAccessCodeEnabled": true, "defaultAccessCode": "1551" }, "schema": { "$ref": "#/components/schemas/CreateDECTNetwork" } } } } } }, "/telephony/config/dectNetworks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTNetworkList" }, "example": { "dectNetworks": [ { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "Demo-DectNetwork", "displayName": "Demo-DectNetwork", "chainId": 1224, "model": "DMS Cisco DBS210", "defaultAccessCodeEnabled": true, "defaultAccessCode": "1234", "numberOfBaseStations": 2, "numberOfHandsetsAssigned": 5, "numberOfLines": 2, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Cisco-HQ" } } ] } } } }, "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 the List of DECT Networks for an organization", "operationId": "Get the List of DECT Networks for an organization", "description": "Retrieves the list of DECT networks for an organization.\n\nDECT Networks provide roaming voice services via base stations and wireless handsets. A DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List of DECT networks in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "List of DECT networks with this name.", "example": "Training-DectNetwork", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "List of DECT networks at this location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTNetworkDetail" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "Demo-DectNetwork", "displayName": "Demo-DectNetwork", "chainId": 122456789, "model": "DMS Cisco DBS210", "defaultAccessCodeEnabled": true, "defaultAccessCode": "1234", "numberOfBaseStations": 2, "numberOfHandsetsAssigned": 5, "numberOfLines": 2, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Cisco-HQ" } } } } }, "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 DECT Network Details", "operationId": "Get DECT Network Details", "description": "Retrieves the details of a DECT network.\n\nDECT Networks provide roaming voice services via base stations and wireless handsets. A DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Details of the DECT network at this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Details of the specified DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Details of the DECT network in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 DECT Network", "operationId": "Update DECT Network", "description": "Update the details of a DECT network.\n\nDECT Networks provide roaming voice services via base stations and wireless handsets. A DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update DECT network details in the specified location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Update DECT network details in the specified DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update DECT network details in the specified organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Demo-DectNetwork", "displayName": "Demo-DectNetwork", "defaultAccessCodeEnabled": true, "defaultAccessCode": 1234 }, "schema": { "$ref": "#/components/schemas/DECTNetworkPatch" } } } } }, "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 DECT Network", "operationId": "Delete DECT Network", "description": "Delete a DECT network.\n\nDECT Networks provide roaming voice services via base stations and wireless handsets. A DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete the DECT network in the specified location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Delete the specified DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the DECT network in the specified organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/baseStations": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseStationsPostResponse" }, "example": { "baseStations": [ { "mac": "bbafec9a9027", "result": { "status": 201, "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj" } } ] } } } }, "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 Multiple Base Stations", "operationId": "Create Multiple Base Stations", "description": "This API is used to create multiple base stations in a DECT network in an organization.\n\nCreating base stations in a DECT network requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create a base station in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Create a base station for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create a base station for a DECT network in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "baseStationMacs": [ "bbafec9a9027", "6dde9ebde1c9" ] }, "schema": { "type": "object", "required": [ "baseStationMacs" ], "properties": { "baseStationMacs": { "type": "array", "items": { "type": "string" }, "description": "Array of base station MAC addresses." } } } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseStationsListResponse" }, "example": { "baseStations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYWJjZDEyMzQtMzU2NC00MGMzLWE3YWQtNTY1MGZkZGRkNTOU", "mac": "ABCD12555555", "numberOfLinesRegistered": 2 } ] } } } }, "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 list of DECT Network Base Stations", "operationId": "Get a list of DECT Network Base Stations", "description": "Retrieve a list of base stations in a DECT Network.\n\nA DECT network supports 2 types of base stations, DECT DBS-110 Single-Cell and DECT DBS-210 Multi-Cell.\nA DECT DBS-110 allows up to 30 lines of registration and supports 1 base station only. A DECT DBS-210 can have up to 254 base stations and supports up to 1000 lines of registration.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Retrieve the list of base stations in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "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 bulk DECT Network Base Stations", "operationId": "Delete bulk DECT Network Base Stations", "description": "Delete all the base stations in the DECT Network.\n\nA DECT network supports 2 types of base stations, DECT DBS-110 Single-Cell and DECT DBS-210 Multi-Cell.\nA DECT DBS-110 allows up to 30 lines of registration and supports 1 base station only. A DECT DBS-210 can have up to 254 base stations and supports up to 1000 lines of registration.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Delete all the base stations in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/baseStations/{baseStationId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseStationDetailResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5RG", "mac": "ABBD45856978", "handsets": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5PO", "displayName": "Inventory-handset-1", "accessCode": "1555", "lines": [ { "memberId": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5IU", "firstName": "John", "lastName": "Smith", "external": "+12555533333", "extension": "1551", "location": { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5LK", "name": "Cisco-HQ" }, "memberType": "PLACE" } ] } ] } } } }, "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 the details of a specific DECT Network Base Station", "operationId": "Get the details of a specific DECT Network Base Station", "description": "Retrieve details of a specific base station in the DECT Network.\n\nA DECT network supports 2 types of base stations, DECT DBS-110 Single-Cell and DECT DBS-210 Multi-Cell.\nA DECT DBS-110 allows up to 30 lines of registration and supports 1 base station only. A DECT DBS-210 can have up to 254 base stations and supports up to 1000 lines of registration.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Retrieve details of a specific base station in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "baseStationId", "in": "path", "description": "Retrieve details of the specific DECT base station ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "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 specific DECT Network Base Station", "operationId": "Delete a specific DECT Network Base Station", "description": "Delete a specific base station in the DECT Network.\n\nA DECT network supports 2 types of base stations, DECT DBS-110 Single-Cell and DECT DBS-210 Multi-Cell.\nA DECT DBS-110 allows up to 30 lines of registration and supports 1 base station only. A DECT DBS-210 can have up to 254 base stations and supports up to 1000 lines of registration.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Delete a specific base station in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "baseStationId", "in": "path", "description": "Delete the specific DECT base station ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/handsets": { "post": { "responses": { "201": { "description": "Created", "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": "Add a Handset to a DECT Network", "operationId": "Add a Handset to a DECT Network", "description": "Add a handset to a DECT network in a location in an organization.\n\nAdding a handset to a DECT network requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
Adding a DECT handset to a person with a Webex Calling Standard license will disable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.
\n\n
Adding or removing handsets to the DECT network in less than 90 seconds may result in base station not having the latest configuration until the base station is rebooted.
", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Add handset in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "A unique identifier for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Add handset in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "line1MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "line2MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "customDisplayName": "handsetName" }, "schema": { "$ref": "#/components/schemas/AddDECTHandset" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTHandsetList" }, "example": { "numberOfHandsetsAssigned": 1, "numberOfLinesAssigned": 1, "handsets": [ { "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "index": "1", "defaultDisplayName": "Demo_Handset", "customDisplayName": "Demo_Handset", "accessCode": "4788", "primaryEnabled": "", "lines": [ { "memberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "John", "lastName": "Smith", "external": "+14088571272", "extension": "3459", "routingPrefix": "17636", "esn": "176363459", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice" }, "memberType": "PEOPLE" } ] } ] } } } }, "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 List of Handsets for a DECT Network ID", "operationId": "Get List of Handsets for a DECT Network ID", "description": "List all the handsets associated with a DECT Network ID.\n\nA handset can have up to two lines, and a DECT network supports a total of 120 lines across all handsets.\nA member on line1 of a DECT handset can be of type PEOPLE or PLACE while a member on line2 of a DECT handset can be of type PEOPLE, PLACE, or VIRTUAL_LINE.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OAss", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Search handset details in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "basestationId", "in": "query", "description": "Search handset details in the specified DECT base station ID.", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "schema": { "type": "string" } }, { "name": "memberId", "in": "query", "description": "ID of the member of the handset. Members can be of type PEOPLE, PLACE, or VIRTUAL_LINE.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/handsets/{handsetId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTHandsetGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "index": "1", "customDisplayName": "Demo_Handset", "defaultDisplayName": "Demo_Handset", "baseStationId": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "mac": "1357D4A1B492", "accessCode": "4788", "lines": [ { "memberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "John", "lastName": "Smith", "external": "+14088571272", "extension": "3459", "lastRegistrationTime": "1611229671234", "hostIP": "10.0.0.45", "remoteIP": "76.102.12.84", "location": { "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "name": "MainOffice" }, "memberType": "PEOPLE" } ] } } } }, "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 Specific DECT Network Handset Details", "operationId": "Get Specific DECT Network Handset Details", "description": "List the specific DECT Network handset details.\n\nA handset can have up to two lines, and a DECT network supports a total of 120 lines across all handsets.\nA member on line1 of a DECT handset can be of type PEOPLE or PLACE while a member on line2 of a DECT handset can be of type PEOPLE, PLACE, or VIRTUAL_LINE.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Search handset details in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk", "schema": { "type": "string" } }, { "name": "handsetId", "in": "path", "description": "A unique identifier for the handset.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 DECT Network Handset", "operationId": "Update DECT Network Handset", "description": "Update the line assignment on a handset.\n\nA handset can have up to two lines, and a DECT network supports a total of 120 lines across all handsets.\nA member on line1 of a DECT handset can be of type PEOPLE or PLACE while a member on line2 of a DECT handset can be of type PEOPLE, PLACE, or VIRTUAL_LINE.\n\nUpdating a DECT Network handset requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
Adding a person with a Webex Calling Standard license to the DECT handset line1 will disable Webex Calling across their Webex mobile, tablet, desktop, and browser applications. \nRemoving a person with a Webex Calling Standard license from the DECT handset line1 will enable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.
\n\n
Adding or removing handsets to the DECT network in less than 90 seconds may result in base station not having the latest configuration until the base station is rebooted.
", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Update handset details in the specified DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "handsetId", "in": "path", "description": "A unique identifier for the handset.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "line1MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMlm", "line2MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "customDisplayName": "handsetDisplayName" }, "schema": { "$ref": "#/components/schemas/DECTNetworkHandsetPatch" } } } } }, "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 specific DECT Network Handset Details", "operationId": "Delete specific DECT Network Handset Details", "description": "Delete a specific DECT Network handset.\n\nA handset can have up to two lines, and a DECT network supports a total of 120 lines across all handsets.\nA member on line1 of a DECT handset can be of type PEOPLE or PLACE while a member on line2 of a DECT handset can be of type PEOPLE, PLACE, or VIRTUAL_LINE.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
Deleting a DECT handset from a person with a Webex Calling Standard license will enable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.
\n\n
Adding or removing handsets to the DECT network in less than 90 seconds may result in base station not having the latest configuration until the base station is rebooted.
", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Delete handset details in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "handsetId", "in": "path", "description": "A unique identifier for the handset.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/handsets/": { "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 multiple handsets", "operationId": "Delete multiple handsets", "description": "Delete multiple handsets or all of them.\n\nA handset can have up to two lines, and a DECT network supports a total of 120 lines across all handsets.\nA member on line1 of a DECT handset can be of type PEOPLE or PLACE while a member on line2 of a DECT handset can be of type PEOPLE, PLACE, or VIRTUAL_LINE.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
Deleting a DECT handset from a person with a Webex Calling Standard license will enable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.
\n\n
Adding or removing handsets to the DECT network in less than 90 seconds may result in base station not having the latest configuration until the base station is rebooted.
", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location containing the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Delete handset details in the specified DECT network ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization containing the DECT network.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "handsetIds": [ "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYjVhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNQ" ], "deleteAll": "true" }, "schema": { "$ref": "#/components/schemas/DECTNetworkHandsetsDeleteItem" } } } } } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/handsets/bulk": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AddDECTHandsetBulkSuccessResponse" }, "description": "List of added handsets." } } }, "example": { "items": [ { "customDisplayName": "handsetName1", "result": { "status": 200 } }, { "customDisplayName": "handsetName2", "result": { "status": 200 } } ] } } } }, "206": { "description": "Partial Content", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AddDECTHandsetBulkPartialResponse" }, "description": "List of added handsets." } } }, "example": { "items": [ { "customDisplayName": "handsetName1", "result": { "status": 200 } }, { "customDisplayName": "handsetName2", "result": { "status": 400, "error": { "message": "[Error 4516] Cannot assign user to device: {0} with line/Port: {1}", "errorCode": 4516 } } } ] } } } }, "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": "Add a List of Handsets to a DECT Network", "operationId": "Add a List of Handsets to a DECT Network", "description": "Add a list of up to 50 handsets to a DECT network in a location.\n\nA DECT network acts as a container that can support up to 1,000 lines across all handsets, with each handset capable of handling up to two lines. Once the network is created, you can add bases, handsets, and assign users or lines as needed.\n\nAdding a list of handsets to a DECT network requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
Adding a DECT handset to a person with a Webex Calling Standard license will disable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.\n\n
\n\n
Adding or removing handsets to the DECT network in less than 90 seconds may result in base station not having the latest configuration until the base station is rebooted.
", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Add handsets in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "A unique identifier for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Add handsets in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "items": [ { "line1MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "line2MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMjExMWFhZi1kNTFlLTRkNTMtODlhNS00NTcwNzQ1NGYyYWY", "customDisplayName": "handsetName1" }, { "line1MemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzNlZDRmYi05MzJiLTQyOTYtODMxNC1iZWY1ZmRlNGRmYjM", "customDisplayName": "handsetName2" } ] }, "schema": { "$ref": "#/components/schemas/AddDECTHandsetBulkRequest" } } } } } }, "/telephony/config/people/{personId}/dectNetworks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTNetworkListPerson" }, "example": { "dectNetworks": [ { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "Demo-DectNetwork", "numberOfHandsetsAssigned": 5 } ] } } } }, "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 List of DECT networks associated with a Person", "operationId": "GET List of DECT networks associated with a Person", "description": "Retrieves the list of DECT networks for a person in an organization.\n\nDECT Network provides roaming voice services via base stations and wireless handsets. DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "List of DECT networks associated with this person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List of DECT networks associated with a person in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/dectNetworks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTNetworkListWorkspace" }, "example": { "dectNetworks": [ { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "Demo-DectNetwork", "numberOfHandsetsAssigned": 5 } ] } } } }, "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 List of DECT networks associated with a workspace", "operationId": "GET List of DECT networks associated with a workspace", "description": "Retrieves the list of DECT networks for a workspace in an organization.\n\nDECT Network provides roaming voice services via base stations and wireless handsets. DECT network can be provisioned up to 1000 lines across up to 254 base stations.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "List of DECT networks associated with this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List of DECT networks associated with a workspace in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/availableMembers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableMembersResponse" }, "example": { "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "John", "lastName": "Smith", "phoneNumber": "+12055552221", "extension": "1234", "lineType": "PRIMARY", "memberType": "PEOPLE", "location": { "id": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "name": "MainOffice" } } ] } } } }, "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": "Search Available Members", "operationId": "Search Available Members", "description": "List the members that are available to be assigned to DECT handset lines.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Search members in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": "100", "schema": { "type": "number", "default": 2000 } }, { "name": "memberName", "in": "query", "description": "Search (Contains) numbers based on member name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search (Contains) based on number.", "example": "+19828282867", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search (Contains) based on extension.", "example": "1234", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort the list of available members on the device in ascending order by name, using either last name `lname` or first name `fname`. Default sort is the last name in ascending order.", "example": "lname", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "List members for the location ID.", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrk", "schema": { "type": "string" } }, { "name": "excludeVirtualLine", "in": "query", "description": "If true, search results will exclude virtual lines in the member list. NOTE: Virtual lines cannot be assigned as the primary line.", "example": "true", "schema": { "type": "boolean" } }, { "name": "usageType", "in": "query", "description": "Search for members eligible to become the owner of the device, or share line on the device.", "example": "SHARED_LINE", "schema": { "type": "string", "enum": [ "DEVICE_OWNER", "SHARED_LINE" ] } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/serviceabilityPassword/actions/generate/invoke": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PostDECTServiceabilityPasswordResponse" }, "example": { "password": "?i@9$?F)iR?rHNsu" } } } }, "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": "Generate and Enable DECT Serviceability Password", "operationId": "Generate and Enable DECT Serviceability Password", "description": "Generates and enables a 16-character DECT serviceability password.\n\n
Generating a password and transmitting it to the DECT network can reboot the entire network. Be sure you choose an appropriate time to generate a new password.
\n\nThe DECT serviceability password, also known as the admin override password, provides read/write access to DECT base stations for performing system serviceability and troubleshooting functions.\n\nThis API requires either a full administrator auth token with the scope `spark-admin:telephony_config_write`, or a device administrator token with the scope of `spark-admin:devices_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Unique identifier for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/dectNetworks/{dectNetworkId}/serviceabilityPassword": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DECTServiceabilityPassword" }, "example": { "enabled": "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 DECT Serviceability Password status", "operationId": "Get DECT Serviceability Password status", "description": "Retrieves the DECT serviceability password status.\n\n
If the serviceability password is enabled but has not been generated, the `enabled` status will be returned as `true` even though there is no active serviceability password.
\n\nThe DECT serviceability password, also known as the admin override password, provides read/write access to DECT base stations for performing system serviceability and troubleshooting functions.\n\nThis API requires an auth token with either a full, read-only token with the scope of `spark-admin:telephony_config_read`, or a device administrator token with the scope of `spark-admin:devices_read`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Unique identifier for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 DECT Serviceability Password status", "operationId": "Update DECT Serviceability Password status", "description": "Enables or disables the DECT serviceability password.\n\n
Enabling or disabling the password and transmitting it to the DECT network can reboot the entire network. Be sure you choose an appropriate time for this action.
\n\n
If enabling is requested, but the serviceability password has not been generated, we will not actively reject the request even though there is no serviceability password.
\n\nThe DECT serviceability password, also known as the admin override password, provides read/write access to DECT base stations for performing system serviceability and troubleshooting functions.\n\nThis API requires either a full administrator auth token with the scope `spark-admin:telephony_config_write`, or a device administrator token with the scope of `spark-admin:devices_write`.", "tags": [ "DECT Devices Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "dectNetworkId", "in": "path", "description": "Unique identifier for the DECT network.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC9iNWNhZWVkMi0yYTJlLTQ0NTQtYjU3Yy1jMWFhMTk4MTBiMDk=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": "true" }, "schema": { "$ref": "#/components/schemas/DECTServiceabilityPassword" } } } } } }, "/telephony/calls/dial": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for the same call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Dial", "operationId": "dial", "description": "Initiate an outbound call to a specified destination. This is also commonly referred to as Click to Call or Click to Dial. Alerts occur on all the devices belonging to a user unless an optional endpointId is specified in which case only the device or application identified by the endpointId is alerted. When a user answers an alerting device, an outbound call is placed from that device to the destination.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "destination": "+12223334444", "endpointId": "Y2lzY29z...", "singleNumberReachPhoneNumber": "+12223334444", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "destination" ], "properties": { "destination": { "type": "string", "example": "+12223334444", "description": "The destination to be dialed. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `*73`, `tel:+12223334444`, `user@company.domain`, and `sip:user@company.domain`." }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the call. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint). Mutually exclusive with `singleNumberReachPhoneNumber`." }, "singleNumberReachPhoneNumber": { "type": "string", "example": "+12223334444", "description": "The Single Number Reach phone number to use for the call. Mutually exclusive with `endpointId`." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/answer": { "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": "Answer", "operationId": "answer", "description": "Answer an incoming call. When no endpointId is specified, the call is answered on the user's primary device. When an endpointId is specified, the call is answered on the device or application identified by the endpointId. The answer API is rejected if the device is not alerting for the call or the device does not support answer via API.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "endpointId": "Y2lzY29z...", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to be answered." }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to answer the call on. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint)." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/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": "Reject", "operationId": "reject", "description": "Reject an unanswered incoming call.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "action": "busy", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to be rejected." }, "action": { "allOf": [ { "$ref": "#/components/schemas/RejectActionEnum" } ], "description": "The rejection action to apply to the call. The busy action is applied if no specific action is provided." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/hangup": { "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": "Hangup", "operationId": "hangup", "description": "Hangup a call. If used on an unanswered incoming call, the call is rejected and sent to busy.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to hangup." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/hold": { "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": "Hold", "operationId": "hold", "description": "Hold a connected call.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to hold." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/resume": { "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": "Resume", "operationId": "resume", "description": "Resume a held call.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to resume." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/mute": { "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": "Mute", "operationId": "mute", "description": "Mute a call. This API can only be used for a call that reports itself as mute capable via the muteCapable field in the call details.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to mute." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/unmute": { "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": "Unmute", "operationId": "unmute", "description": "Unmute a call. This API can only be used for a call that reports itself as mute capable via the muteCapable field in the call details.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to unmute." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/divert": { "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": "Divert", "operationId": "divert", "description": "Divert a call to a destination or a user's voicemail. This is also commonly referred to as a Blind Transfer.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "destination": "+12223334444", "toVoicemail": false, "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to divert." }, "destination": { "type": "string", "example": "+12223334444", "description": "The destination to divert the call to. If toVoicemail is false, destination is required. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `*73`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`" }, "toVoicemail": { "type": "boolean", "description": "If set to true, the call is diverted to voicemail. If no destination is specified, the call is diverted to the user's own voicemail. If a destination is specified, the call is diverted to the specified user's voicemail." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/transfer": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call to the destination which is used in all subsequent commands for this call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Transfer", "operationId": "transfer", "description": "Transfer two calls together.\n\nUnanswered incoming calls cannot be transferred but can be diverted using the divert API.\n\nIf the user has only two calls and wants to transfer them together, the `callId1` and `callId2` parameters are optional and when not provided the calls are automatically selected and transferred.\n\nIf the user has more than two calls and wants to transfer two of them together, the `callId1` and `callId2` parameters are mandatory to specify which calls are being transferred. Those are also commonly referred to as Attended Transfer, Consultative Transfer, or Supervised Transfer and will return a `204` response.\n\nIf the user wants to transfer one call to a new destination but only when the destination responds, the `callId1` and destination parameters are mandatory to specify the call being transferred and the destination.\n\nThis is referred to as a Mute Transfer and is similar to the divert API with the difference of waiting for the destination to respond prior to transferring the call. If the destination does not respond, the call is not transferred. This will return a `201` response.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId1": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callId2": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MB", "destination": "+12223334444", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId1": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the first call to transfer. This parameter is mandatory if either `callId2` or `destination` is provided." }, "callId2": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MB", "description": "The call identifier of the second call to transfer. This parameter is mandatory if `callId1` is provided and `destination` is not provided." }, "destination": { "type": "string", "example": "+12223334444", "description": "The destination to be transferred to. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`. This parameter is mandatory if `callId1` is provided and `callId2` is not provided." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/park": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "parkedAgainst" ], "properties": { "parkedAgainst": { "allOf": [ { "$ref": "#/components/schemas/PartyInformation" } ], "description": "The details of where the call has been parked." } }, "example": { "parkedAgainst": { "privacyEnabled": false, "callType": "location" } } }, "example": { "parkedAgainst": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } } } } }, "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": "Park", "operationId": "park", "description": "Park a connected call. The number field in the response can be used as the destination for the retrieve command to retrieve the parked call.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "destination": "1000", "isGroupPark": false, "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to park." }, "destination": { "type": "string", "example": "1000", "description": "Identifes where the call is to be parked. If not provided, the call is parked against the parking user. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `*73`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`" }, "isGroupPark": { "type": "boolean", "description": "If set to`true`, the call is parked against an automatically selected member of the user's call park group and the destination parameter is ignored." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/retrieve": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for this call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Retrieve", "operationId": "retrieve", "description": "Retrieve a parked call. A new call is initiated to perform the retrieval in a similar manner to the dial command. The number field from the park command response can be used as the destination for the retrieve command.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "destination": "1000", "endpointId": "Y2lzY29z...", "singleNumberReachPhoneNumber": "+12223334444", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "properties": { "destination": { "type": "string", "example": "1000", "description": "Identifies where the call is parked. The number field from the park command response can be used as the destination for the retrieve command. If not provided, the call parked against the retrieving user is retrieved. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `*73`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`" }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the retrieval. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint). Mutually exclusive with `singleNumberReachPhoneNumber`." }, "singleNumberReachPhoneNumber": { "type": "string", "example": "+12223334444", "description": "The Single Number Reach phone number to use for the retrieval. Mutually exclusive with `endpointId`." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...Y", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/startRecording": { "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": "Start Recording", "operationId": "startrecording", "description": "Start recording a call. Use of this API is only valid when the user's call recording mode is set to \"On Demand\".", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to start recording." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/stopRecording": { "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": "Stop Recording", "operationId": "stoprecording", "description": "Stop recording a call. Use of this API is only valid when a call is being recorded and the user's call recording mode is set to \"On Demand\".", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to stop recording." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/pauseRecording": { "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": "Pause Recording", "operationId": "pauserecording", "description": "Pause recording on a call. Use of this API is only valid when a call is being recorded and the user's call recording mode is set to \"On Demand\" or \"Always with Pause/Resume\".", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to pause recording." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/resumeRecording": { "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": "Resume Recording", "operationId": "resumerecording", "description": "Resume recording a call. Use of this API is only valid when a call's recording is paused and the user's call recording mode is set to \"On Demand\" or \"Always with Pause/Resume\".", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to resume recording." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/transmitDtmf": { "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": "Transmit DTMF", "operationId": "transmitdtmf", "description": "Transmit DTMF digits to a call.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "dtmf": "1,234", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to transmit DTMF digits for." }, "dtmf": { "type": "string", "example": "1,234", "description": "The DTMF digits to transmit. Each digit must be part of the following set: `[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *, #, A, B, C, D]`. A comma \",\" may be included to indicate a pause between digits. For the value '1,234' the DTMF 1 digit is initially sent. After a pause, the DTMF 2, 3, and 4 digits are sent successively." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/push": { "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": "Push", "operationId": "push", "description": "Pushes a call from the assistant to the executive the call is associated with. Use of this API is only valid when the assistant's call is associated with an executive.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY" }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to push." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMDAwODg4OC04ZGU1LTRiMTItOGUyYi0wMDAwMDAxMjM0NTY", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/pickup": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for this call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Pickup", "operationId": "pickup", "description": "Picks up an incoming call to another user. A new call is initiated to perform the pickup in a similar manner to the dial command. When target is not present, the API pickups up a call from the user's call pickup group. When target is present, the API pickups an incoming call from the specified target user.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "target": "1000", "endpointId": "Y2lzY29z...", "singleNumberReachPhoneNumber": "+12223334444", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "properties": { "target": { "type": "string", "example": "1000", "description": "Identifies the user to pickup an incoming call from. If not provided, an incoming call to the user's call pickup group is picked up. The target can be digits or a URI. Some examples for target include: `1234`, `2223334444`, `+12223334444`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`" }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the pickup. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint). Mutually exclusive with `singleNumberReachPhoneNumber`." }, "singleNumberReachPhoneNumber": { "type": "string", "example": "+12223334444", "description": "The Single Number Reach phone number to use for the pickup. Mutually exclusive with `endpointId`." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/bargeIn": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for this call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Barge In", "operationId": "bargein", "description": "Barge-in on another user's answered call. A new call is initiated to perform the barge-in in a similar manner to the dial command.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "target": "1000", "endpointId": "Y2lzY29z...", "singleNumberReachPhoneNumber": "+12223334444", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "target" ], "properties": { "target": { "type": "string", "example": "1000", "description": "Identifies the user to barge-in on. The target can be digits or a URI. Some examples for target include: `1234`, `2223334444`, `+12223334444`, `tel:+12223334444`, `user@company.domain`, `sip:user@company.domain`" }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the barge-in. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint). Mutually exclusive with `singleNumberReachPhoneNumber`." }, "singleNumberReachPhoneNumber": { "type": "string", "example": "+12223334444", "description": "The Single Number Reach phone number to use for the barge-in. Mutually exclusive with `endpointId`." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...Y", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Call" } } }, "example": { "items": [ { "id": "string", "callSessionId": "string", "personality": "originator", "state": "alerting", "remoteParty": { "privacyEnabled": false, "callType": "external" }, "appearance": 1.23, "created": "string", "answered": "string", "redirections": [ { "reason": "busy", "redirectingParty": { "status": "ok", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park" }, "recordingState": "pending", "muteCapable": true, "muted": true } ] } }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "personality": "originator", "state": "connecting", "remoteParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" }, "appearance": 1, "created": "2016-04-21T17:00:00.000Z", "answered": "2016-04-21T17:00:00.000Z", "redirections": [ { "reason": "busy", "redirectingParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park", "party": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } }, "recordingState": "pending", "muteCapable": false, "muted": 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": "List Calls", "operationId": "listcalls", "description": "Get the list of details for all active calls associated with the user.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/calls/{callId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "allOf": [ { "$ref": "#/components/schemas/Call" } ], "example": { "id": "string", "callSessionId": "string", "personality": "string", "state": "string", "remoteParty": "string", "appearance": 1.23, "created": "string", "answered": "string", "redirections": [ { "reason": "string", "redirectingParty": "string" } ], "recall": "string", "recordingState": "string", "muteCapable": true, "muted": true } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "personality": "originator", "state": "connecting", "remoteParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" }, "appearance": 1, "created": "2016-04-21T17:00:00.000Z", "answered": "2016-04-21T17:00:00.000Z", "redirections": [ { "reason": "busy", "redirectingParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park", "party": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } }, "recordingState": "pending", "muteCapable": false, "muted": 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 Call Details", "operationId": "getcalldetails", "description": "Get the details of the specified active call for the user.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [ { "name": "callId", "in": "path", "description": "The call identifier of the call.", "required": true, "schema": { "type": "string" }, "example": "string" }, { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/calls/history": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/CallHistoryRecord" } } }, "example": { "items": [ { "type": "placed", "name": "string", "number": "string", "privacyEnabled": true, "time": "string" } ] } }, "example": { "items": [ { "type": "placed", "name": "John Smith", "number": "+12225554444", "privacyEnabled": false, "time": "2016-04-21T17:00: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": "List Call History", "operationId": "listcallhistory", "description": "Get the list of call history records for the user. A maximum of 20 call history records per type (`placed`, `missed`, `received`) are returned.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [ { "name": "type", "in": "query", "description": "The type of call history records to retrieve. If not specified, then all call history records are retrieved.", "schema": { "type": "string", "enum": [ "placed", "missed", "received" ] }, "example": "placed" } ] } }, "/telephony/externalVoicemail/mwi": { "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": "Set or Clear Message Waiting Indicator (MWI) Status", "operationId": "postExternalVoicemailMwi", "description": "Enables an external voicemail service to SET or CLEAR the Message Waiting Indicator (MWI) for a person or workspace.\n\nInvoke the API using a bearer token from a Service App in the target organization, created by a full admin with the scope `spark-admin:calls_write`.\n\nSpecify the target user or workspace with the required `id` query parameter.\n\nOptionally, use the orgId parameter to indicate the organization; if omitted, the Service App’s organization is used.\n\nIf `orgId` is provided, it must match the Service App’s organization or be a managed organization.\n\nSet the desired action (SET or CLEAR) in the message body’s action field.\n\nLearn more about [using Webex Service Apps](https://developer.webex.com/messaging/docs/service-apps).", "tags": [ "External Voicemail" ], "parameters": [ { "name": "id", "in": "query", "description": "Unique identifier for the user or workspace.", "required": true, "schema": { "type": "string", "minLength": 1, "maxLength": 128 }, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the user or workspace belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string", "minLength": 1, "maxLength": 128 }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ], "requestBody": { "required": true, "content": { "application/json": { "example": { "action": "SET" }, "schema": { "$ref": "#/components/schemas/ExternalVoicemailMwiRequest" } } } } } }, "/telephony/calls/pull": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for this call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Pull", "operationId": "pull", "description": "Pull a call from one device to another. A temporary new call is initiated to perform the call pull in a similar manner to the dial command. When a user answers an alerting device, the device is connected to the pulled call and the new call created for the call pull is released.", "tags": [ "Call Controls", "External Voicemail" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "endpointId": "Y2lzY29z...", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "properties": { "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the retrieval. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint)." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...Y", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/calls/members/{memberId}/dial": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callId", "callSessionId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "A unique identifier for the call which is used in all subsequent commands for the same call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "A unique identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." } }, "example": { "callId": "string", "callSessionId": "string" } }, "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm" } } } }, "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": "Dial by Member ID", "operationId": "dialByMemberId", "description": "Initiate an outbound call to a specified destination. This is also commonly referred to as Click to Call or Click to Dial. Alerts occur on all the devices belonging to a user unless an optional endpointId is specified in which case only the device or application identified by the endpointId is alerted. When a user answers an alerting device, an outbound call is placed from that device to the destination.", "tags": [ "Call Controls" ], "parameters": [ { "name": "memberId", "in": "path", "description": "Unique identifier for the member. Member ID can be one of the following: person, workspace, or virtual line", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the member belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ], "requestBody": { "content": { "application/json": { "example": { "destination": "+12223334444", "endpointId": "Y2lzY29z...", "singleNumberReachPhoneNumber": "+12223334444" }, "schema": { "type": "object", "required": [ "destination" ], "properties": { "destination": { "type": "string", "example": "+12223334444", "description": "The destination to be dialed. The destination can be digits or a URI. Some examples for destination include: `1234`, `2223334444`, `+12223334444`, `*73`, `tel:+12223334444`, `user@company.domain`, and `sip:user@company.domain`." }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to use for the call. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint). Mutually exclusive with `singleNumberReachPhoneNumber`." }, "singleNumberReachPhoneNumber": { "type": "string", "example": "+12223334444", "description": "The Single Number Reach phone number to use for the call. Mutually exclusive with `endpointId`." } } } } } } } }, "/telephony/calls/members/{memberId}/answer": { "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": "Answer by Member ID", "operationId": "answerByMemberId", "description": "Answer an incoming call. When no endpointId is specified, the call is answered on the user's primary device. When an endpointId is specified, the call is answered on the device or application identified by the endpointId. The answer API is rejected if the device is not alerting for the call or the device does not support answer via API.", "tags": [ "Call Controls" ], "parameters": [ { "name": "memberId", "in": "path", "description": "Unique identifier for the member. Member ID can be one of the following: person, workspace, or virtual line", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the member belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "endpointId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to be answered." }, "endpointId": { "type": "string", "example": "Y2lzY29z...", "description": "The ID of the device or application to answer the call on. The `endpointId` must be one of the endpointIds returned by the [Get Preferred Answer Endpoint API](/docs/api/v1/user-call-settings-2-2/get-preferred-answer-endpoint)." } } } } } } } }, "/telephony/calls/members/{memberId}/hangup": { "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": "Hangup by Member ID", "operationId": "hangupByMemberId", "description": "Hangup a call. If used on an unanswered incoming call, the call is rejected and sent to busy.", "tags": [ "Call Controls" ], "parameters": [ { "name": "memberId", "in": "path", "description": "Unique identifier for the member. Member ID can be one of the following: person, workspace, or virtual line", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the member belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA" }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call to hangup." } } } } } } } }, "/telephony/calls/members/{memberId}/calls": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Call" } } }, "example": { "items": [ { "id": "string", "callSessionId": "string", "personality": "originator", "state": "alerting", "remoteParty": { "privacyEnabled": false, "callType": "external" }, "appearance": 1.23, "created": "string", "answered": "string", "redirections": [ { "reason": "busy", "redirectingParty": { "status": "ok", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park" }, "recordingState": "pending", "muteCapable": true, "muted": true } ] } }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "personality": "originator", "state": "connecting", "remoteParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" }, "appearance": 1, "created": "2016-04-21T17:00:00.000Z", "answered": "2016-04-21T17:00:00.000Z", "redirections": [ { "reason": "busy", "redirectingParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park", "party": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } }, "recordingState": "pending", "muteCapable": false, "muted": 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": "List Calls by Member ID", "operationId": "listCallsByMemberId", "description": "Get the list of details for all active calls associated with the member.", "tags": [ "Call Controls" ], "parameters": [ { "name": "memberId", "in": "path", "description": "Unique identifier for the member. Member ID can be one of the following: person, workspace, or virtual line", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the member belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ] } }, "/telephony/calls/members/{memberId}/calls/{callId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "allOf": [ { "$ref": "#/components/schemas/Call" } ], "example": { "id": "string", "callSessionId": "string", "personality": "string", "state": "string", "remoteParty": "string", "appearance": 1.23, "created": "string", "answered": "string", "redirections": [ { "reason": "string", "redirectingParty": "string" } ], "recall": "string", "recordingState": "string", "muteCapable": true, "muted": true } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "callSessionId": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "personality": "originator", "state": "connecting", "remoteParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" }, "appearance": 1, "created": "2016-04-21T17:00:00.000Z", "answered": "2016-04-21T17:00:00.000Z", "redirections": [ { "reason": "busy", "redirectingParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } } ], "recall": { "type": "park", "party": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "privacyEnabled": false, "callType": "location" } }, "recordingState": "pending", "muteCapable": false, "muted": 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 Call Details by Member ID", "operationId": "getCallDetailsByMemberId", "description": "Get the details of the specified active call for the member.", "tags": [ "Call Controls" ], "parameters": [ { "name": "memberId", "in": "path", "description": "Unique identifier for the member. Member ID can be one of the following: person, workspace, or virtual line", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY" }, { "name": "callId", "in": "path", "description": "The call identifier of the call.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA" }, { "name": "orgId", "in": "query", "description": "Id of the organization to which the member belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App's organization.", "required": false, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=" } ] } }, "/telephony/config/actions/testCallRouting/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TestCallRoutingPostResponse" }, "example": { "callSourceInfo": { "callSourceType": "DIAL_PATTERN", "routeListName": "routeList1", "routeListId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvZDA2YWQ5M2QtY2NkOC00MzI1LTg0YzUtMDA2NThhYTdhMDBj", "dialPlanName": "dialPlan1", "dialPattern": "*888", "dialPlanId": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI" }, "destinationType": "HOSTED_AGENT", "routingAddress": "007", "outsideAccessCode": "1234", "isRejected": false, "hostedAgent": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMjU4YjhmZi1lODIxLTQ3MDktYTI2My1mMmI4OWZjN2FlYmQ", "type": "PEOPLE", "firstName": "firstName", "lastName": "lastName", "locationName": "locationName", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "phoneNumber": "9874531287", "extension": "111" }, "hostedFeature": { "type": "AUTO_ATTENDANT", "name": "name1", "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QyRXdhV2R5TVRCamIwQTJORGswTVRJNU55NXBiblF4TUM1aVkyeGtMbmRsWW1WNExtTnZiUT09", "locationName": "locationName1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "phoneNumber": "9874531287", "extension": "111" }, "pbxUser": { "dialPlanName": "dialPlan1", "dialPlanId": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "dialPattern": "442xxx", "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "pstnNumber": { "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "virtualExtension": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OL2U4NTU0MGJjLWFiNDMtNGZjOS05ZThlLTkxZjRkN2E3ZjU5Ng", "firstName": "firstName1", "lastName": "lastName1", "displayName": "displayName1", "extension": "0007", "phoneNumber": "8701278963", "locationName": "locationName1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "virtualExtensionRange": { "id": "OTI0NzM1OTQtZGU1Mi00ZjViLTk0YjItN2Y5MzRmY2Y2NDk3", "name": "firstName1", "prefix": "+1214555", "pattern": "2XXX", "locationName": "locationName1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "routeList": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvZDA2YWQ5M2QtY2NkOC00MzI1LTg0YzUtMDA2NThhYTdhMDBj", "name": "routeListName1", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "locationName": "locationName1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "featureAccessCode": { "code": "*70", "name": "Cancel Call Waiting" }, "emergency": { "isRedSky": true, "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "repair": { "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "unknownExtension": { "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "unknownNumber": { "trunkName": "trunkName1", "trunkId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "routeGroupName": "routeGroupName1", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "trunkLocationName": "trunkLocationName1", "trunkLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA" }, "appliedServices": [ { "translationPattern": { "configurationLevel": "ORGANIZATION", "name": "TP1", "matchingPattern": "+91XXX", "replacementPattern": "+91234", "matchedNumber": "+91236", "translatedNumber": "+91234" }, "interceptDetails": { "configurationLevel": "USER", "permission": "TRANSFER", "transferNumber": "+14157279300" }, "outgoingCallingPlanPermissionsByType": { "configurationLevel": "PEOPLE", "callType": "INTERNAL_CALL", "permission": "ALLOW", "transferNumber": "+14157279300", "reason": "FRAUD_CONTAINMENT", "number": "+14157279300" }, "outgoingCallingPlanPermissionsByDigitPattern": { "configurationLevel": "USER", "name": "DPattern", "permission": "ALLOW", "transferNumber": "+14157279300", "pattern": "+91!", "reason": "FRAUD_CONTAINMENT", "number": "+14157279300" } } ] } } } }, "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": "Test Call Routing", "operationId": "Test Call Routing", "description": "Validates that an incoming call can be routed.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nTest call routing requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization in which we are validating a call routing.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "originatorId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "originatorType": "PEOPLE", "destination": "0007", "includeAppliedServices": true }, "schema": { "type": "object", "required": [ "originatorId", "originatorType", "destination" ], "properties": { "originatorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "description": "This element is used to identify the originating party. It can be a person ID or a trunk ID." }, "originatorType": { "$ref": "#/components/schemas/OriginatorType", "description": "This element is used to identify if the `originatorId` is of type `PEOPLE` or `TRUNK`." }, "originatorNumber": { "type": "string", "example": "9871568630", "description": "Only used when `originatorType` is `TRUNK`. The `originatorNumber` can be a phone number or URI." }, "destination": { "type": "string", "example": "0007", "description": "This element specifies the called party. It can be any dialable string, for example, an ESN number, E.164 number, hosted user DN, extension, extension with location code, URL, or FAC code." }, "includeAppliedServices": { "type": "boolean", "example": true, "description": "This element is used to retrieve if any translation pattern, call intercept, permission by type or permission by digit pattern is present for the called party." } } } } } } } }, "/telephony/config/premisePstn/trunks/{trunkId}/usageDialPlan": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "dialPlans" ], "properties": { "dialPlans": { "type": "array", "items": { "$ref": "#/components/schemas/DialPlanUsageGetResponse" }, "description": "Array of dial Plans." } } }, "example": { "dialPlans": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "dialPlanName" } ] } } } }, "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 Local Gateway Dial Plan Usage for a Trunk", "operationId": "Get Local Gateway Dial Plan Usage for a Trunk", "description": "Get Local Gateway Dial Plan Usage for a Trunk.\n\nA trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this information requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the trunks according to the designated fields. Available sort fields are `name`, and `locationName`. Sort order is ascending by default", "example": "name-asc|locationName-desc", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of trunks matching the local gateway names", "example": "LG1,LG2", "schema": { "type": "array", "items": { "type": "string", "example": "LG1,LG2" }, "description": "Return the list of trunks matching the local gateway names" } } ] } }, "/telephony/config/premisePstn/trunks/{trunkId}/usagePstnConnection": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Array of locations." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ] } } } }, "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 Locations Using the Local Gateway as PSTN Connection Routing", "operationId": "Get Locations Using the Local Gateway as PSTN Connection Routing", "description": "Get Locations Using the Local Gateway as PSTN Connection Routing.\n\nA trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this information requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/trunks/{trunkId}/usageRouteGroup": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "routeGroup" ], "properties": { "routeGroup": { "type": "array", "items": { "$ref": "#/components/schemas/RouteGroupUsageGetResponse" }, "description": "Array of route Groups." } } }, "example": { "routeGroup": [ { "id": "NTJiZmUxNDAtYjIwMS00NTUzLWI1OGQtMmVkNDU1NTFmYTUy", "name": "RouteGroup01", "inUse": 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 Route Groups Using the Local Gateway", "operationId": "Get Route Groups Using the Local Gateway", "description": "Get Route Groups Using the Local Gateway.\n\nA trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this information requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/trunks/{trunkId}/usage": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalGatewayUsageCount" }, "example": { "pstnConnectionCount": 1, "callToExtensionCount": 1, "dialPlanCount": 1, "routeGroupCount": 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 Local Gateway Usage Count", "operationId": "Get Local Gateway Usage Count", "description": "Get Local Gateway Usage Count\n\nA trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this information requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/dialPlans/{dialPlanId}/dialPatterns": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Dial Patterns", "operationId": "Modify Dial Patterns", "description": "Modify dial patterns for the Dial Plan.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nModifying a dial pattern requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "dialPlanId", "in": "path", "description": "ID of the dial plan being modified.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DialPatternPut" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "dialPatterns" ], "properties": { "dialPatterns": { "type": "array", "items": { "type": "string" }, "description": "Array of dial patterns. An enterprise dial pattern is represented by a sequence of digits (1-9), followed by optional wildcard characters." } } }, "example": { "dialPatterns": [] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Dial Patterns", "operationId": "Read the List of Dial Patterns", "description": "List all Dial Patterns for the organization.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "dialPlanId", "in": "path", "description": "ID of the dial plan.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization to which the dial patterns belong.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "dialPattern", "in": "query", "description": "An enterprise dial pattern is represented by a sequence of digits (1-9), followed by optional wildcard characters.\nValid wildcard characters are `!` (matches any sequence of digits) and `X` (matches a single digit, 0-9).\nThe `!` wildcard can only occur once at the end and only in an E.164 pattern\n", "example": "+5555", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the dial patterns according to the designated fields. Available sort fields: `dialPattern`.", "example": "dialPattern-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/actions/validateDialPatterns/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DialPatternValidateResult" }, "example": { "status": "ERRORS", "dialPatternStatus": [ { "dialPattern": "+4555", "patternStatus": "INVALID", "message": "invalid format for premises dial pattern +4555" } ] } } } }, "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": "Validate a Dial Pattern", "operationId": "Validate a Dial Pattern", "description": "Validate a Dial Pattern.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nValidating a dial pattern requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ "dialPatterns" ], "properties": { "dialPatterns": { "type": "array", "items": { "type": "string", "example": "+5555,7777" }, "description": "Array of dial patterns." } } } } } } } }, "/telephony/config/premisePstn/dialPlans": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "dialPlans" ], "properties": { "dialPlans": { "type": "array", "items": { "$ref": "#/components/schemas/DialPlan" }, "description": "Array of dial plans." } } }, "example": { "dialPlans": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "dialPlanName", "routeId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "routeName": "routeName", "routeType": "ROUTE_GROUP" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Dial Plans", "operationId": "Read the List of Dial Plans", "description": "List all Dial Plans for the organization.\n\nDial plans route calls to on-premises destinations by use of the trunks or route groups with which the dial plan is associated. Multiple dial patterns can be defined as part of your dial plan. Dial plans are configured globally for an enterprise and apply to all users, regardless of location.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List dial plans for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "dialPlanName", "in": "query", "description": "Return the list of dial plans matching the dial plan name.", "example": "dialPlanName", "schema": { "type": "string" } }, { "name": "routeGroupName", "in": "query", "description": "Return the list of dial plans matching the Route group name..", "example": "routeGroupName", "schema": { "type": "string" } }, { "name": "trunkName", "in": "query", "description": "Return the list of dial plans matching the Trunk name..", "example": "trunkName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the dial plans according to the designated fields. Available sort fields: `name`, `routeName`, `routeType`. Sort order is ascending by default", "example": "dpName-asc|rnTest-desc|TRUNK-desc", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of the newly created dial plan." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg" } } } }, "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 Dial Plan", "operationId": "Create a Dial Plan", "description": "Create a Dial Plan for the organization.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nCreating a dial plan requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DialPlanPost" } } } } } }, "/telephony/config/premisePstn/dialPlans/{dialPlanId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DialPlanGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "dialPlanName", "routeId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "routeName": "routeName", "routeType": "ROUTE_GROUP", "customer": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "test_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 a Dial Plan", "operationId": "Get a Dial Plan", "description": "Get a Dial Plan for the organization.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nRetrieving a dial plan requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "dialPlanId", "in": "path", "description": "ID of the dial plan.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Dial Plan", "operationId": "Modify a Dial Plan", "description": "Modify a Dial Plan for the organization.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nModifying a dial plan requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "dialPlanId", "in": "path", "description": "ID of the dial plan being modified.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DialPlanPut" } } } } }, "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 Dial Plan", "operationId": "Delete a Dial Plan", "description": "Delete a Dial Plan for the organization.\n\nDial plans route calls to on-premises destinations by use of trunks or route groups.\nThey are configured globally for an enterprise and apply to all users, regardless of location.\nA dial plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns.\nSpecific dial patterns can be defined as part of your dial plan.\n\nDeleting a dial plan requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "dialPlanId", "in": "path", "description": "ID of the dial plan.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which dial plan belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/trunks/actions/fqdnValidation/invoke": { "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": "Validate Local Gateway FQDN and Domain for a Trunk", "operationId": "Validate Local Gateway FQDN and Domain for a Trunk", "description": "Validate Local Gateway FQDN and Domain for the organization trunks.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group - a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nValidating Local Gateway FQDN and Domain requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which trunk types belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TrunkFQDNValidatePost" } } } } } }, "/telephony/config/premisePstn/trunks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "trunks" ], "properties": { "trunks": { "type": "array", "items": { "$ref": "#/components/schemas/Trunk" }, "description": "Array of trunks." } } }, "example": { "trunks": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "trunkName", "location": { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" }, "inUse": true, "trunkType": "REGISTERING", "isRestrictedToDedicatedInstance": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Trunks", "operationId": "Read the List of Trunks", "description": "List all Trunks for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group - a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List trunks for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of trunks matching the local gateway names.", "example": "LG1,LG2", "schema": { "type": "array", "items": { "type": "string", "example": "LG1,LG2" }, "description": "Return the list of trunks matching the local gateway names." } }, { "name": "locationName", "in": "query", "description": "Return the list of trunks matching the location names.", "example": "Boston,SJ-1", "schema": { "type": "array", "items": { "type": "string", "example": "Boston,SJ-1" }, "description": "Return the list of trunks matching the location names." } }, { "name": "trunkType", "in": "query", "description": "Return the list of trunks matching the trunk type.", "example": "REGISTERING", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the trunks according to the designated fields. Available sort fields: name, locationName. Sort order is ascending by default", "example": "name-asc|locationName-desc", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of the newly created trunk." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg" } } } }, "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 Trunk", "operationId": "Create a Trunk", "description": "Create a Trunk for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nCreating a trunk requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TrunkPost" } } } } } }, "/telephony/config/premisePstn/trunks/{trunkId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TrunkGet" }, "example": { "name": "trunkName", "customer": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "name": "test_org" }, "location": { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" }, "otgDtgId": "lg1_sias10_cpapi12446_lgu", "linePort": "lg1_sias10_cpapi16004_LGU@64941297.int10.bcld.webex.com", "locationsUsingTrunk": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ], "pilotUserId": "lg1_sias10_cpapi12446_LGU@64941297.int10.bcld.webex.com", "sipAuthenticationUserName": "lg1_sias10_cpapi12446_LGU", "status": "ONLINE", "errorCodes": [ "errorCodes" ], "responseStatus": { "code": 25013, "type": "ERROR", "summaryEnglish": "CPAPI: Error retrieving outboundproxy.", "detail": [ "OCI-P GroupOutboundProxyGetRequest: [Error 26088] Cloud PBX Console is not configured properly., OCI-P Error code: [Error 26088] Cloud PBX Console is not configured properly." ], "trackingId": "CPAPI_2da34568-1e72-4196-b613-905ce45ec592_0" }, "dualIdentitySupportEnabled": true, "trunkType": "REGISTERING", "deviceType": "Cisco Unified Border Element", "address": "lgw1.london", "domain": "acme.corp", "port": 5000, "maxConcurrentCalls": 1000, "isRestrictedToDedicatedInstance": true, "pChargeInfoSupportPolicy": "DISABLED" } } } }, "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 Trunk", "operationId": "Get a Trunk", "description": "Get a Trunk for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group - a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving a trunk requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Trunk", "operationId": "Modify a Trunk", "description": "Modify a Trunk for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group - a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nModifying a trunk requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk being modified.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TrunkPut" } } } } }, "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 Trunk", "operationId": "Delete a Trunk", "description": "Delete a Trunk for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group - a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nDeleting a trunk requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/trunks/trunkTypes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TrunkTypeGetList" }, "example": { "trunkTypes": [ { "trunkType": "REGISTERING", "deviceTypes": [ { "deviceType": "Cisco Unified Border Element", "minConcurrentCalls": 250, "maxConcurrentCalls": 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": "Read the List of Trunk Types", "operationId": "Read the List of Trunk Types", "description": "List all Trunk Types with Device Types for the organization.\n\nA Trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy. Trunk Types are Registering or Certificate Based and are configured in Call Manager.\n\nRetrieving trunk types requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the trunk types belong.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "routeGroups" ], "properties": { "routeGroups": { "type": "array", "items": { "$ref": "#/components/schemas/RouteGroup" }, "description": "Array of route groups." } } }, "example": { "routeGroups": [ { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "name": "Route Group 01", "inUse": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Routing Groups", "operationId": "Read the List of Routing Groups", "description": "List all Route Groups for an organization. A Route Group is a group of trunks that allows further scale and redundancy with the connection to the premises.\n\nRetrieving this route group list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List route groups for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of route groups matching the Route group name..", "example": "routeGroupName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the route groups according to designated fields. Available sort orders are `asc` and `desc`.", "example": "name-asc|ROUTE_GROUP-desc", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PostResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzE4YzFhMGRkLWJhMjctNDkwMS1hNGUxLTBlNWIyNzM1YzlkZg" } } } }, "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 Route Group for a Organization", "operationId": "Create Route Group for a Organization", "description": "Creates a Route Group for the organization.\n\nA Route Group is a collection of trunks that allows further scale and redundancy with the connection to the premises. Route groups can include up to 10 trunks from different locations.\n\nCreating a Route Group requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the Route Group belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "hydra2", "localGateways": [ { "id": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzY1Zjc4YzgxLTcwMTYtNDc0Ny05M2EyLWIxMGVlZjBhMWI1Ng", "name": "Route List Trunk", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL1dTV1laMjEyODA2TDIxMjg0MQ", "priority": 1 } ] }, "schema": { "$ref": "#/components/schemas/RouteGroupPost" } } } } } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RouteGroupGet" }, "example": { "name": "hydra2", "organization": { "name": "ATLAS_TEST_LIEM_RL", "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80MWQxNDNiYi1hMjEwLTQ5YTQtOGNkZC1hYzc2YzYxMmE0YzM" }, "localGateways": [ { "id": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzc3MDY3YjcyLTk4NzEtNDJmNi1iMzdhLTQ3ZWZmMjUyNjdjNg", "name": "Route List Trunk 2", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL1dTV1laMjEyODA2TDIxMjgwNw", "priority": 2 } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read a Route Group for a Organization", "operationId": "Read a Route Group for a Organization", "description": "Reads a Route Group for the organization based on id.\n\nA Route Group is a collection of trunks that allows further scale and redundancy with the connection to the premises. Route groups can include up to 10 trunks from different locations.\n\nReading a Route Group requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "Route Group for which details are being requested.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzE4YzFhMGRkLWJhMjctNDkwMS1hNGUxLTBlNWIyNzM1YzlkZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Route Group for a Organization", "operationId": "Modify a Route Group for a Organization", "description": "Modifies an existing Route Group for an organization based on id.\n\nA Route Group is a collection of trunks that allows further scale and redundancy with the connection to the premises. Route groups can include up to 10 trunks from different locations.\n\nModifying a Route Group requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "Route Group for which details are being requested.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzE4YzFhMGRkLWJhMjctNDkwMS1hNGUxLTBlNWIyNzM1YzlkZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "hydra4", "localGateways": [ { "id": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzY1Zjc4YzgxLTcwMTYtNDc0Ny05M2EyLWIxMGVlZjBhMWI1Ng", "name": "Route List Trunk", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL1dTV1laMjEyODA2TDIxMjg0MQ", "priority": 2 } ] }, "schema": { "$ref": "#/components/schemas/RouteGroupPatch" } } } } }, "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": "Remove a Route Group from an Organization", "operationId": "Remove a Route Group from an Organization", "description": "Remove a Route Group from an Organization based on id.\n\nA Route Group is a collection of trunks that allows further scale and redundancy with the connection to the premises. Route groups can include up to 10 trunks from different locations.\n\nRemoving a Route Group requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "Route Group for which details are being requested.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzE4YzFhMGRkLWJhMjctNDkwMS1hNGUxLTBlNWIyNzM1YzlkZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}/usage": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "pstnConnectionCount", "callToExtensionCount", "dialPlanCount", "routeListCount" ], "properties": { "pstnConnectionCount": { "type": "string", "example": "1", "description": "Number of PSTN connection locations associated to this route group." }, "callToExtensionCount": { "type": "string", "example": "1", "description": "Number of call to extension locations associated to this route group." }, "dialPlanCount": { "type": "string", "example": "1", "description": "Number of dial plan locations associated to this route group." }, "routeListCount": { "type": "string", "example": "1", "description": "Number of route list locations associated to this route group." } } }, "example": { "pstnConnectionCount": "1", "callToExtensionCount": "1", "dialPlanCount": "1", "routeListCount": "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": "Read the Usage of a Routing Group", "operationId": "Read the Usage of a Routing Group", "description": "List the number of \"Call to\" on-premises Extensions, Dial Plans, PSTN Connections, and Route Lists used by a specific Route Group.\nUsers within Call to Extension locations are registered to a PBX which allows you to route unknown extensions (calling number length of 2-6 digits) to the PBX using an existing Trunk or Route Group.\nPSTN Connections may be a Cisco PSTN, a cloud-connected PSTN, or a premises-based PSTN (local gateway).\nDial Plans allow you to route calls to on-premises extensions via your trunk or route group.\nRoute Lists are a list of numbers that can be reached via a route group and can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving usage information requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "ID of the requested Route group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization associated with the specific route group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}/usageCallToExtension": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Array of locations." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the Call to Extension Locations of a Routing Group", "operationId": "Read the Call to Extension Locations of a Routing Group", "description": "List \"Call to\" on-premises Extension Locations for a specific route group. Users within these locations are registered to a PBX which allows you to route unknown extensions (calling number length of 2-6 digits) to the PBX using an existing trunk or route group.\n\nRetrieving this location list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "ID of the requested Route group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization associated with specific route group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationName", "in": "query", "description": "Return the list of locations matching the location name.", "example": "locationName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the locations according to designated fields. Available sort orders are `asc`, and `desc`.", "example": "name-asc|locationName-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}/usageDialPlan": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Array of locations." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the Dial Plan Locations of a Routing Group", "operationId": "Read the Dial Plan Locations of a Routing Group", "description": "List Dial Plan Locations for a specific route group.\n\nDial Plans allow you to route calls to on-premises destinations by use of trunks or route groups. They are configured globally for an enterprise and apply to all users, regardless of location.\nA Dial Plan also specifies the routing choice (trunk or route group) for calls that match any of its dial patterns. Specific dial patterns can be defined as part of your dial plan.\n\nRetrieving this location list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "ID of the requested Route group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization associated with specific route group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationName", "in": "query", "description": "Return the list of locations matching the location name.", "example": "locationName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the locations according to designated fields. Available sort orders are `asc`, and `desc`.", "example": "name-asc|locationName-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}/usagePstnConnection": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Array of locations." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the PSTN Connection Locations of a Routing Group", "operationId": "Read the PSTN Connection Locations of a Routing Group", "description": "List PSTN Connection Locations for a specific route group. This solution lets you configure users to use Cloud PSTN (CCP or Cisco PSTN) or Premises-based PSTN.\n\nRetrieving this Location list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "ID of the requested Route group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization associated with specific route group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationName", "in": "query", "description": "Return the list of locations matching the location name.", "example": "locationName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the locations according to designated fields. Available sort orders are `asc`, and `desc`.", "example": "name-asc|locationName-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeGroups/{routeGroupId}/usageRouteList": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "routeGroupUsageRouteListGet" ], "properties": { "routeGroupUsageRouteListGet": { "type": "array", "items": { "$ref": "#/components/schemas/RouteGroupUsageRouteListGet" }, "description": "Array of route lists." } } }, "example": { "routeGroupUsageRouteListGet": [ { "routeLists": [ { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvOTljNjJkMGQtNmFhYi00NGQ0LWE0ZTctZjk0MjQ4OWVhMWJj", "name": "routeListName", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2JjNWUwNWFjLTI5ZmEtNGY0NS05MmM1LWUxZTExMDc0OTIwZg", "locationName": "locationName" } ] } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the Route Lists of a Routing Group", "operationId": "Read the Route Lists of a Routing Group", "description": "List Route Lists for a specific route group. Route Lists are a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving this list of Route Lists requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeGroupId", "in": "path", "description": "ID of the requested Route group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization associated with specific route group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of locations matching the location name.", "example": "locationName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the locations according to designated fields. Available sort orders are `asc`, and `desc`.", "example": "name-asc|locationName-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/routeLists": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "routeLists" ], "properties": { "routeLists": { "type": "array", "items": { "$ref": "#/components/schemas/RouteListListGet" }, "description": "Array of route lists." } } }, "example": { "routeLists": [ { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvOTljNjJkMGQtNmFhYi00NGQ0LWE0ZTctZjk0MjQ4OWVhMWJj", "name": "RouteList Name", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2JjNWUwNWFjLTI5ZmEtNGY0NS05MmM1LWUxZTExMDc0OTIwZg", "locationName": "locationName", "routeGroupId": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "routeGroupName": "RouteGroup01" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Route Lists", "operationId": "Read the List of Route Lists", "description": "List all Route Lists for the organization.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving the Route List requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List all Route List for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the Route List according to the designated fields. Available sort fields are `name`, and `locationId`. Sort order is ascending by default", "example": "name-asc|locationName-desc", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of Route List matching the route list name.", "example": "LG1,LG2", "schema": { "type": "array", "items": { "type": "string", "example": "LG1,LG2" }, "description": "Return the list of Route List matching the route list name." } }, { "name": "locationId", "in": "query", "description": "Return the list of Route Lists matching the location id.", "example": "36e1e3f5-ba81-44b4-9dd5-b22ee4f5022d", "schema": { "type": "array", "items": { "type": "string", "example": "36e1e3f5-ba81-44b4-9dd5-b22ee4f5022d" }, "description": "Return the list of Route Lists matching the location id." } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "NjA1MDA2YzMtYjQxNy00YmIxLTg4ZDItMDRjYThkNThiYjYy", "description": "ID of the newly route list created." } } }, "example": { "id": "NjA1MDA2YzMtYjQxNy00YmIxLTg4ZDItMDRjYThkNThiYjYy" } } } }, "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 Route List", "operationId": "Create a Route List", "description": "Create a Route List for the organization.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nCreating a Route List requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RouteListPost" } } } } } }, "/telephony/config/premisePstn/routeLists/{routeListId}": { "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 Route List", "operationId": "Delete a Route List", "description": "Delete a route list for a customer.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nDeleting a Route List requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeListId", "in": "path", "description": "ID of the Route List.", "required": true, "example": "cbd93770-e6a3-448b-9bdf-86dbad3918c2", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RouteListGet" }, "example": { "name": "Route List 01", "location": { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" }, "routeGroup": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "name": "Route Group 01", "inUse": 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 a Route List", "operationId": "Get a Route List", "description": "Get a rout list details.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving a Route List requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeListId", "in": "path", "description": "ID of the Route List.", "required": true, "example": "Y2JkOTM3NzAtZTZhMy00NDhiLTliZGYtODZkYmFkMzkxOGMy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Route List", "operationId": "Modify a Route List", "description": "Modify the details for a Route List.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving a Route List requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeListId", "in": "path", "description": "ID of the Route List.", "required": true, "example": "Y2JkOTM3NzAtZTZhMy00NDhiLTliZGYtODZkYmFkMzkxOGMy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RouteListPatch" } } } } } }, "/telephony/config/premisePstn/routeLists/{routeListId}/numbers": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "numberStatus": { "type": "array", "items": { "$ref": "#/components/schemas/RouteListNumberPatchResponse" }, "description": "Array of number statuses." } } }, "example": { "numberStatus": [ { "phoneNumber": "+2147891122", "numberStatus": "DUPLICATE", "message": "Invalid Number" } ] } } } }, "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": "Modify Numbers for Route List", "operationId": "Modify Numbers for Route List", "description": "Modify numbers for a specific Route List of a Customer.\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving a Route List requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeListId", "in": "path", "description": "ID of the Route List.", "required": true, "example": "cbd93770-e6a3-448b-9bdf-86dbad3918c2", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/RouteListNumberPatch" }, "description": "Array of the numbers to be deleted/added." }, "deleteAllNumbers": { "type": "boolean", "example": true, "description": "If present, the numbers array is ignored and all numbers in the route list are deleted." } } } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RouteListNumberListGet" }, "example": { "numbers": [] } } } }, "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 Numbers assigned to a Route List", "operationId": "Get Numbers assigned to a Route List", "description": "Get numbers assigned to a Route List\n\nA Route List is a list of numbers that can be reached via a Route Group. It can be used to provide cloud PSTN connectivity to Webex Calling Dedicated Instance.\n\nRetrieving a Route List requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "routeListId", "in": "path", "description": "ID of the Route List.", "required": true, "example": "cbd93770-e6a3-448b-9bdf-86dbad3918c2", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the Route List belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "number", "in": "query", "description": "Number assigned to the route list.", "example": "+2147891122", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the Route Lists according to number, ascending or descending.", "example": "number-asc|number-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/premisePstn/trunks/{trunkId}/usageCallToExtension": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Array of locations associated with the trunk." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "name": "locationName" } ] } } } }, "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 Local Gateway Call to On-Premises Extension Usage for a Trunk", "operationId": "Get Local Gateway Call to On-Premises Extension Usage for a Trunk", "description": "Get local gateway call to on-premises extension usage for a trunk.\n\nA trunk is a connection between Webex Calling and the premises, which terminates on the premises with a local gateway or other supported device.\nThe trunk can be assigned to a Route Group which is a group of trunks that allow Webex Calling to distribute calls over multiple trunks or to provide redundancy.\n\nRetrieving this information requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "trunkId", "in": "path", "description": "ID of the trunk.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the trunk belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the trunks according to the designated fields. Available sort fields are `name`, and `locationName`. Sort order is ascending by default", "example": "name-asc|locationName-desc", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of trunks matching the local gateway names", "example": "LG1,LG2", "schema": { "type": "array", "items": { "type": "string", "example": "LG1,LG2" }, "description": "Return the list of trunks matching the local gateway names" } } ] } }, "/telephony/config/callRouting/translationPatterns": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Translation Pattern for an Organization", "operationId": "Create a Translation Pattern for an Organization", "description": "Create a translation pattern for a given organization.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization containing the translation pattern.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "CHNHelpDesk", "matchingPattern": "+91[2-7]XX21", "replacementPattern": "+91352133" }, "schema": { "$ref": "#/components/schemas/TranslationPatternCreateRequest" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TranslationPatternGetList" }, "example": { "translationPatterns": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "TranslationPattern1", "matchingPattern": "781", "replacementPattern": "+91348781", "level": "Organization" }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V5", "name": "TranslationPattern2", "matchingPattern": "2XXX", "replacementPattern": "2013", "level": "Location", "location": { "name": "CHN11", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4YzU5NDE2LTQ5YWQtNDVlMy04NmIyLTFkZjU5M2IyZDdhYQ" } } ] } } } }, "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": "Retrieve the list of Translation Patterns", "operationId": "Retrieve the list of Translation Patterns", "description": "Retrieve a list of translation patterns for a given organization.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization containing the translation patterns.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "limitToLocationId", "in": "query", "description": "When a location ID is passed, then return only the corresponding location level translation patterns.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "limitToOrgLevelEnabled", "in": "query", "description": "When set to be `true`, then return only the organization-level translation patterns.", "example": "true", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list of translation patterns according to translation pattern name, ascending or descending.", "example": "name-asc|name-desc", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Only return translation patterns with the matching `name`.", "example": "Pattern1", "schema": { "type": "string" } }, { "name": "matchingPattern", "in": "query", "description": "Only return translation patterns with the matching `matchingPattern`.", "example": "+2323", "schema": { "type": "string" } } ] } }, "/telephony/config/callRouting/translationPatterns/{translationId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TranslationPatternGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "TranslationPattern1", "matchingPattern": "781", "replacementPattern": "+91348781" } } } }, "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": "Retrieve a specific Translation Pattern for an Organization", "operationId": "Retrieve a specific Translation Pattern for an Organization", "description": "Retrieve the details of a translation pattern for a given organization.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization containing the translation pattern.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Retrieve the translation pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a specific Translation Pattern for an Organization", "operationId": "Modify a specific Translation Pattern for an Organization", "description": "Modify a translation pattern for a given organization.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization containing the translation pattern.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Modify translation pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "CHNHelpDesk", "matchingPattern": "+91[2-7]XX21", "replacementPattern": "+91352133" }, "schema": { "$ref": "#/components/schemas/TranslationPatternModifyRequest" } } } } }, "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 specific Translation Pattern", "operationId": "Delete a specific Translation Pattern", "description": "Delete a translation pattern for a given organization.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization containing the translation pattern.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Delete a translation pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callRouting/translationPatterns": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg" } } } }, "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 Translation Pattern for a Location", "operationId": "Create a Translation Pattern for a Location", "description": "Create a translation pattern for a given location.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "CHNHelpDesk", "matchingPattern": "+91[2-7]XX21", "replacementPattern": "+91352133" }, "schema": { "$ref": "#/components/schemas/LocationTranslationPatternCreateRequest" } } } } } }, "/telephony/config/locations/{locationId}/callRouting/translationPatterns/{translationId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationTranslationPatternGet" } } } }, "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": "Retrieve a specific Translation Pattern for a Location", "operationId": "Retrieve a specific Translation Pattern for a Location", "description": "Retrieve a specific translation pattern for a given location.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Call Routing" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Unique identifier for the translation pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a specific Translation Pattern for a Location", "operationId": "Modify a specific Translation Pattern for a Location", "description": "Modify a specific translation pattern for a given location.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Unique identifier for the translation pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "CHNHelpDesk", "matchingPattern": "+91[2-7]XX21", "replacementPattern": "+91352133" }, "schema": { "$ref": "#/components/schemas/LocationTranslationPatternModifyRequest" } } } } }, "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 specific Translation Pattern for a Location", "operationId": "Delete a specific Translation Pattern for a Location", "description": "Delete a specific translation pattern for a given location.\n\nA translation pattern lets you manipulate dialed digits before routing a call and applies to outbound calls only. See [this article](https://help.webex.com/en-us/article/nib9o6h/Translation-patterns-for-outbound-calls) for details about the translation pattern syntax.\n\nRequires a full administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Call Routing" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "translationId", "in": "path", "description": "Unique identifier for the translation pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/personalAssistant": { "get": { "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonalAssistantSettings" } } } }, "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 Personal Assistant Settings", "operationId": "getPersonalAssistantSettings", "description": "Retrieve personal assistant settings for a person. The personal assistant feature allows users to configure an automated attendant that can handle incoming calls when they are unavailable, including presence-based routing and call transfer options.\n\nPersonal Assistant is a feature of Webex Calling that helps manage incoming calls based on the user's availability status.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content: Personal assistant settings successfully updated." }, "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 Personal Assistant Settings", "operationId": "updatePersonalAssistantSettings", "description": "Update personal assistant settings for a person. Allows configuring the personal assistant feature including enabling/disabling it, setting presence status, configuring call transfer options, and alerting preferences.\n\nPersonal Assistant is a feature of Webex Calling that helps manage incoming calls based on the user's availability status.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonalAssistantSettingsUpdate" } } } } } }, "/telephony/config/people/me/settings/availablePreferredAnswerEndpoints": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/preferredAnswerEndpointInformation" }, "example": { "endpoints": [ { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)", "isPreferredAnswerEndpoint": false }, { "id": "Y2lzY29b...", "type": "APPLICATION", "name": "Webex Desktop Application", "isPreferredAnswerEndpoint": 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 List Available Preferred Answer Endpoints", "operationId": "getListAvailablePreferredAnswerEndpoints", "description": "Get the person's preferred answer endpoint and the list of endpoints available for selection. The list of endpoints is empty if the person has no endpoints assigned which support the preferred answer endpoint functionality.\n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [], "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/secondaryLines/{lineOwnerId}/availablePreferredAnswerEndpoints": { "get": { "summary": "Get My Secondary Line Owner's Available Preferred Answer Endpoint List", "operationId": "getSecondaryLinesAvailablePreferredAnswerEndpointList", "description": "Retrieve the list of available preferred answer endpoints for the secondary line owner of the authenticated person. \n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\n This API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineOwnerId", "in": "path", "required": true, "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/preferredAnswerEndpointInformation" }, "example": { "endpoints": [ { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)", "isPreferredAnswerEndpoint": false }, { "id": "Y2lzY29b...", "type": "APPLICATION", "name": "Webex Desktop Application", "isPreferredAnswerEndpoint": 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." } } } }, "/telephony/config/people/me/settings/preferredAnswerEndpoint": { "get": { "summary": "Get Preferred Answer Endpoint", "operationId": "getMyPreferredAnswerEndpoint", "description": "Retrieve the selected preferred answering endpoint for the user. If a preferred endpoint is not set for the person, API returns empty \n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\n This API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/preferredAnswerEndpoint" }, "example": { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)" } } } }, "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." } }, "parameters": [], "security": [ { "bearer-key": [] } ] }, "put": { "summary": "Modify Preferred Answer Endpoint", "operationId": "modifyMyPreferredAnswerEndpoint", "description": "Sets or clears the person’s preferred answer endpoint. To clear the preferred answer endpoint the `id` attribute must be set to null.\n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EndpointIdType" }, "example": { "id": "Y2lzY29z..." } } } }, "responses": { "204": { "description": "No Content: The preferred answering endpoint was successfully updated." }, "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." } }, "parameters": [], "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/secondaryLines/{lineOwnerId}/preferredAnswerEndpoint": { "get": { "summary": "Get My Secondary Line Owner's Preferred Answer Endpoint", "operationId": "getMySecondaryLinesPreferredAnswerEndpoint", "description": "Retrieve the selected preferred answering endpoint for the secondary line owner of the authenticated person. If a preferred endpoint is not set for the person, API returns empty \n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\n This API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/preferredAnswerEndpoint" }, "example": { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)" } } } }, "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." } }, "parameters": [ { "name": "lineOwnerId", "in": "path", "required": true, "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "security": [ { "bearer-key": [] } ] }, "put": { "summary": "Modify My Secondary Line Owner's Preferred Answer Endpoint", "operationId": "modifyMySecondaryLinesPreferredAnswerEndpoint", "description": "Sets or clears the preferred answer endpoint for the secondary line owner of the authenticated person. To clear the preferred answer endpoint the `id` attribute must be set to null.\n\n A Webex Calling user may be associated with multiple endpoints such as Webex App (desktop or mobile), Cisco desk IP phone, Webex Calling-supported analog devices or third-party endpoints. Preferred answering endpoints allow users to specify which of these devices should be prioritized for answering calls, particularly when a person's extension (or a virtual line assigned to them) rings on multiple devices. This helps ensure that calls are answered on the most convenient or appropriate device for the person.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EndpointIdType" }, "example": { "id": "Y2lzY29z..." } } } }, "responses": { "204": { "description": "No Content: The preferred answering endpoint was successfully updated." }, "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." } }, "parameters": [ { "name": "lineOwnerId", "in": "path", "required": true, "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/webexGoOverride": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserDNDWebexGoOverrideGet" }, "example": { "enabled": true } } } }, "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." }, "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)." } }, "summary": "Get My WebexGoOverride Settings", "operationId": "getMyWebexGoOverrideSettings", "description": "Retrieve \"Mobile User Aware\" override setting for Do Not Disturb feature.\n\nWhen enabled, a mobile device will still ring even if Do Not Disturb, Quiet Hours, or Presenting Status are enabled.\n\nWhen disabled, a mobile device will return busy for all incoming calls if Do Not Disturb, Quiet Hours, or Presenting Status are enabled.\n\nIt requires a user auth token with `spark:telephony_config_read` scope.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "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." }, "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)." } }, "summary": "Modify My WebexGoOverride Settings", "operationId": "modifyMyWebexGoOverrideSettings", "description": "Update \"Mobile User Aware\" override setting for Do Not Disturb feature.\n\nWhen enabled, a mobile device will still ring even if Do Not Disturb, Quiet Hours, or Presenting Status are enabled.\n\nWhen disabled, a mobile device will return busy for all incoming calls if Do Not Disturb, Quiet Hours, or Presenting Status are enabled.\n\nIt requires a user auth token with the `spark:telephony_config_write` scope.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": true }, "schema": { "$ref": "#/components/schemas/UserDNDWebexGoOverridePatch" } } } } } }, "/telephony/config/people/me/settings/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerIdSettingsGet" }, "example": { "callingLineIdDeliveryBlockingEnabled": false, "connectedLineIdentificationRestrictionEnabled": 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 My Caller ID Settings", "operationId": "getMyCallerIDSettings", "description": "Get Caller ID Settings for the authenticated user.\n\nCalling Line ID Delivery Blocking in Webex prevents your name and phone number from being shown to people you call.\nConnected Line Identification Restriction allows you to block your name and phone number from being shown when receiving a call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Caller ID Settings", "operationId": "modifyMyCallerIDSettings", "description": "Update Caller ID Settings for the authenticated user.\n\nCalling Line ID Delivery Blocking in Webex prevents your name and phone number from being shown to people you call.\nConnected Line Identification Restriction allows you to block your name and phone number from being shown when receiving a call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callingLineIdDeliveryBlockingEnabled": false, "connectedLineIdentificationRestrictionEnabled": false }, "schema": { "$ref": "#/components/schemas/CallerIdSettingsPut" } } } } } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerIdSettingsGet" }, "example": { "callingLineIdDeliveryBlockingEnabled": false, "connectedLineIdentificationRestrictionEnabled": 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 My Secondary Line Owner Caller ID Settings", "operationId": "getMySecondaryLinesCallerIDSettings", "description": "Get Caller ID Settings for the secondary line owner of the authenticated user.\n\nNote that the secondary line information is only available for the authenticated user.\n\nCalling Line ID Delivery Blocking in Webex prevents your name and phone number from being shown to people you call.\nConnected Line Identification Restriction allows you to block your name and phone number from being shown when receiving a call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Secondary Line Owner Caller ID Settings", "operationId": "modifyMySecondaryLinesCallerIDSettings", "description": "Update Caller ID Settings for the secondary line owner of the authenticated user.\n\nNote that the secondary line information is only available for the authenticated user.\n\nCalling Line ID Delivery Blocking in Webex prevents your name and phone number from being shown to people you call.\nConnected Line Identification Restriction allows you to block your name and phone number from being shown when receiving a call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callingLineIdDeliveryBlockingEnabled": false, "connectedLineIdentificationRestrictionEnabled": false }, "schema": { "$ref": "#/components/schemas/CallerIdSettingsPut" } } } } } }, "/telephony/config/people/me/settings/selectedCallerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectedCallerIdSettingsGet" }, "example": { "selected": { "type": "CALL_QUEUE", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1", "name": "Call Queue DND", "directNumber": "+19075552859", "extension": "10079" } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read My Selected Caller ID Settings", "operationId": "getMySelectedCallerIDSettings", "description": "Read selected caller ID settings associated with the authenticated user.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nSelected Caller ID settings allow users to choose which configuration among available caller IDs is selected currently.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure My Selected Caller ID Settings", "operationId": "modifyMySelectedCallerIDSettings", "description": "Update selected caller ID settings associated with the authenticated user.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nSelected Caller ID settings allow users to choose which configuration among available caller IDs is selected currently.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "selected": { "type": "HUNT_GROUP", "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1" } }, "schema": { "$ref": "#/components/schemas/SelectedCallerIdSettingsPut" } } } } } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/selectedCallerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectedCallerIdSettingsGet" }, "example": { "selected": { "type": "CALL_QUEUE", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1", "name": "Call Queue DND", "directNumber": "+19075552859", "extension": "10079" } } } } }, "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 Secondary Line Owner's Selected Caller ID Settings", "operationId": "getMySecondaryLinesSelectedCallerIDSettings", "description": "Get details of selected caller ID settings associated with a secondary line of the authenticated user.\n\nNote that an authenticated user can only retrieve information for their configured secondary lines.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nSelected Caller ID settings allow users to choose which configuration among available caller IDs is selected currently.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Secondary Line Owner's Selected Caller ID Settings", "operationId": "modifyMySecondaryLinesSelectedCallerIDSettings", "description": "Update selected caller ID settings associated with a secondary line owner of the authenticated user.\n\nNote that an authenticated user can only modify information for their configured secondary lines.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nSelected Caller ID settings allow users to choose which configuration among available caller IDs is selected currently.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": { "type": "DEFAULT_CLID" } }, "schema": { "$ref": "#/components/schemas/SelectedCallerIdSettingsPut" } } } } } }, "/telephony/config/people/me/settings/availableCallerIds": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableCallerIdSettingsGet" }, "example": { "availableCallerIds": [ { "type": "HUNT_GROUP", "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc5", "name": "Hunt Group", "directNumber": "+19075552860", "extension": "10079" } ] } } } }, "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 Available Caller ID List", "operationId": "getMyAvailableCallerIDList", "description": "Get details of available caller IDs of the authenticated user.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nThe available caller ID list shows the caller IDs that the user can choose from.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/availableCallerIds": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableCallerIdSettingsGet" }, "example": { "availableCallerIds": [ { "type": "HUNT_GROUP", "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc5", "name": "Hunt Group", "directNumber": "+19075552860", "extension": "10079" } ] } } } }, "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": "Get My Secondary Line Owner's Available Caller ID List", "operationId": "getMySecondaryLinesAvailableCallerIDList", "description": "Get details of available caller IDs for a secondary line of the authenticated user.\n\nNote that an authenticated user can only retrieve information for their configured secondary lines.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\nThe available caller ID list shows the caller IDs that the user can choose from.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/endpoints": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EndpointListGetObject" }, "example": { "endpoints": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM=", "type": "CALLING_DEVICE", "name": "Webex Go Device", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "mobilitySettings": { "phoneNumber": "+13374831660", "alertingEnabled": false } }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzIyNjBkMDYxLWViNDUtNDJhMi05MmY3LWFkZDMyMzRiYzI0Yw", "type": "APPLICATION", "name": "Webex Tablet Application", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "memberType": "VIRTUAL_LINE" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL0hPVERFU0tJTkdfR1VFU1QvN2FmYTFlNWMtOTFiYS00NzRkLWEzODMtZTAyMDgxZDU3YmE5", "type": "HOTDESKING_GUEST", "name": "Cisco HotDesking", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "memberType": "VIRTUAL_LINE" } ], "host": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS9lMTRhNTFlMC1mM2Q1LTQzNzktOWM2OC1hNWFiY2Y1M2E5MTY=", "type": "CALLING_DEVICE", "name": "Cisco 8861", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8zNDU1MDQ1YS0xN2UyLTQxNzEtOGMwYy02ZWVkMDgwNjM5ZDI=", "ownerType": "PLACE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9iNmYwNzQyNS1lYjgyLTQzMDEtOWRlNy04YWI3NTFjM2ZhZDQ", "memberType": "VIRTUAL_LINE" } ] } } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of My Endpoints", "operationId": "getMyEndpointsList", "description": "Retrieve the list of endpoints associated with the authenticated user.\n\nEndpoints are devices, applications, or hotdesking guest profiles. Endpoints can be owned by an authenticated user or have the user as a secondary line.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/endpoints/{endpointId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Endpoint" }, "example": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS80NmNmMGEyYi0yNTE5LTQ1NGEtYTAzMi1iODYxMWZjYmZkNTQ=", "type": "CALLING_DEVICE", "name": "Cisco 8875", "autoAndForcedAnswerEnabled": true, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYmZhOTM4Ny1kZjQ5LTRkMGQtYjRmMi1jNTMwNDE2YWNlNDQ", "memberType": "PEOPLE" } ] } } } }, "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 Endpoints Details", "operationId": "getMyEndpointDetails", "description": "Get details of an endpoint associated with the authenticated user.\n\nEndpoints are devices, applications, or hotdesking guest profiles. Endpoints can be owned by an authenticated user or have the user as a secondary line.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "endpointId", "in": "path", "description": "Unique identifier of the endpoint.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS80NmNmMGEyYi0yNTE5LTQ1NGEtYTAzMi1iODYxMWZjYmZkNTQ", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Endpoints Details", "operationId": "modifyMyEndpointDetails", "description": "Update alerting settings of the mobility endpoint associated with the authenticated user.\n\nEndpoints are devices, applications, or hotdesking guest profiles. Endpoints can be owned by an authenticated user or have the user as a secondary line.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "endpointId", "in": "path", "description": "Unique identifier of the endpoint.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "mobilitySettings": { "alertingEnabled": true } }, "schema": { "$ref": "#/components/schemas/ModifyEndpointObject" } } } } } }, "/telephony/config/people/me/settings/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallRecordingGetResponseObject" }, "example": { "enabled": true, "vendor": { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "name": "ITFDual", "loginUrl": "https://www.itfdualportal.com" }, "recordingMode": "On Demand", "pauseResumeNotifyMethod": "Beep", "announcementEnabled": true, "warningToneEnabled": false, "warningToneDuration": 70 } } } }, "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 Call Recording Settings", "operationId": "getMyCallRecordingSettings", "description": "Get details of call recording settings associated with the authenticated user.\n\nCall recording settings allow you to access and customize options that determine when and how your calls are recorded, providing control over recording modes and notifications.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallRecordingGetResponseObject" }, "example": { "enabled": true, "vendor": { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "name": "ITFDual", "loginUrl": "https://www.itfdualportal.com" }, "recordingMode": "On Demand", "pauseResumeNotifyMethod": "Beep", "announcementEnabled": true, "warningToneEnabled": false, "warningToneDuration": 70 } } } }, "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 Secondary Line Owner's Call Recording Settings", "operationId": "getMySecondaryLinesCallRecordingSettings", "description": "Get details of call recording settings associated with a secondary line of the authenticated user.\n\nNote that an authenticated user can only retrieve information for their configured secondary lines.\n\nCall recording settings allow you to access and customize options that determine when and how your calls are recorded, providing control over recording modes and notifications.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserProfileGetResponseObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYWZiM2JhYi1hN2UxLTQ1ZGUtYmYzZS1kOWUxMzkxYzU0Yjk", "lastName": "Doe", "firstName": "John", "email": "john.doe@gmail.com", "announcementLanguage": "English", "locationDialingCode": "8327", "supportMobility": false, "emergencyCallBackNumber": "+16232992720", "phoneNumbers": [ { "directNumber": "+441234222304", "enterprise": "832731599", "extension": "31599", "routingPrefix": "8327", "esn": "832731599", "primary": true }, { "directNumber": "+441234200015", "enterprise": "832731587", "extension": "31587", "routingPrefix": "8327", "esn": "832731587", "primary": false } ], "devices": [ { "description": [], "model": "DMS Cisco 8865", "mac": "110723241134", "primaryOwner": true, "type": "PRIMARY", "owner": { "lastName": "Mac", "firstName": "Jone", "type": "PEOPLE" }, "activationState": "ACTIVATED" } ], "location": { "name": "Brampton", "address": { "address1": "mclean", "address2": "mclean", "city": "mclean", "state": "GB-BGE", "postalCode": "112233", "country": "GB" } }, "receptionistUrl": "https://cisco.receptionist.cloud", "callingHostUrl": "https://var-int.broadcloudpbx.net", "attendantConsoleUrl": "https://cisco.receptionist.cloud" } } } }, "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": "getMyOwnDetails", "description": "Get profile details for the authenticated user.\n\nProfile details include the user's name, email, location and calling details.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/featureAccessCode": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FeatureAccessCodeListGetObject" }, "example": { "featureAccessCodeList": [ { "name": "Call Forwarding Busy Interrogation", "code": "*67*", "alternateCode": "*18" }, { "name": "Cancel Call Waiting", "code": "*70" }, { "name": "Call Waiting Interrogation", "code": "*53*", "alternateCode": "*38" } ] } } } }, "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 Feature Access Codes", "operationId": "getMyFeatureAccessCodes", "description": "Retrieve all Feature Access Codes configured for services that are assigned to the authenticated user. For each feature access code, the name and code are returned. If an alternate code is defined, it is also returned.\n\nFeature access codes (FACs), also known as star codes, give users access to advanced calling features.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/featureAccessCode": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FeatureAccessCodeListGetObject" }, "example": { "featureAccessCodeList": [ { "name": "Call Forwarding Busy Interrogation", "code": "*67*", "alternateCode": "*18" }, { "name": "Cancel Call Waiting", "code": "*70" }, { "name": "Call Waiting Interrogation", "code": "*53*", "alternateCode": "*38" } ] } } } }, "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 Feature Access Codes For Secondary Line Owner", "operationId": "getMySecondaryLinesFeatureAccessCodes", "description": "Retrieve all Feature Access Codes configured for services that are assigned for the secondary line owner. For each feature access code, the name and code are returned. If an alternate code is defined, it is also returned.\n\nFeature access codes (FACs), also known as star codes, give users access to advanced calling features.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/executive/assignedAssistants": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAssignedAssistantsGet" }, "example": { "allowOptInOutEnabled": true, "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true, "location": { "name": "Bangalore", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg" } } ] } } } }, "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 Executive Assigned Assistants", "operationId": "getMyExecutiveAssignedAssistants", "description": "Get list of assigned executive assistants for an authenticated user.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Executive Assigned Assistants", "operationId": "modifyMyExecutiveAssignedAssistants", "description": "Update assigned executive assistants for the authenticated user.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "allowOptInOutEnabled": false, "assistantIds": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMzRmNjdhNS1kYTFiLTQxYzUtODBkNS03ZDFmZTY3ZTE5ZTY" ] }, "schema": { "$ref": "#/components/schemas/ExecutiveAssignedAssistantsPatchRequestObject" } } } } } }, "/telephony/config/people/me/settings/executive/availableAssistants": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAvailableAssistantsGet" }, "example": { "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079" } ] } } } }, "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 Executive Available Assistants", "operationId": "getMyExecutiveAvailableAssistants", "description": "Get a list of available executive assistants for the authenticated user.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/executive/assistant": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAssistantSettingsGet" }, "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+14155551234", "executives": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "firstName": "John", "lastName": "Doe", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": 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 My Executive Assistant Settings", "operationId": "getMyExecutiveAssistantSettings", "description": "Get settings for an executive assistant.\n\nExecutive assistants can make, answer, intercept, and route calls appropriately on behalf of their executive.\nAssistants can also set the call forwarding destination, and join or leave an executive’s pool.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Executive Assistant Settings", "operationId": "modifyMyExecutiveAssistantSettings", "description": "Update Settings for an executive assistant.\n\nExecutive assistants can make, answer, intercept, and route calls appropriately on behalf of their executive.\nAssistants can also set the call forwarding destination, and join or leave an executive’s pool.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+19075552860", "executives": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "optInEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveAssistantSettingsPut" } } } } } }, "/telephony/config/people/me/settings/services": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceObject" }, "example": { "services": [ "Anonymous Call Rejection", "Call Forwarding Always", "Call Forwarding Busy", "Call Forwarding No Answer", "Call Notify" ] } } } }, "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 Calling Services List", "operationId": "getMyCallingServicesList", "description": "Retrieves the list of enabled calling services for the authenticated user.\n\nThese services are designed to improve call handling and ensure that users can manage their communications effectively. They are commonly found in both personal and business telephony systems.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/services": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceObject" }, "example": { "services": [ "Anonymous Call Rejection", "Call Forwarding Always", "Call Forwarding Busy", "Call Forwarding No Answer", "Call Notify" ] } } } }, "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 Secondary Line Owner Calling Services List", "operationId": "getMySecondaryLinesCallingServicesList", "description": "Retrieves the list of enabled calling services for the secondary line owner of the authenticated user.\n\nThese services are designed to improve call handling and ensure that users can manage their communications effectively. They are commonly found in both personal and business telephony systems.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/singleNumberReach": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSingleNumberReachObject" }, "example": { "enabled": true, "alertAllLocationsForClickToDialCallsEnabled": false, "alertAllLocationsForGroupPagingCallsEnabled": true, "numbers": [ { "phoneNumber": "+19075552859", "name": "John", "enabled": true, "doNotForwardCallsEnabled": true, "answerConfirmationEnabled": 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 User's Single Number Reach Settings", "operationId": "getMySingleNumberReachSettings", "description": "Retrieves all single number reach settings configured for the authenticated user.\n\nThe \"Single Number Reach\" feature in Webex allows users to access their business phone capabilities from any device, making it easy to make and receive calls as if at their office. This is especially useful for remote or mobile workers needing flexibility.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify User's Single Number Reach Settings", "operationId": "modifyMySingleNumberReachSettings", "description": "Updates single number reach settings associated with the authenticated user.\n\nThe \"Single Number Reach\" feature in Webex allows users to access their business phone capabilities from any device, making it easy to make and receive calls as if at their office. This is especially useful for remote or mobile workers needing flexibility.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "alertAllLocationsForClickToDialCallsEnabled": true }, "schema": { "$ref": "#/components/schemas/UserSingleNumberReachPatchRequestObject" } } } } } }, "/telephony/config/people/me/settings/singleNumberReach/numbers": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the phone number." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU1TnpnNU5EWTJOelkz" } } } }, "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": "Add phone number as User's Single Number Reach", "operationId": "addPhoneNumberAsSingleNumberReach", "description": "Add a phone number as a single number reach for the authenticated user.\n\nThe \"Single Number Reach\" feature in Webex allows users to access their business phone capabilities from any device, making it easy to make and receive calls as if at their office. This is especially useful for remote or mobile workers needing flexibility.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "phoneNumber": "+19075552859", "name": "John", "enabled": true, "doNotForwardCallsEnabled": true, "answerConfirmationEnabled": false }, "schema": { "$ref": "#/components/schemas/PostNumberForSingleReachNumber" } } } } } }, "/telephony/config/people/me/settings/singleNumberReach/numbers/{phoneNumberId}": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify User's Single Number Reach Contact Settings", "operationId": "modifyMySingleNumberReachContactSettings", "description": "Update the contact settings of single number reach for the authenticated user.\n\nThe \"Single Number Reach\" feature in Webex allows users to access their business phone capabilities from any device, making it easy to make and receive calls as if at their office. This is especially useful for remote or mobile workers needing flexibility.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "phoneNumberId", "in": "path", "description": "Unique identifier of the phone number.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU0T1RjMk5UUXpNekUx", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumber": "+19075552859", "name": "John", "enabled": true, "doNotForwardCallsEnabled": true, "answerConfirmationEnabled": false }, "schema": { "$ref": "#/components/schemas/SingleNumberReachNumber" } } } } }, "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 User's Single Number Reach Contact Settings", "operationId": "deleteMySingleNumberReachContactSettings", "description": "Delete contact settings associated with the authenticated user.\n\nThe \"Single Number Reach\" feature in Webex allows users to access their business phone capabilities from any device, making it easy to make and receive calls as if at their office. This is especially useful for remote or mobile workers needing flexibility.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "phoneNumberId", "in": "path", "description": "Unique identifier of the phone number.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU0T1RjMk5UUXpNekUx", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardingInfo" }, "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": 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": "Read My Call Forwarding Settings", "operationId": "getMyCallForwardingSettings", "description": "Read call forwarding settings associated with the authenticated user.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure My Call Forwarding Settings", "operationId": "modifyMyCallForwardingSettings", "description": "Update call forwarding settings associated with the authenticated user.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/CallForwardingPut" } } } } } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardingInfo" }, "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": 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 My Secondary Line Owner's Call Forwarding Settings", "operationId": "getMySecondaryLinesCallForwardingSettings", "description": "Get details of call forwarding settings associated with a secondary line of the authenticated user.\n\nNote that an authenticated user can only retrieve information for their configured secondary lines.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Secondary Line Owner's Call Forwarding Settings", "operationId": "modifyMySecondaryLinesCallForwardingSettings", "description": "Update call forwarding settings associated with a secondary line owner of the authenticated user.\n\nNote that an authenticated user can only modify information for their configured secondary lines.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/CallForwardingPut" } } } } } }, "/telephony/config/people/me/settings/callPickupGroup": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallPickupGroupSettingsGet" }, "example": { "groupName": "Business Agents Call Pickup", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "departmentName": "Electric", "directNumber": "+19075551234", "extension": "1234", "email": "abc@gmail.com" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Get My Call Pickup Group Settings", "operationId": "getMyCallPickupGroupSettings", "description": "Get Call Pickup Group Settings for the authenticated user.\n\nCall pickup group enables a user to answer any ringing line within their pickup group. A call pickup group is an administrator-defined set of users within a location, to which the call pickup feature applies.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/callPickupGroup": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallPickupGroupSettingsGet" }, "example": { "groupName": "Business Agents Call Pickup", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "departmentName": "Electric", "directNumber": "+19075551234", "extension": "1234", "email": "abc@gmail.com" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Get My Secondary Line Owner Call Pickup Group Settings", "operationId": "getMySecondaryLinesCallPickupGroupSettings", "description": "Get Call Pickup Group Settings for the secondary line owner of the authenticated user.\n\nNote that the secondary line information is only available for the authenticated user.\n\nCall pickup group enables a user to answer any ringing line within their pickup group. A call pickup group is an administrator-defined set of users within a location, to which the call pickup feature applies.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/callPark": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallParkSettingsGetResponseObject" }, "example": { "groupName": "technical support - cards - customer 1", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "displayName": "John Doe" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzgzYjQ0OTIyLWZlOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "type": "PLACE", "displayName": "Jack Hughes" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85M2I0NDkyMi1mZTlmLTExZWItYTRiOC0zMzYyN2JlZDY3YjY", "type": "VIRTUAL_LINE", "firstName": "Smith", "lastName": "Bob", "displayName": "Bob Smith" } ] } } } }, "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 Call Park Settings", "operationId": "getMyCallParkSettings", "description": "Get details of call park settings associated with the authenticated user.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/callPark": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallParkSettingsGetResponseObject" }, "example": { "groupName": "technical support - cards - customer 1", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "displayName": "John Doe" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzgzYjQ0OTIyLWZlOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "type": "PLACE", "displayName": "Jack Hughes" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85M2I0NDkyMi1mZTlmLTExZWItYTRiOC0zMzYyN2JlZDY3YjY", "type": "VIRTUAL_LINE", "firstName": "Smith", "lastName": "Bob", "displayName": "Bob Smith" } ] } } } }, "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 Secondary Line Owner Call Park Settings", "operationId": "getMySecondaryLinesCallParkSettings", "description": "Get details of call park settings for the secondary line owner of the authenticated user.\n\nNote that the secondary line information is only available for the authenticated user.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/voicemail": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Voicemail Settings for a Person", "operationId": "modifyMyVoicemailSettings", "description": "Configure a person's voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a user auth token with a scope of `spark-admin:people_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "notifications": { "enabled": true, "destination": "julie@example.com" }, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT" }, "sendUnansweredCalls": { "enabled": false, "greeting": "CUSTOM", "numberOfRings": 3 }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" } }, "schema": { "$ref": "#/components/schemas/VoicemailPut" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailInfo" }, "example": { "enabled": true, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": false, "audioFile": { "name": "customGreeting.wav", "mediaType": "WAV" } }, "sendUnansweredCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": true, "numberOfRings": 3, "systemMaxNumberOfRings": 20, "audioFile": { "name": "customGreeting.wav", "mediaType": "WAV" } }, "notifications": { "enabled": true, "destination": "julie@example.com" }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" }, "messageStorage": { "mwiEnabled": true, "storageType": "INTERNAL", "externalEmail": "julia@example.com" }, "faxMessage": { "enabled": false }, "voiceMessageForwardingEnabled": 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": "Read Voicemail Settings for a Person", "operationId": "getMyVoicemailSettings", "description": "Retrieve a person's voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a user auth token with a scope of `spark-admin:people_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/voicemail": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Secondary Line Owner's Voicemail Settings", "operationId": "modifyMySecondaryLinesVoicemailSettings", "description": "Update voicemail settings associated with a secondary line owner of the authenticated user.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a user auth token with a scope of `spark-admin:people_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "notifications": { "enabled": true, "destination": "julie@example.com" }, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT" }, "sendUnansweredCalls": { "enabled": false, "greeting": "CUSTOM", "numberOfRings": 3 }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" } }, "schema": { "$ref": "#/components/schemas/VoicemailPut" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailInfo" }, "example": { "enabled": true, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": false }, "sendUnansweredCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": true, "numberOfRings": 3, "systemMaxNumberOfRings": 20 }, "notifications": { "enabled": true, "destination": "julie@example.com" }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" }, "messageStorage": { "mwiEnabled": true, "storageType": "INTERNAL", "externalEmail": "julia@example.com" }, "faxMessage": { "enabled": false }, "voiceMessageForwardingEnabled": 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 My Secondary Line Owner's Voicemail Settings", "operationId": "getMySecondaryLinesVoicemailSettings", "description": "GET voicemail settings for a secondary line of the authenticated user.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a user auth token with a scope of `spark-admin:people_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/callBlock": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserBlockGetResponseObject" }, "example": { "numbers": [ { "id": "KzE4OTc2NTQzMjE1", "phoneNumber": "+18976543215" }, { "id": "KzE4OTc2NTQzMzE1", "phoneNumber": "+18976543315" }, { "id": "KzE4OTc2NTQzNDE1", "phoneNumber": "+18976543415" }, { "id": "KzE5OTc2NTQzNDE1", "phoneNumber": "+19976543415" } ] } } } }, "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 Call Block Settings", "operationId": "getMyCallBlockSettings", "description": "Get details of call block settings associated with the authenticated user.\n\nCall block settings allow you to get the User Call Block Number List.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/callBlock/numbers": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the phone number." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU1TnpnNU5EWTJOelkz" } } } }, "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": "Add a phone number to user's Call Block List", "operationId": "addPhoneNumberToMyCallBlockList", "description": "Add a phone number to the call block list for the authenticated user.\n\nCall block settings allow you to get the User Call Block Number List.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "phoneNumber": "+19075552859" }, "schema": { "$ref": "#/components/schemas/CallBlockNumberPost" } } } } } }, "/telephony/config/people/me/settings/callBlock/numbers/{phoneNumberId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserBlockStateGetResponseObject" }, "example": { "blockCallsEnabled": 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 My Call Block State For Specific Number", "operationId": "getMyCallBlockStateForASpecificNumber", "description": "Get call block state details for a specific number associated with the authenticated user.\n\nCall block settings allow you to get the User Call Block Number List.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "phoneNumberId", "in": "path", "description": "Unique identifier of the phone number.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU0T1RjMk5UUXpNekUx", "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 User Call Block Number", "operationId": "deleteMyCallBlockNumber", "description": "Delete call block number settings associated with the authenticated user.\n\nCall block settings allow you to delete a number from the User Call Block Number List.\n\nThis API requires a user auth token with a scope of `spark-admin:people_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "phoneNumberId", "in": "path", "description": "Unique identifier of the phone number.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi9LekU0T1RjMk5UUXpNekUx", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/monitoring": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MonitoringSettingsGetResponseObject" }, "example": { "callParkNotificationEnabled": true, "monitoredElements": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "lastName": "Nelson", "firstName": "John", "displayName": "John Nelson", "type": "PEOPLE", "email": "john.nelson@gmail.com", "extension": "50003", "esn": "50003", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "displayName": "Dallas-Test", "type": "CALL_PARK_EXTENSION", "extension": "10082", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" }, { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9mZTg5NmVmMC1iYTk3LTQ3NGYtOTMwZS03ODQxYzUwMjFhNDU=", "displayName": "TXS16 ConfRoom1", "type": "PLACE", "email": "fe896ef0-ba97-474f-930e-7841c5021a45@csg1test.room.wbx2.com", "directNumber": "+15594015485", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" } ] } } } }, "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 Monitoring Settings", "operationId": "getMyMonitoringSettings", "description": "Retrieves the monitoring settings of the logged in person, which shows specified people, places, virtual lines or call park extensions that are being monitored.\n\nMonitors the line status which indicates if a person, place or virtual line is on a call and if a call has been parked on that extension.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/queues": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallQueueSettingsGetResponseObject" }, "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "hasCxEssentials": true, "available": true, "skillLevel": 1, "phoneNumber": "+18555550101", "extension": "50001", "allowLogOffEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "hasCxEssentials": false, "available": false, "extension": "50002", "allowLogOffEnabled": 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 My Call Center Settings", "operationId": "getMyCallCenterSettings", "description": "Retrieves the call center settings and list of all call centers the logged in user belongs to.\n\nCalls from the Call Centers are routed to agents based on configuration. An agent can be assigned to one or more call queues and can be managed by supervisors.\nThe user must have the call center service assigned.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Call Center Settings", "operationId": "modifyMyCallCenterSettings", "description": "Modify the call center settings and availability for an agent in one or more call centers to which the logged in user belongs.\n\nCalls from the Call Centers are routed to agents based on configuration. An agent can be assigned to one or more call queues and can be managed by supervisors.\nContains a list specifying the desired availability status of one or more call centers.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "available": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "available": false } ] }, "schema": { "$ref": "#/components/schemas/CallQueueSettingsPut" } } } } } }, "/telephony/config/people/me/settings/secondaryLines/{lineownerId}/queues": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallQueueSettingsGetResponseObject" }, "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "hasCxEssentials": true, "available": true, "skillLevel": 1, "phoneNumber": "+18555550101", "extension": "50001", "allowLogOffEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "hasCxEssentials": false, "available": false, "extension": "50002", "allowLogOffEnabled": 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 My Secondary Line Owner's Call Center Settings", "operationId": "getMySecondaryLinesCallCenterSettings", "description": "Retrieves the call center settings and list of all call centers associated with a secondary line of the authenticated user.\nNote that an authenticated user can only retrieve information for their configured secondary lines.\n\nCalls from the Call Centers are routed to agents based on configuration. An agent can be assigned to one or more call queues and can be managed by supervisors.\nThe secondary line must have the call center service assigned.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify My Secondary Line Owner's Call Center Settings", "operationId": "modifyMySecondaryLinesCallCenterSettings", "description": "Modify the call center settings and availability for an agent in one or more call centers associated with a secondary line owner of the authenticated user.\nNote that an authenticated user can only modify information for their configured secondary lines.\n\nCalls from the Call Centers are routed to agents based on configuration. An agent can be assigned to one or more call queues and can be managed by supervisors.\nContains a list specifying the desired availability status of one or more call centers.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me" ], "parameters": [ { "name": "lineownerId", "in": "path", "description": "Unique identifier for the secondary line owner (applicable only for Virtual Lines).", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "available": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "available": false } ] }, "schema": { "$ref": "#/components/schemas/CallQueueSettingsPut" } } } } } }, "/telephony/config/people/me/settings/callPolicies": { "get": { "responses": { "200": { "description": "Call policies retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallPoliciesGet" }, "example": { "connectedLineIdPrivacyOnRedirectedCalls": "NO_PRIVACY" } } } }, "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 Call Policies Settings for User", "operationId": "getMyCallPoliciesSettings", "description": "Get call policies settings for the authenticated user.\n\nCall Policies in Webex allow you to manage how your call information is displayed and handled. You can view privacy settings for your connected line ID on redirected calls and review other call-related preferences.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Call policies updated successfully for the authenticated user." }, "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": "Modify Call Policies Settings for User", "operationId": "updateMyCallPoliciesSettings", "description": "Update call policies settings for the authenticated user.\n\nCall Policies in Webex allow you to manage how your call information is displayed and handled. You can configure privacy settings for your connected line ID on redirected calls and control other call-related preferences.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "connectedLineIdPrivacyOnRedirectedCalls": "NO_PRIVACY" }, "schema": { "$ref": "#/components/schemas/UserCallPoliciesPut" } } } } } }, "/telephony/config/people/me/settings/executive/screening": { "get": { "responses": { "200": { "description": "User executive screening settings retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveScreeningGet" }, "example": { "enabled": true, "alertType": "SILENT", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": 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 User Executive Screening Settings", "operationId": "getMyExecutiveScreeningSettings", "description": "Get executive screening settings for the authenticated user.\n\nExecutive Screening in Webex allows you to manage how incoming calls are screened and alerted based on your preferences. You can enable or disable executive screening and configure alert types and locations for notifications.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [] }, "put": { "responses": { "204": { "description": "User executive screening settings modified successfully." }, "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": "Modify User Executive Screening Settings", "operationId": "updateMyExecutiveScreeningSettings", "description": "Update executive screening settings for the authenticated user.\n\nExecutive Screening in Webex allows you to manage how incoming calls are screened and alerted based on your preferences. You can enable or disable executive screening and configure alert types and locations for notifications.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "alertType": "RING_SPLASH", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": false }, "schema": { "$ref": "#/components/schemas/ExecutiveScreeningPut" } } } } } }, "/telephony/config/people/me/settings/executive/callFiltering": { "get": { "responses": { "200": { "description": "User executive call filtering settings retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringGet" }, "example": { "enabled": true, "filterType": "CUSTOM_CALL_FILTERS", "criteria": [ { "id": "ZmlsdGVyMQ==", "filterName": "VIP Callers", "source": "SELECT_PHONE_NUMBERS", "activationEnabled": true, "filterEnabled": 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 User Executive Call Filtering Settings", "operationId": "getMyExecutiveCallFilteringSettings", "description": "Get executive call filtering settings for the authenticated user.\n\nExecutive Call Filtering in Webex allows you to control which calls are allowed to reach the executive assistant based on custom criteria, such as specific phone numbers or call types. You can enable or disable call filtering and configure filter rules to manage incoming calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Executive call filtering settings modified successfully." }, "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": "Modify User Executive Call Filtering Settings", "operationId": "updateMyExecutiveCallFilteringSettings", "description": "Update executive call filtering settings for the authenticated user.\n\nExecutive Call Filtering in Webex allows you to control which calls are allowed to reach the executive assistant based on custom criteria, such as specific phone numbers or call types. You can enable or disable call filtering and configure filter rules to manage incoming calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "filterType": "CUSTOM_CALL_FILTERS", "criteriaActivation": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "activationEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringPatch" } } } } } }, "/telephony/config/people/me/settings/executive/callFiltering/criteria/{id}": { "get": { "responses": { "200": { "description": "User executive call filtering criteria retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "filterName": "VIP Callers", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] } } } }, "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 User Executive Call Filtering Criteria Settings", "operationId": "getMyExecutiveCallFilteringCriteria", "description": "Get executive call filtering criteria settings for the authenticated user.\n\nExecutive Call Filtering Criteria in Webex allows you to retrieve detailed configuration for a specific filter rule. This includes schedule settings, phone number filters, and call routing preferences for executive call filtering.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0`." } ] }, "put": { "responses": { "200": { "description": "Executive call filtering criteria updated successfully. Returns the updated criteria ID.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1JFU1VSTkFNRV9IRVJF" } } } }, "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": "Modify User Executive Call Filtering Criteria Settings", "operationId": "updateMyExecutiveCallFilteringCriteria", "description": "Update executive call filtering criteria settings for the authenticated user.\n\nExecutive Call Filtering Criteria in Webex allows you to modify detailed configuration for a specific filter rule. This includes updating schedule settings, phone number filters, and call routing preferences for executive call filtering.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0`." } ], "requestBody": { "content": { "application/json": { "example": { "filterName": "VIP Callers Updated", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaPatch" } } } } }, "delete": { "summary": "Delete User Executive Call Filtering Criteria", "operationId": "deleteMyExecutiveCallFilteringCriteria", "description": "Delete a specific executive call filtering criteria for the authenticated user.\n\nExecutive Call Filtering Criteria in Webex allows you to manage detailed filter rules for incoming calls. This API removes a specific filter rule by its unique identifier.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0`." } ], "responses": { "204": { "description": "Executive call filtering criteria deleted successfully. No content is returned." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/bargeIn": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BargeInInfo" }, "example": { "enabled": true, "toneEnabled": 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 Barge-In Settings", "operationId": "getBargeInSettings", "description": "Retrieve Barge-In settings of the user.\n\nThe Barge-In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge-In can be used across locations.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Settings Features For Barge-In" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Barge-In Settings", "operationId": "configureBargeInSettings", "description": "Configure person's Barge-In settings.\n\nThe Barge-In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge-In can be used across locations.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Settings Features For Barge-In" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "toneEnabled": true }, "schema": { "$ref": "#/components/schemas/BargeInPut" } } } } } }, "/telephony/config/people/me/settings/doNotDisturb": { "get": { "responses": { "200": { "description": "Do Not Disturb settings retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DoNotDisturbGet" }, "example": { "enabled": true, "ringSplashEnabled": false, "webexGoOverrideEnabled": 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 Do Not Disturb Settings for User", "operationId": "getMyDoNotDisturbSettings", "description": "Get Do Not Disturb settings for the authenticated user.\n\nDo Not Disturb (DND) enables users to block or silence incoming calls on their phone. When activated, the phone either stops ringing or rejects calls depending on the configured option, but users can still see call information and answer calls if desired.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Do Not Disturb settings updated successfully for the authenticated user." }, "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": "Modify Do Not Disturb Settings for User", "operationId": "updateMyDoNotDisturbSettings", "description": "Update Do Not Disturb settings for the authenticated user.\n\nDo Not Disturb (DND) enables users to block or silence incoming calls on their phone. When activated, the phone either stops ringing or rejects calls depending on the configured option, but users can still see call information and answer calls if desired.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "ringSplashEnabled": false, "webexGoOverrideEnabled": false }, "schema": { "$ref": "#/components/schemas/DoNotDisturbPut" } } } } } }, "/telephony/config/people/me/settings/executive/callFiltering/criteria": { "post": { "summary": "Add User Executive Call Filtering Criteria", "operationId": "createMyExecutiveCallFilteringCriteria", "description": "Create a new executive call filtering criteria for the authenticated user.\n\nExecutive Call Filtering Criteria in Webex allows you to define detailed filter rules for incoming calls. This API creates a new filter rule with the specified configuration, including schedule, phone numbers, and call routing preferences.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaPatch" }, "example": { "filterName": "VIP Callers", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] } } } }, "responses": { "200": { "description": "Executive call filtering criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1ZJUF9DQUxMRVJTIg==" } } } }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/executive/alert": { "get": { "responses": { "200": { "description": "User executive alert settings retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAlertGet" }, "example": { "alertingMode": "SEQUENTIAL", "nextAssistantNumberOfRings": 3, "rolloverEnabled": true, "rolloverAction": "VOICE_MESSAGING", "rolloverForwardToPhoneNumber": "+14085267209", "rolloverWaitTimeInSecs": 60, "clidNameMode": "EXECUTIVE_ORIGINATOR", "customCLIDName": "John Anderson", "customCLIDNameInUnicode": "", "clidPhoneNumberMode": "EXECUTIVE", "customCLIDPhoneNumber": "+14085267208" } } } }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Get User Executive Alert Settings", "operationId": "getMyExecutiveAlertSettings", "description": "Get executive alert settings for the authenticated user.\n\nExecutive Alert settings in Webex allow you to control how calls are routed to executive assistants, including alerting mode, rollover options, and caller ID presentation. You can configure settings such as sequential or simultaneous alerting, and specify what happens when calls aren't answered.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [] }, "put": { "responses": { "204": { "description": "User executive alert settings modified successfully." }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Modify User Executive Alert Settings", "operationId": "updateMyExecutiveAlertSettings", "description": "Update executive alert settings for the authenticated user.\n\nExecutive Alert settings in Webex allow you to control how calls are routed to executive assistants, including alerting mode, rollover options, and caller ID presentation. You can configure settings such as sequential or simultaneous alerting, and specify what happens when calls aren't answered.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "alertingMode": "SEQUENTIAL", "nextAssistantNumberOfRings": 3, "rolloverEnabled": true, "rolloverAction": "VOICE_MESSAGING", "rolloverForwardToPhoneNumber": "", "rolloverWaitTimeInSecs": 60, "clidNameMode": "EXECUTIVE_ORIGINATOR", "customCLIDNameInUnicode": "", "clidPhoneNumberMode": "EXECUTIVE", "customCLIDPhoneNumber": "" }, "schema": { "$ref": "#/components/schemas/ExecutiveAlertPut" } } } } } }, "/telephony/config/people/me/countries/{countryCode}": { "get": { "summary": "Get country-specific telephony configuration requirements", "description": "Retrieve country-specific telephony configuration requirements for the authenticated user.\n\nWebex Calling supports multiple regions and time zones to validate and present the information using the local date and time, as well as localized dialing rules.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "parameters": [ { "name": "countryCode", "in": "path", "required": true, "schema": { "type": "string" }, "description": "The ISO country code for which configuration requirements are requested.", "example": "US" } ], "responses": { "200": { "description": "Country-specific telephony configuration requirements retrieved successfully.", "content": { "application/json": { "schema": { "type": "object", "properties": { "stateRequired": { "type": "boolean", "description": "If `stateRequired` should be a Mandatory field in UI" }, "zipCodeRequired": { "type": "boolean", "description": "If `zipCodeRequired` should be a Mandatory field in UI" }, "states": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string", "description": "State Code" }, "name": { "type": "string", "description": "State Name" } } } }, "timeZones": { "type": "array", "items": { "type": "string" }, "description": "List of supported timezones for the country." } }, "example": { "stateRequired": true, "zipCodeRequired": false, "states": [ { "code": "CA", "name": "California" }, { "code": "NY", "name": "New York" } ], "timeZones": [ "America/Los_Angeles", "America/New_York" ] } } } } }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "operationId": "getCountryTelephonyConfigRequirements" } }, "/telephony/config/people/me/announcementLanguages": { "get": { "summary": "Get announcement languages for the authenticated user", "description": "Retrieve the list of available announcement languages for the authenticated user's telephony configuration.\n\nAnnouncement languages determine the language used for system prompts and announcements during calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Beta Call Settings For Me With Userhub Phase1" ], "operationId": "getAnnouncementLanguagesForMe", "responses": { "200": { "description": "Announcement languages retrieved successfully.", "content": { "application/json": { "schema": { "type": "object", "properties": { "languages": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string", "description": "Language Name" }, "code": { "type": "string", "description": "Language Code" } } } } }, "example": { "languages": [ { "name": "English", "code": "en" }, { "name": "Spanish", "code": "es" } ] } }, "examples": { "success": { "summary": "A list of announcement languages", "value": { "languages": [ { "name": "English", "code": "en" }, { "name": "Spanish", "code": "es" } ] } } } } } }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } } } }, "/telephony/config/people/me/settings/callCaptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserCallCaptionsObject" }, "example": { "userClosedCaptionsEnabled": true, "userTranscriptsEnabled": 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 my call captions settings", "operationId": "getMyCallCaptionsSettings", "description": "Retrieve the effective call captions settings of the authenticated user.\n\n**NOTE**: The call captions feature is not supported for Webex Calling Standard users or users assigned to locations in India.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me" ], "parameters": [] } }, "/telephony/config/people/me/settings/priorityAlert": { "get": { "responses": { "200": { "description": "Priority Alert Settings retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PriorityAlertGet" }, "example": { "enabled": false, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "notificationEnabled": false } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Priority Alert Settings", "operationId": "getMyPriorityAlertSettings", "description": "Get Priority Alert Settings for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Priority Alert Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Priority Alert Settings for User", "operationId": "updateMyPriorityAlertSettings", "description": "Update Priority Alert Settings for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/PriorityAlertPatch" } } } } } }, "/telephony/config/people/me/settings/priorityAlert/criteria": { "post": { "summary": "Add a Priority Alert Criteria", "operationId": "createMyPriorityAlertCriteria", "description": "Create a Priority Alert Criteria for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PriorityAlertCriteriaPatch" }, "example": { "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "notificationEnabled": true } } } }, "responses": { "200": { "description": "Priority Alert Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/priorityAlert/criteria/{id}": { "get": { "responses": { "200": { "description": "Call Priority Alert Criteria Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PriorityAlertCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "notificationEnabled": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Priority Alert Criteria Settings", "operationId": "getMyPriorityAlertCriteriaSettings", "description": "Get Priority Alert Criteria Settings for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the priority alert criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ] }, "put": { "responses": { "204": { "description": "Priority Alert Criteria Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Settings for a Priority Alert Criteria", "operationId": "updateMyPriorityAlertCriteriaSettings", "description": "Modify Priority Alert Criteria Settings for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This API allows modifying attributes such as name, phoneNumbers etc for a particular criteria.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the priority alert criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Holiday V2", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "notificationEnabled": false, "phoneNumbers": [ "+16177817766" ] }, "schema": { "$ref": "#/components/schemas/PriorityAlertCriteriaPatch" } } } } }, "delete": { "summary": "Delete a Priority Alert Criteria", "operationId": "deleteMyPriorityAlertCriteria", "description": "Delete a Priority Alert criteria for the authenticated user.\n\nPriority alert allows you to set up a unique ringtone based on predefined criteria. This API removes a specific criteria rule by its unique identifier.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the priority alert criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Priority Alert criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/schedules": { "get": { "responses": { "200": { "description": "Schedules retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserScheduleListGetResponse" }, "example": { "schedules": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "name": "Schedule1", "type": "businessHours", "level": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVkdWaGJTQkliMnhwWkdGNQ", "name": "Team Holiday", "type": "holidays", "level": "LOCATION" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 User (and Location) Schedules", "operationId": "getMySchedules", "description": "Get Schedules for Call Settings for the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [] }, "post": { "summary": "Add a User level Schedule for Call Settings", "operationId": "createMySchedule", "description": "Create a new Schedule for the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserSchedulePostRequest" }, "example": { "name": "Holiday V2", "type": "businessHours", "events": [ { "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } } ] } } } }, "responses": { "200": { "description": "Schedule created successfully. Returns the Schedule ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/schedules/{scheduleType}/{scheduleId}": { "get": { "responses": { "200": { "description": "Schedule retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserScheduleGetResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "type": "businessHours", "name": "Schedule1", "events": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "EVENT NAME", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurDaily": { "recurInterval": 1 } } }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUm5KcFpHRjVJREk9", "name": "Friday 2", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 User Schedule", "operationId": "getMySchedule", "description": "Get a Schedule details for Call Settings of the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Retrieve the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Schedule Configurations updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify User Schedule", "operationId": "updateMySchedule", "description": "Modify a Schedule details for Call Settings of the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Update the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Schedule1", "events": [ { "name": "EVENT NAME", "newName": "Event Name", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurDaily": { "recurInterval": 1 } } }, { "name": "Friday 2", "newName": "Weekly Event", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] }, "schema": { "$ref": "#/components/schemas/UserSchedulePatchRequest" } } } } }, "delete": { "summary": "Delete a User Schedule", "operationId": "deleteMyUserSchedule", "description": "Delete a specific schedule for the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Delete the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } } ], "responses": { "204": { "description": "Schedule deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/schedules/{scheduleType}/{scheduleId}/events": { "post": { "summary": "Add an event for a User Schedule", "operationId": "createMyScheduleEvent", "description": "Create a new Event for for the authenticated user's specified schedule.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "add an event for the specified schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserScheduleEventPostRequest" }, "example": { "name": "Schedule1", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "startTime": "09:00", "endTime": "18:00", "recurrence": { "recurForEver": false, "recurEndDate": "2023-02-06", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } } } }, "responses": { "200": { "description": "Schedule Event created successfully. Returns the user schedule event ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/schedules/{scheduleType}/{scheduleId}/events/{eventId}": { "get": { "responses": { "200": { "description": "Schedule Event retrieved successfully for the authenticated user's specified schedule.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserScheduleEvent" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "Schedule1", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "startTime": "09:00", "endTime": "18:00", "recurrence": { "recurForEver": false, "recurEndDate": "2023-02-06", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 User Schedule Event", "operationId": "getMyScheduleEvent", "description": "Get a Schedule Event details for Call Settings of the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Retrieve the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Retrieve the event with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Schedule Event Configurations updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify User Schedule Event", "operationId": "updateMyScheduleEvent", "description": "Modify a Schedule event details for Call Settings of the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Update an event for the specified schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Update the event with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Schedule1", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "startTime": "09:00", "endTime": "18:00", "recurrence": { "recurForEver": false, "recurEndDate": "2023-02-06", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } }, "schema": { "$ref": "#/components/schemas/UserScheduleEventPatch" } } } } }, "delete": { "summary": "Delete User a Schedule Event", "operationId": "deleteMyUserScheduleEvent", "description": "Delete a specific schedule event for the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Delete an event for the specified schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Delete the event with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "schema": { "type": "string" } } ], "responses": { "204": { "description": "Schedule Event deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/locations/schedules/{scheduleType}/{scheduleId}": { "get": { "responses": { "200": { "description": "Location Schedule retrieved successfully for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserLocationScheduleGetResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "type": "businessHours", "name": "Schedule1", "events": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "EVENTNAME", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUm5KcFpHRjVJREk9", "name": "Friday 2", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 User's Location Level Schedule", "operationId": "getMyLocationSchedule", "description": "Get Location Schedule for Call Settings of the authenticated user.\n\nSchedules are used to define specific time periods which can be applied to various Call Settings, such as Sequential Ring, or Priority Alert. These call settings perform the defined actions based on the time frame in the schedule, making it more convenient for users to manage their calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "scheduleType", "in": "path", "required": true, "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "businessHours", "schema": { "type": "string", "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Retrieve the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvU0c5c2FXUmhlU0JXTWc", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/callNotify": { "get": { "responses": { "200": { "description": "Call Notify Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallNotifyGet" }, "example": { "emailAddress": "callnotify@example.com", "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "notificationEnabled": false } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Call Notify Settings for User", "operationId": "getMyCallNotifySettings", "description": "Get Call Notify Settings for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Call Notify Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Call Notify Settings for User", "operationId": "updateMyCallNotifySettings", "description": "Update Call Notify Settings for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This API allows modifying attributes such as name, phoneNumbers etc for a particular criteria.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "emailAddress": "callNotify@example.com", "enabled": false }, "schema": { "$ref": "#/components/schemas/CallNotifyPatch" } } } } } }, "/telephony/config/people/me/settings/callNotify/criteria": { "post": { "summary": "Add a Call Notify Criteria", "operationId": "createMyCallNotifyCriteria", "description": "Create a Call Notify Criteria for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallNotifyCriteriaPatch" }, "example": { "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "notificationEnabled": true } } } }, "responses": { "200": { "description": "Call Notify Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/callNotify/criteria/{id}": { "get": { "responses": { "200": { "description": "Call Notify Criteria Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallNotifyCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "notificationEnabled": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Call Notify Criteria Settings", "operationId": "getMyCallNotifyCriteriaSettings", "description": "Get Call Notify Criteria Settings for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This is helpful, when the user wants to be quickly notified that a specific phone number is calling.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the call notify criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ] }, "put": { "responses": { "204": { "description": "Call Notify Criteria Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify a Call Notify Criteria", "operationId": "updateMyCallNotifyCriteriaSettings", "description": "Modify Call Notify Criteria Settings for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This API allows modifying attributes such as name, phoneNumbers etc for a particular criteria.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the call notify criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Holiday V2", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "notificationEnabled": false, "phoneNumbers": [ "+16177817766" ] }, "schema": { "$ref": "#/components/schemas/CallNotifyCriteriaPatch" } } } } }, "delete": { "summary": "Delete a Call Notify Criteria", "operationId": "deleteMyCallNotifyCriteria", "description": "Delete a Call Notify criteria for the authenticated user.\n\nCall Notify allows you to set up a unique ringtone based on predefined criteria. This API removes a specific criteria rule by its unique identifier.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the call notify criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Call Notify criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/selectiveAccept": { "get": { "responses": { "200": { "description": "Selective Call Accept Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallSettingsGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "acceptEnabled": false } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Selective Call Accept Settings for User", "operationId": "getMySelectiveAcceptSettings", "description": "Get Selective Call Accept Settings for the authenticated user.\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Selective Call Accept Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Selective Call Accept Settings for User", "operationId": "updateMySelectiveAcceptSettings", "description": "Update Selective Call Accept Settings for the authenticated user.\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallSettingPatch" } } } } } }, "/telephony/config/people/me/settings/selectiveAccept/criteria": { "post": { "summary": "Add User Selective Call Accept Criteria", "operationId": "createMySelectiveAcceptCriteria", "description": "Create a new Selective Call Accept Criteria for the authenticated user.\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaPost" }, "example": { "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "acceptEnabled": true } } } }, "responses": { "200": { "description": "Selective Call Accept Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/selectiveAccept/criteria/{id}": { "get": { "responses": { "200": { "description": "Selective Call Accept Criteria Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "acceptEnabled": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Selective Call Accept Criteria Settings for User", "operationId": "getMySelectiveAcceptCriteriaSettings", "description": "Get Selective Call Accept Criteria Settings for the authenticated user.\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call accept criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ] }, "put": { "responses": { "204": { "description": "Selective Call Accept Criteria Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify a Selective Call Accept Criteria", "operationId": "updateMySelectiveCallAcceptCriteriaSettings", "description": "Modify Selective Call Accept Criteria Settings for the authenticated user.\n\n\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call accept. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Holiday V2", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "acceptEnabled": false, "phoneNumbers": [ "+16177817766" ] }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaPatch" } } } } }, "delete": { "summary": "Delete a Selective Call Accept Criteria", "operationId": "deleteMySelectiveCallAcceptCriteria", "description": "Delete a Selective Call Accept Criteria for the authenticated user.\n\n\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call accept criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Selective Call Accept Criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/location/assignedNumbers": { "get": { "responses": { "200": { "description": "Available numbers retrieved for the authenticated user's location.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationAssignedNumbersGet" }, "example": { "phoneNumbers": [ { "phoneNumber": "+16177817765", "extension": "765", "state": "ACTIVE", "phoneNumberType": "PRIMARY", "tollFreeNumber": false, "owner": { "type": "HUNT_GROUP", "displayName": "testingdemoHunt" } } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Available Numbers for User's Location", "operationId": "getAvailableNumbersForMyLocation", "description": "Get Available Numbers for User's Location.\n\nFetch all the numbers available in User's location.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "max", "in": "query", "description": "Limit the maximum number of numbers in the response.", "example": 100, "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Specify the offset from the first result that you want to fetch.", "example": 0, "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "List numbers whose owner name contains this string.", "example": "Denver", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "List numbers whose phoneNumber contains this string.", "example": "27888", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "List numbers whose extension contains this string.", "example": "7899", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort the list of numbers based on `lastName`, `dn`, `extension` either asc or desc.", "example": "lastName-asc", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/selectiveForward/criteria": { "post": { "summary": "Add a Selective Call Forwarding Criteria", "operationId": "createMySelectiveCallForwardCriteria", "description": "Create a Selective Call Forwarding Criteria for the authenticated user.\n\nSelective Call Forward allows you to define rules that automatically forward incoming calls based on specific criteria, such as the caller’s phone number, caller identity, and the time and day the call is received.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveCallForwardCriteriaPatch" }, "example": { "forwardToPhoneNumber": "+16175550100", "destinationVoicemailEnabled": false, "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "phoneNumbers": [ "+16177817766" ], "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "forwardEnabled": true } } } }, "responses": { "200": { "description": "Selective Call Forwarding Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/selectiveForward/criteria/{id}": { "get": { "responses": { "200": { "description": "Selective Call Forwarding Criteria Settings retrieved.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveCallForwardCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "forwardToPhoneNumber": "+16175550100", "destinationVoicemailEnabled": false, "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "forwardEnabled": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Settings for a Selective Call Forwarding Criteria", "operationId": "getMySelectiveCallForwardCriteria", "description": "Get settings for a Selective Call Forwarding Criteria for the authenticated user.\n\nSelective Call Forward allows you to define rules that automatically forward incoming calls based on specific criteria, such as the caller’s phone number, caller identity, and the time and day the call is received.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call forwarding criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ] }, "put": { "responses": { "204": { "description": "Selective Call Forward Criteria Settings updated successfully." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Settings for a Selective Call Forwarding Criteria", "operationId": "updateMySelectiveCallForwardingCriteriaSettings", "description": "Modify settings for a Selective Call Forwarding Criteria for the authenticated user.\n\nSelective Call Forward allows you to define rules that automatically forward incoming calls based on specific criteria, such as the caller’s phone number, caller identity, and the time and day the call is received.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call forwarding criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "content": { "application/json": { "example": { "forwardToPhoneNumber": "+16175550100", "destinationVoicemailEnabled": true, "scheduleName": "Holiday ABC", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": false, "unavailableCallersEnabled": true, "forwardEnabled": true }, "schema": { "$ref": "#/components/schemas/SelectiveCallForwardCriteriaPatch" } } } } }, "delete": { "summary": "Delete a Selective Call Forwarding Criteria", "operationId": "deleteMySelectiveCallForwardingCriteria", "description": "Delete a Selective Call Forwarding Criteria for the authenticated user.\n\nSelective call forwarding allows you to define rules that automatically forward incoming calls based on specific criteria. This API removes a specific criteria rule by its unique identifier.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call forwarding criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Selective Call Forwarding criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/selectiveForward": { "get": { "responses": { "200": { "description": "Selective Call Forwarding Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveForwardCallSettingsGet" }, "example": { "enabled": true, "defaultPhoneNumberToForward": "+16177817765", "destinationVoicemailEnabled": false, "ringReminderEnabled": false, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "forwardEnabled": false } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Selective Call Forward Settings for User", "operationId": "getMySelectiveForwardSettings", "description": "Get Selective Call Forward Settings for the authenticated user.\n\nSelective Call Forward allows you to create customized rules to forward specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Selective Call Forward Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Selective Call Forward Settings for User", "operationId": "updateMySelectiveForwardSettings", "description": "Update the Selective Call Forward Settings for the authenticated user.\n\nSelective Call Accept allows you to create customized rules to accept specific calls for users based on the phone number, identity, and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase2" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "defaultForwardToPhoneNumber": "+16175550100", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveForwardCallSettingPatch" } } } } } }, "/telephony/config/people/me/settings/selectiveReject": { "get": { "responses": { "200": { "description": "Selective Call Reject Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallSettingsGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "rejectEnabled": false } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Selective Call Reject Settings for User", "operationId": "getMySelectiveRejectSettings", "description": "Get Selective Call Reject Settings for the authenticated user.\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Selective Call Reject Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Selective Call Reject Settings for User", "operationId": "updateMySelectiveRejectSettings", "description": "Update Selective Call Reject Settings for the authenticated user.\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallSettingPatch" } } } } } }, "/telephony/config/people/me/settings/selectiveReject/criteria": { "post": { "summary": "Add User Selective Call Reject Criteria", "operationId": "createMySelectiveRejectCriteria", "description": "Create a new Selective Call Reject Criteria for the authenticated user.\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaPost" }, "example": { "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "rejectEnabled": true } } } }, "responses": { "200": { "description": "Selective Call Reject Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/anonymousCallReject": { "get": { "responses": { "200": { "description": "Anonymous Call Rejection Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnonymousCallRejectSettingsGet" }, "example": { "enabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Anonymous Call Rejection Settings for User", "operationId": "getMyAnonymousCallRejectSettings", "description": "Get Anonymous Call Rejection Settings for the authenticated user.\n\nAnonymous Call Rejection allows you to reject calls from anonymous callers.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [] }, "put": { "responses": { "204": { "description": "Anonymous Call Rejection Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify Anonymous Call Rejection Settings for User", "operationId": "updateMyAnonymousCallRejectSettings", "description": "Update Anonymous Call Rejection Settings for the authenticated user.\n\nAnonymous Call Rejection allows you to reject calls from anonymous callers.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/AnonymousCallRejectSettingsPatch" } } } } } }, "/telephony/config/people/me/settings/selectiveReject/criteria/{id}": { "get": { "responses": { "200": { "description": "Selective Call Reject Criteria Settings retrieved for the authenticated user.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "rejectEnabled": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 Selective Call Reject Criteria Settings for User", "operationId": "getMySelectiveRejectCriteriaSettings", "description": "Get Selective Call Reject Criteria Settings for the authenticated user.\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call reject criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ] }, "put": { "responses": { "204": { "description": "Selective Call Reject Criteria Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify a Selective Call Reject Criteria", "operationId": "updateMySelectiveCallRejectCriteriaSettings", "description": "Modify Selective Call Reject Criteria Settings for the authenticated user.\n\n\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call reject. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Holiday V2", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "rejectEnabled": false, "phoneNumbers": [ "+16177817766" ] }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaPatch" } } } } }, "delete": { "summary": "Delete a Selective Call Reject Criteria", "operationId": "deleteMySelectiveCallRejectCriteria", "description": "Delete a Selective Call Reject Criteria for the authenticated user.\n\n\n\nSelective Call Reject allows you to create customized rules to reject specific calls for users based on the phone number,identity and the time or day of the call.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the selective call reject criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Selective Call Reject Criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/callWaiting": { "get": { "summary": "Get Call Waiting Settings for User", "operationId": "getMyCallWaitingSettings", "description": "Get Call Waiting Settings for the authenticated user.\n\nCall Waiting allows a user to receive multiple calls simultaneously. When the user is on an active call, they can receive an incoming call and switch between the two calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "responses": { "200": { "description": "Call Waiting Settings retrieved for the authenticated user.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallWaitingInfo" }, "example": { "enabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } }, "put": { "summary": "Modify Call Waiting Settings for User", "operationId": "updateMyCallWaitingSettings", "description": "Update Call Waiting Settings for the authenticated user.\n\nCall Waiting allows a user to receive multiple calls simultaneously. When the user is on an active call, they can receive an incoming call and switch between the two calls.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallWaitingPut" }, "example": { "enabled": false } } } }, "responses": { "204": { "description": "Call Waiting Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } } }, "/telephony/config/people/me/settings/sequentialRing": { "get": { "summary": "Get Sequential Ring Settings for User", "operationId": "getMySequentialRingSettings", "description": "Get Sequential Ring Settings for the authenticated user.\n\nSequential Ring allows calls to ring additional phone numbers in sequence if the initial call is not answered. This can be configured to ring up to five phone numbers with customizable ring patterns.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "responses": { "200": { "description": "Sequential Ring Settings retrieved for the authenticated user.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingSettingsGet" }, "example": { "enabled": true, "ringBaseLocationFirstEnabled": false, "baseLocationNumberOfRings": 3, "continueIfBaseLocationIsBusyEnabled": true, "callsToVoicemailEnabled": false, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationRequiredEnabled": false, "numberOfRings": 3 } ], "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "BusinessHours", "source": "ALL_NUMBERS", "ringEnabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } }, "put": { "summary": "Modify Sequential Ring Settings for User", "operationId": "updateMySequentialRingSettings", "description": "Update Sequential Ring Settings for the authenticated user.\n\nSequential Ring allows calls to ring additional phone numbers in sequence if the initial call is not answered. This can be configured to ring up to five phone numbers with customizable ring patterns.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingSettingsPut" }, "example": { "enabled": false, "ringBaseLocationFirstEnabled": true, "baseLocationNumberOfRings": 2, "continueIfBaseLocationIsBusyEnabled": false, "callsToVoicemailEnabled": false, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationRequiredEnabled": true, "numberOfRings": 4 } ] } } } }, "responses": { "204": { "description": "Sequential Ring Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } } }, "/telephony/config/people/me/settings/sequentialRing/criteria": { "post": { "summary": "Add User Sequential Ring Criteria", "operationId": "createMySequentialRingCriteria", "description": "Create a new Sequential Ring Criteria for the authenticated user.\n\nSequential Ring criteria defines rules for when sequential ring should activate based on the caller and schedule.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaPost" }, "example": { "scheduleName": "BusinessHours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "ringEnabled": true } } } }, "responses": { "200": { "description": "Sequential Ring Criteria created successfully. Returns the criteria ID.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/sequentialRing/criteria/{id}": { "get": { "summary": "Get Sequential Ring Criteria Settings for User", "operationId": "getMySequentialRingCriteriaSettings", "description": "Get Sequential Ring Criteria Settings for the authenticated user.\n\nSequential Ring criteria defines rules for when sequential ring should activate based on the caller and schedule.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the sequential ring criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "200": { "description": "Sequential Ring Criteria Settings retrieved for the authenticated user.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "BusinessHours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "ringEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } }, "put": { "summary": "Modify Sequential Ring Criteria Settings for User", "operationId": "updateMySequentialRingCriteriaSettings", "description": "Update Sequential Ring Criteria Settings for the authenticated user.\n\nSequential Ring criteria defines rules for when sequential ring should activate based on the caller and schedule.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the sequential ring criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaPut" }, "example": { "scheduleName": "Holidays", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "ANY_PHONE_NUMBER", "ringEnabled": false } } } }, "responses": { "204": { "description": "Sequential Ring Criteria Settings updated successfully for the authenticated user." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } }, "delete": { "summary": "Delete Sequential Ring Criteria", "operationId": "deleteMySequentialRingCriteria", "description": "Delete a Sequential Ring Criteria for the authenticated user.\n\nSequential Ring criteria defines rules for when sequential ring should activate based on the caller and schedule.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me With UserHub Phase3" ], "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "description": "The `id` parameter specifies the unique identifier for the sequential ring criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY`." } ], "responses": { "204": { "description": "Sequential Ring Criteria deleted successfully. No content is returned." }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." }, "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)." } } } }, "/telephony/config/people/me/settings/modeManagement/features": { "get": { "tags": [ "Mode Management" ], "summary": "Get Mode Management Features", "description": "Retrieves a list of all mode management features (Auto Attendants, Call Queues, and Hunt Groups) for which the authenticated user has been designated as a mode manager. This API returns basic information about each feature including its ID, name, and type.\n\nMode Management allows designated managers to switch features between different operational configurations based on time schedules or manual triggers. This is useful for managing business hours, holidays, and emergency scenarios.\n\nThis API requires a user auth token with the `spark:telephony_config_read` scope. The authenticated user must be configured as a mode manager for at least one feature to receive results.", "operationId": "getModeManagementFeatures", "responses": { "200": { "description": "Mode management features retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModeManagementFeaturesResponse" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/commonModes": { "get": { "tags": [ "Mode Management" ], "summary": "Get Common Modes", "description": "Retrieves a list of common operating mode names that are shared across multiple specified features. This API accepts a list of feature IDs and returns only the mode names that exist in all of the specified features, allowing managers to switch multiple features to the same mode simultaneously.\n\nCommon modes are useful when you need to coordinate operational changes across multiple features. For example, switching an entire office to \"Holiday\" mode across all Auto Attendants and Call Queues at once.\n\nThis API requires a user auth token with the `spark:telephony_config_read` scope. The authenticated user must be a mode manager for the specified features.", "operationId": "getCommonModes", "parameters": [ { "name": "featureIds", "in": "query", "description": "List of feature IDs (comma-separated) for auto attendants, call queues, or hunt groups", "required": true, "schema": { "type": "array", "items": { "type": "string" }, "minItems": 1, "maxItems": 50 }, "style": "form", "explode": false, "example": [ "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" ] } ], "responses": { "200": { "description": "Common modes retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CommonModesResponse" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/actions/switchMode/invoke": { "post": { "tags": [ "Mode Management" ], "summary": "Switch Mode for Multiple Features", "description": "Switches the operating mode for multiple features simultaneously by specifying a common mode name. This API accepts a list of feature IDs and sets all of them to the specified operating mode, provided that mode exists for all features.\n\nThis bulk operation is particularly useful for coordinating operational changes across an organization, such as activating holiday modes, emergency procedures, or after-hours configurations across multiple Auto Attendants, Call Queues, and Hunt Groups at once.\n\nThis API requires a user auth token with the `spark:telephony_config_write` scope. The authenticated user must be a mode manager for all specified features.", "operationId": "switchModeMultipleFeatures", "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SwitchModeMultipleFeaturesRequest" } } } }, "responses": { "204": { "description": "Mode switched successfully for multiple features" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}": { "get": { "tags": [ "Mode Management" ], "summary": "Get Mode Management Feature", "description": "Retrieves detailed information about a specific mode management feature including its current operating mode and exception status. This API provides the feature's ID, name, type, current operating mode ID, and whether it is currently in an exception mode.\n\nException mode indicates that the feature has been manually switched to a different mode than what its schedule dictates. This information is critical for mode managers to understand the current state of their features.\n\nThis API requires a user auth token with the `spark:telephony_config_read` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "getModeManagementFeature", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" } ], "responses": { "200": { "description": "Mode management feature retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModeManagementFeatureResponse" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}/normalOperationMode": { "get": { "tags": [ "Mode Management" ], "summary": "Get Normal Operation Mode", "description": "Retrieves the current normal operating mode that the feature is scheduled to be in based on its time schedules. This represents the mode the feature would be in if no manual exceptions or overrides were active.\n\nThe normal operation mode is determined by the feature's configured schedules and may differ from the actual current operating mode if a manual exception has been applied. This API helps managers understand what the scheduled behavior is versus the actual current state.\n\nThis API requires a user auth token with the `spark:telephony_config_read` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "getNormalOperationMode", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" } ], "responses": { "200": { "description": "Normal operation mode retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NormalOperationModeResponse" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}/modes/{modeId}": { "get": { "tags": [ "Mode Management" ], "summary": "Get Operating Mode", "description": "Retrieves detailed information about a specific operating mode for a feature, including the mode's ID and name. This API allows managers to get the details of any operating mode configured for a feature.\n\nOperating modes define different configurations for how a feature behaves (e.g., business hours routing vs. after-hours routing). Each mode has a unique ID and a descriptive name that helps managers identify its purpose.\n\nThis API requires a user auth token with the `spark:telephony_config_read` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "getOperatingMode", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" }, { "name": "modeId", "in": "path", "description": "Unique identifier for the operating mode.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==" } ], "responses": { "200": { "description": "Operating mode retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperatingModeResponse" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}/actions/switchToNormalOperation/invoke": { "post": { "tags": [ "Mode Management" ], "summary": "Switch to Normal Operation", "description": "Switches the feature back to its normal scheduled operation mode, removing any manual exceptions or overrides that may be active. This returns the feature to operating according to its configured time schedules.\n\nThis operation is useful when a temporary manual mode change (exception) is no longer needed and you want to restore automatic schedule-based operation. It effectively cancels any active manual mode switches.\n\nThis API requires a user auth token with the `spark:telephony_config_write` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "switchToNormalOperation", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" } ], "responses": { "204": { "description": "Switched to normal operation successfully" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}/actions/switchMode/invoke": { "post": { "tags": [ "Mode Management" ], "summary": "Switch Mode for Single Feature", "description": "Switches the operating mode for a single feature to a specified mode, either temporarily or with manual switchback. This API creates an exception to the feature's normal scheduled operation, allowing managers to manually control the feature's behavior.\n\nYou can configure whether the mode switch is temporary (automatically reverts based on schedule) or requires manual switchback. This is useful for handling unexpected situations like emergency closures, special events, or unscheduled breaks.\n\nThis API requires a user auth token with the `spark:telephony_config_write` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "switchModeForFeature", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SwitchModeRequest" } } } }, "responses": { "204": { "description": "Mode switched successfully" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/modeManagement/features/{featureId}/actions/extendMode/invoke": { "post": { "tags": [ "Mode Management" ], "summary": "Extend Current Operating Mode Duration", "description": "Extends the duration of the current operating mode by adding additional time before it expires or reverts to scheduled operation. This API allows managers to prolong a temporary mode change without having to switch modes again.\n\nExtension time can be specified in 30-minute increments up to 720 minutes (12 hours). If no extension time is provided, the mode is extended with a manual switchback exception, meaning it will remain active until manually changed.\n\nThis API requires a user auth token with the `spark:telephony_config_write` scope. The authenticated user must be a mode manager for the specified feature.", "operationId": "extendMode", "parameters": [ { "name": "featureId", "in": "path", "description": "Unique identifier for the feature.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExtendModeRequest" } } } }, "responses": { "204": { "description": "Mode extended successfully" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "410": { "description": "Gone", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "423": { "description": "Locked", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "428": { "description": "Precondition Required", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "429": { "description": "Too Many Requests", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "503": { "description": "Service Unavailable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "504": { "description": "Gateway Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "security": [ { "bearer-key": [] } ] } }, "/telephony/config/people/me/settings/voicemail/actions/busyGreetingUpload/invoke": { "post": { "summary": "Upload Voicemail Busy Greeting", "operationId": "uploadVoicemailBusyGreeting", "description": "Uploads a new busy greeting audio file for the authenticated user's voicemail.\n\nThis endpoint is part of the voicemail greeting management capabilities provided by the Webex Calling platform and is available when the `wxc-csg-hydra-call-184017-phase4` feature is enabled. The greeting must be in WAV format and not exceed 5000 kilobytes.\n\nRequires a user auth token with the `spark:telephony_config_write` scope. Only the authenticated user may upload greetings for their own voicemail.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [], "requestBody": { "content": { "multipart/form-data": { "schema": { "type": "object", "properties": { "file": { "type": "string", "format": "binary", "description": "Greeting audio file in WAV format. Maximum file size is 5000 kilobytes." } }, "required": [ "file" ] } } } }, "responses": { "201": { "description": "Created" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } } }, "/telephony/config/people/me/settings/voicemail/actions/noAnswerGreetingUpload/invoke": { "post": { "summary": "Upload Voicemail No Answer Greeting", "operationId": "uploadVoicemailNoAnswerGreeting", "description": "Uploads a new no answer greeting audio file for the authenticated user's voicemail.\n\nThis endpoint is part of the voicemail greeting management capabilities provided by the Webex Calling platform and is available when the `wxc-csg-hydra-call-184017-phase4` feature is enabled. The greeting must be in WAV format and not exceed 5000 kilobytes.\n\nRequires a user auth token with the `spark:telephony_config_write` scope. Only the authenticated user may upload greetings for their own voicemail.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [], "requestBody": { "content": { "multipart/form-data": { "schema": { "type": "object", "properties": { "file": { "type": "string", "format": "binary", "description": "Greeting audio file in WAV format. Maximum file size is 5000 kilobytes." } }, "required": [ "file" ] } } } }, "responses": { "201": { "description": "Created" }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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." } } } }, "/telephony/config/people/me/settings/simultaneousRing": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SimultaneousRingGet" }, "example": { "enabled": true, "doNotRingIfOnCallEnabled": true, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationEnabled": true }, { "phoneNumber": "+19186663950", "answerConfirmationEnabled": false } ], "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "SELECT_PHONE_NUMBERS", "ringEnabled": true } ], "criteriasEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Retrieve My Simultaneous Ring Settings", "operationId": "getMySimultaneousRingSettings", "description": "Retrieve simultaneous ring settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Schedules can also be set up to ring these phones during certain times of the day or days of the week.\n\nRetrieving settings requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify My Simultaneous Ring Settings", "operationId": "updateMySimultaneousRingSettings", "description": "Modify simultaneous ring settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Schedules can also be set up to ring these phones during certain times of the day or days of the week.\n\nModifying settings requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "doNotRingIfOnCallEnabled": false, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationEnabled": false } ], "criteriasEnabled": false }, "schema": { "$ref": "#/components/schemas/SimultaneousRingPut" } } } } } }, "/telephony/config/people/me/settings/simultaneousRing/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SimultaneousRingCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "ringEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Retrieve My Simultaneous Ring Criteria", "operationId": "getMySimultaneousRingCriteria", "description": "Retrieve simultaneous ring criteria settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Simultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nRetrieving criteria requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [ { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Modify My Simultaneous Ring Criteria", "operationId": "updateMySimultaneousRingCriteria", "description": "Modify simultaneous ring criteria settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Simultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nModifying criteria requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [ { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "ringEnabled": false }, "schema": { "$ref": "#/components/schemas/SimultaneousRingCriteriaPut" } } } } }, "delete": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 My Simultaneous Ring Criteria", "operationId": "deleteMySimultaneousRingCriteria", "description": "Delete simultaneous ring criteria settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Simultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nDeleting criteria requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [ { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/simultaneousRing/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" }, "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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 My Simultaneous Ring Criteria", "operationId": "createMySimultaneousRingCriteria", "description": "Create simultaneous ring criteria settings for the authenticated user.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously. Simultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nCreating criteria requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation", "scheduleType": "businessHours", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "ringEnabled": true }, "schema": { "$ref": "#/components/schemas/SimultaneousRingCriteriaPost" } } } } } }, "/telephony/config/people/me/settings/guestCalling/numbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuestCallingNumbersGet" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12065551212", "state": "ACTIVE", "isMainNumber": false }, { "phoneNumber": "+12065551213", "state": "INACTIVE", "isMainNumber": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served." }, "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": "Retrieve My Guest Calling Numbers", "operationId": "getMyGuestCallingNumbers", "description": "Retrieve available guest calling numbers for the authenticated user.\n\nThis API returns a list of phone numbers that can be used for guest calling purposes.\n\nRetrieving guest calling numbers requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 4" ], "parameters": [] } }, "/telephony/config/people/me/voicemail/rules": { "get": { "summary": "Get Person's Voicemail Rules", "operationId": "getUserVoicemailRules", "description": "Get person's voicemail passcode rules. Voicemail rules specify the default passcode requirements. They are provided for informational purposes only and cannot be modified.\n\nThe voicemail feature allows users to manage their voicemail settings as part of Webex Calling. Voicemail rules help ensure secure access to voice messages by defining passcode complexity requirements.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailRules" } } } }, "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." } } } }, "/telephony/config/people/me/voicemail/pin": { "put": { "summary": "Update Voicemail PIN", "operationId": "updateVoicemailPin", "description": "Set the voicemail PIN for a person. Updates the PIN used to access voicemail messages. The PIN must comply with the passcode rules defined for the organization.\n\nThe voicemail feature is part of Webex Calling, allowing users to secure their voicemail access with a PIN. The PIN is required to retrieve voice messages via phone.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailPin" } } } }, "responses": { "204": { "description": "No Content: Voicemail PIN successfully updated." }, "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." } } } }, "/telephony/config/people/me/settings/hoteling/guest": { "get": { "summary": "Get Hoteling Guest Settings", "operationId": "getHotelingGuestSettings", "description": "Retrieve hoteling guest settings for a person. Hoteling allows a person to temporarily use a device as a guest, associating their extension and configuration with that device for a limited time. This API returns the current hoteling guest configuration including any active host association details.\n\nHoteling is a feature of Webex Calling that enables flexible workspace solutions by allowing users to log into shared devices.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HotelingGuestSettings" } } } }, "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." } } }, "put": { "summary": "Update Hoteling Guest Settings", "operationId": "updateHotelingGuestSettings", "description": "Update hoteling guest settings for a person. Allows enabling or disabling the ability to use hoteling as a guest, configuring whether an association will be removed automatically after a specified time period, and associating with a hoteling host.\n\nHoteling is a feature of Webex Calling that enables flexible workspace solutions by allowing users to log into shared devices.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_write`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HotelingGuestSettingsUpdate" } } } }, "responses": { "204": { "description": "No Content: Hoteling guest settings successfully updated." }, "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." } } } }, "/telephony/config/people/me/settings/hoteling/availableHosts": { "get": { "summary": "Get Available Hoteling Hosts", "operationId": "getAvailableHotelingHosts", "description": "Retrieve a list of available hoteling hosts that a person can associate with as a guest. Returns hosts that have hoteling enabled on their devices and are available for guest associations. The list can be filtered by name or phone number and supports pagination.\n\nHoteling is a feature of Webex Calling that enables flexible workspace solutions by allowing users to log into shared devices.\n\nThis API requires a user auth token with a scope of `spark:telephony_config_read`.", "tags": [ "Call Settings For Me Phase 5" ], "parameters": [ { "name": "max", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 1, "maximum": 2000, "default": 2000 }, "description": "Limit the maximum number of hosts in the response. Default is 100.", "example": 100 }, { "name": "start", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 0, "default": 0 }, "description": "Start index for pagination. Default is 0.", "example": 0 }, { "name": "name", "in": "query", "required": false, "schema": { "type": "string" }, "description": "Filter hosts by name (first name or last name). Partial match is supported.", "example": "John" }, { "name": "phoneNumber", "in": "query", "required": false, "schema": { "type": "string" }, "description": "Filter hosts by phone number. Partial match is supported.", "example": "+14085551234" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableHotelingHosts" } } } }, "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." } } } }, "/telephony/config/announcementLanguages": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "languages" ], "properties": { "languages": { "type": "array", "items": { "$ref": "#/components/schemas/Language" }, "description": "Array of Languages." } } }, "example": { "languages": [ { "name": "English", "code": "en_us" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Announcement Languages", "operationId": "Read the List of Announcement Languages", "description": "List all languages supported by Webex Calling for announcements and voice prompts.\n\nRetrieving announcement languages requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "ttsLanguage", "in": "query", "description": "Filter languages by TTS support.", "required": false, "schema": { "type": "boolean" } } ] } }, "/telephony/config/voicemail/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVoicemailSettingsObject" }, "example": { "messageExpiryEnabled": false, "numberOfDaysForMessageExpiry": 10, "strictDeletionEnabled": false, "voiceMessageForwardingEnabled": 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 Voicemail Settings", "operationId": "Get Voicemail Settings", "description": "Retrieve the organization's voicemail settings.\n\nOrganizational voicemail settings determines what voicemail features a person can configure and automatic message expiration.\n\nRetrieving organization's voicemail settings requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve voicemail settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Voicemail Settings", "operationId": "Update Voicemail Settings", "description": "Update the organization's voicemail settings.\n\nOrganizational voicemail settings determines what voicemail features a person can configure and automatic message expiration.\n\nUpdating an organization's voicemail settings requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update voicemail settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "messageExpiryEnabled": false, "numberOfDaysForMessageExpiry": 10, "strictDeletionEnabled": false, "voiceMessageForwardingEnabled": true }, "schema": { "$ref": "#/components/schemas/PutVoicemailSettingsObject" } } } } } }, "/telephony/config/voicemail/rules": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVoicemailRulesObject" }, "example": { "defaultVoicemailPinRules": { "blockRepeatedPatternsEnabled": true, "blockRepeatedDigits": { "enabled": true, "max": 3 }, "blockContiguousSequences": { "enabled": true, "numberOfAscendingDigits": 3, "numberOfDescendingDigits": 3 }, "length": { "min": 6, "max": 30 }, "defaultVoicemailPinEnabled": true }, "expirePasscode": { "enabled": true, "numberOfDays": 100 }, "changePasscode": { "enabled": true, "numberOfDays": 1 }, "blockPreviousPasscodes": { "enabled": false, "numberOfPasscodes": 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 Voicemail Rules", "operationId": "Get Voicemail Rules", "description": "Retrieve the organization's voicemail rules.\n\nOrganizational voicemail rules specify the default passcode requirements. They are provided for informational purposes only and cannot be modified.\n\nRetrieving the organization's voicemail rules requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve voicemail rules for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Voicemail Rules", "operationId": "Update Voicemail Rules", "description": "Update the organization's default voicemail passcode and/or rules.\n\nOrganizational voicemail rules specify the default passcode requirements.\n\nIf you choose to set a default passcode for new people added to your organization, communicate to your people what that passcode is, and that it must be reset before they can access their voicemail. If this feature is not turned on, each new person must initially set their own passcode.\n\nUpdating an organization's voicemail passcode and/or rules requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update voicemail rules for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "defaultVoicemailPinEnabled": true, "defaultVoicemailPin": "123544", "expirePasscode": { "enabled": true, "numberOfDays": 100 }, "changePasscode": { "enabled": true, "numberOfDays": 1 }, "blockPreviousPasscodes": { "enabled": false, "numberOfPasscodes": 10 } }, "schema": { "$ref": "#/components/schemas/PutVoicemailRulesObject" } } } } } }, "/telephony/config/moh/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMusicOnHoldObject" }, "example": { "defaultOrgMoh": "OPUS" } } } }, "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 the organization Music on Hold configuration", "operationId": "Get the organization Music on Hold configuration", "description": "Retrieve the organization's Music on Hold settings.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve Music on Hold settings for this organization.", "example": "631e6768-c7fa-4179-acb3-c98f248a6d4b", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the organization Music on Hold configuration", "operationId": "Update the organization Music on Hold configuration", "description": "Update the organization's Music on Hold settings.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Patch Music on Hold for this organization.", "example": "631e6768-c7fa-4179-acb3-c98f248a6d4b", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "defaultOrgMoh": "OPUS" }, "schema": { "$ref": "#/components/schemas/UpdateMusicOnHoldObject" } } } } } }, "/telephony/config/largeOrgStatus": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationStatusGetObject" }, "example": { "isLargeOrg": true, "largeOrgThresholdPercentage": 90 } } } }, "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 Large Organization Status", "operationId": "getLargeOrganizationStatus", "description": "Get the large organization status for a customer.\n\nLarge organization status indicates whether an organization is categorized as a large organization based on the threshold percentage.\n\nThis API requires a full or read-only administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieves large organization status for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/callCaptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallCaptionsObject" }, "example": { "orgClosedCaptionsEnabled": true, "orgTranscriptsEnabled": 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 the organization call captions settings", "operationId": "Get the organization call captions settings", "description": "Retrieve the organization's call captions settings.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the organization call captions settings", "operationId": "Update the organization call captions settings", "description": "Update the organization's call captions settings.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Calling Service Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "orgClosedCaptionsEnabled": true, "orgTranscriptsEnabled": true }, "schema": { "$ref": "#/components/schemas/UpdateCallCaptionsObject" } } } } } }, "/telephony/config/settings/msTeams": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCustomerMSTeamsSettingsObject" }, "example": { "level": "ORGANIZATION", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "settings": [ { "settingName": "HIDE_WEBEX_APP", "value": true, "lastModified": "2024-02-24T07:22:23.494198Z" }, { "settingName": "PRESENCE_SYNC", "value": false, "lastModified": "2024-02-24T07:21:23.494198Z" } ] } } } }, "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 an Organization's MS Teams Settings", "operationId": "Get an Organization's MS Teams Settings", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nGet organization MS Teams settings.\n\nAt an organization level, MS Teams settings allow access to viewing the `HIDE WEBEX APP` and `PRESENCE SYNC` settings.\n\nTo retrieve an organization's MS Teams settings requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Client Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve MS Teams settings for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 an Organization's MS Teams Setting", "operationId": "Update an Organization's MS Teams Setting", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nUpdate an MS Teams setting.\n\nMS Teams setting can be updated at the organization level.\n\nRequires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Client Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update MS Teams setting value for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "settingName": "HIDE_WEBEX_APP", "value": true }, "schema": { "$ref": "#/components/schemas/ModifyCustomerMSTeamsSettingsObject" } } } } } }, "/telephony/conference": { "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": "Start Conference", "operationId": "Start Conference", "description": "Join the user's calls into a conference. A minimum of two call IDs are required. Each call ID identifies an existing call between the user\nand a participant to be added to the conference.", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callIds": [ "Y2lzY29z...,Y2lzY30z..." ], "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callIds" ], "properties": { "callIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29z...,Y2lzY30z..." }, "description": "List of call identifiers of the participants to join into the conference. A minimum of two call IDs are required." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29z...Y", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } }, "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": "Release Conference", "operationId": "Release Conference", "description": "Release the conference (the host and all participants). Note that for a 3WC (three-way call) the [Transfer API](/docs/api/v1/call-controls/transfer) can be used to perform an attended transfer so that the participants remain connected.", "tags": [ "Conference Controls" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConferenceDetails" }, "example": { "state": "connected", "appearance": 3, "created": "2023-03-02T15:00:00.000Z", "muted": false, "participants": [ { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "muted": false, "deafened": false }, { "callId": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MQ", "muted": false, "deafened": 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 Conference Details", "operationId": "Get Conference Details", "description": "Get the details of the conference. An empty JSON object body is returned if there is no conference.", "tags": [ "Conference Controls" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/conference/addParticipant": { "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": "Add Participant", "operationId": "Add Participant", "description": "Adds a participant to an existing conference. The request body contains the participant's call ID.", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29z...", "lineOwnerId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The call identifier of the participant to add." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zc...", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/conference/mute": { "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": "Mute", "operationId": "Mute", "description": "Mutes the host or a participant. Mutes the host when no request body is provided (i.e. media stream from the host will not be transmitted to the conference). Mutes a participant when the request body contains the participant's call ID (i.e. media stream from the participant will not be transmitted to the conference).", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29z..." }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The call identifier of the participant to mute. The conference host is muted when this attribute is not provided." } } } } } } } }, "/telephony/conference/unmute": { "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": "Unmute", "operationId": "Unmute", "description": "Unmutes the host or a participant. Unmutes the host when no request body is provided (i.e. media stream from the host will be transmitted to the conference). Unmutes a participant when the request body contains the participant's call ID (i.e. media stream from the participant will be transmitted to the conference).", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29z..." }, "schema": { "type": "object", "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The call identifier of the participant to unmute. The conference host is unmuted when this attribute is not provided." } } } } } } } }, "/telephony/conference/deafen": { "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": "Deafen Participant", "operationId": "Deafen Participant", "description": "Deafens a participant (i.e. media stream will not be transmitted to the participant).\nThe request body contains the call ID of the participant to deafen", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The call identifier of the participant to deafen." } } } } } } } }, "/telephony/conference/undeafen": { "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": "Undeafen Participant", "operationId": "Undeafen Participant", "description": "Undeafens a participant (i.e. resume transmitting the conference media stream to the participant). \nThe request body contains the call ID of the participant to undeafen.", "tags": [ "Conference Controls" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "callId": "Y2lzY29z..." }, "schema": { "type": "object", "required": [ "callId" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The call identifier of the participant to undeafen." } } } } } } } }, "/telephony/conference/hold": { "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": "Hold", "operationId": "Hold", "description": "Hold the conference host. There is no request body.", "tags": [ "Conference Controls" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/conference/resume": { "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": "Resume", "operationId": "Resume", "description": "Resumes the held conference host. There is no request body.", "tags": [ "Conference Controls" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/config/people/me/settings/contactCenterExtensions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ContactCenterExtensionsGetObject" }, "example": { "ccExtensions": [ { "directNumber": "+13374831550", "extension": "1550", "type": "PRIMARY", "lineOwnerType": "PEOPLE", "lineOwnerId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "preferredAnsweringEndPointId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2Q0OTE3ZWFiLTQ4Y2EtNGRlZC1iOTczLWQzNTFhOTU5OWZhZB", "endpoints": [ { "id": "Y2lzY29zcGFyazovL3VzL0hPVERFU0tJTkdfR1VFU1QvNDE1YjFkODUtZDA3NS00ZTNmLWExMGItMGVjOGExMjRjMWQ4", "type": "HOTDESKING_GUEST" }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2Q0OTE3ZWFiLTQ4Y2EtNGRlZC1iOTczLWQzNTFhOTU5OWZhZB", "type": "CALLING_DEVICE" }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2QxYzM5M2QwLTg1M2ItNDc3MC1iZjA1LWQyMDU2MWRhM2NjZh", "type": "APPLICATION" } ] } ], "endpoints": [ { "id": "Y2lzY29zcGFyazovL3VzL0hPVERFU0tJTkdfR1VFU1QvNDE1YjFkODUtZDA3NS00ZTNmLWExMGItMGVjOGExMjRjMWQ4", "type": "HOTDESKING_GUEST", "name": "Cisco HotDesking", "status": "CONNECTED" }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2Q0OTE3ZWFiLTQ4Y2EtNGRlZC1iOTczLWQzNTFhOTU5OWZhZB", "type": "CALLING_DEVICE", "name": "Cisco 9841", "status": "CONNECTED" }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2QxYzM5M2QwLTg1M2ItNDc3MC1iZjA1LWQyMDU2MWRhM2NjZh", "type": "APPLICATION", "name": "Webex Desktop Application", "status": "CONNECTED" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the Contact Center Extensions", "operationId": "Read the Contact Center Extensions", "description": "Retrieves the Contact Center phone number, extension, virtual numbers, endpoints, and endpoints registration status associated with the authenticated user. This API returns all primary and secondary endpoints, the hot desk guest profiles currently hosted on the agent's own devices, if any, and registration status of those endpoints. Only virtual line extensions hosted exclusively on the agent's devices and the registration status of those virtual line endpoints will be retrieved. Any virtual lines shared with devices not owned by the current user will be excluded.\n\n A Webex Calling Contact Center extension is a calling extension assigned to a user or device within the Webex Contact Center for internal dialing.\n\nThis API requires a user auth token with a scope of spark:telephony_config_read.", "tags": [], "parameters": [] } }, "/convergedRecordings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" }, "example": "https://webexpis.com/v1/convergedRecordings" } }, "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": "ea0efc7c-f83a-4972-b0eb-c0f30cff5e61", "topic": "Call with TestUser6 WebexCRP-20241004 1624", "createTime": "2024-10-04T16:24:25Z", "timeRecorded": "2024-10-04T16:20:20Z", "ownerId": "a6aad220-e520-4529-a191-e84a72c0c9c2", "ownerType": "user", "ownerEmail": "nshtestwebex+testuser7@gmail.com", "format": "MP3", "durationSeconds": 23, "sizeBytes": 74222, "serviceType": "calling", "storageRegion": "US", "status": "available", "serviceData": { "locationId": "02a43ee9-17ae-4e0c-9e79-720e3a6503fd", "callSessionId": "b51c62ea-bbf6-4828-8959-1e41d8752022" } }, { "id": "518cdca4-61c7-47dc-840b-29827d0cb62d", "topic": "call with title", "createTime": "2024-10-30T22:30:53Z", "timeRecorded": "2024-10-30T22:17:19Z", "ownerId": "d7468402-e95f-42a9-92c8-dd65f45d40ba", "ownerType": "user", "ownerEmail": "nshtestwebex+testuser7@gmail.com", "format": "MP3", "durationSeconds": 60, "sizeBytes": 244326, "serviceType": "calling", "storageRegion": "US", "status": "available", "serviceData": { "locationId": "02a43ee9-17ae-4e0c-9e79-720e3a6503fd", "callSessionId": "7ba29675-3016-4bf0-af19-66cf2854b000" } } ] } } } }, "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": "list_recordings", "description": "List recordings. You can specify a date range, 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\nList recordings requires the `spark:recordings_read` scope.\n\nPlease use `List Recordings for Admin or Compliance Officer` API to list all recordings for a user with the role Compliance officer or Admin\n\nRequest 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": [ "Converged 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": "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.", "example": "available", "schema": { "type": "string", "default": "available", "enum": [ "available", "deleted" ] } }, { "name": "serviceType", "in": "query", "description": "Recording's service-type. If specified, the API filters recordings by service-type. Valid values are `calling` and `customerAssist`.", "example": "calling", "schema": { "type": "string", "enum": [ "calling", "customerAssist" ] } }, { "name": "format", "in": "query", "description": "Recording's file format. If specified, the API filters recordings by format. Valid values are `MP3`.", "example": "MP3", "schema": { "type": "string", "enum": [ "MP3" ] } }, { "name": "ownerType", "in": "query", "description": "Recording based on type of user.", "example": "user", "schema": { "type": "string", "enum": [ "user", "place", "virtualLine", "callQueue" ] } }, { "name": "storageRegion", "in": "query", "description": "Recording stored in certain Webex locations.", "example": "US", "schema": { "type": "string", "enum": [ "US", "SG", "GB", "JP", "DE", "AU", "IN", "CA" ] } }, { "name": "locationId", "in": "query", "description": "Fetch recordings for users in a particular Webex Calling location (as configured in Control Hub).", "example": "02a43ee9-17ae-4e0c-9e79-720e3a6503fd", "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": "Call with User7", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/admin/convergedRecordings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" }, "example": "https://webexpis.com/v1/admin/convergedRecordings" } }, "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": "baa93e55c62e4663ae24f13fbfdb247f", "topic": "call with title", "createTime": "2023-10-31T16:24:12+08:00", "timeRecorded": "2023-10-31T10:41:28+08:00", "ownerId": "d7468402-e95f-42a9-92c8-dd65f45d40ba", "ownerType": "virtualLine", "ownerEmail": "Rbs_TA_Admin@wbxlab.us", "format": "MP3", "durationSeconds": 60, "sizeBytes": 244333, "serviceType": "calling", "storageRegion": "US", "status": "available", "serviceData": { "locationId": "US", "callSessionId": "7ba2967530164bf0af1966cf2854b000" } }, { "id": "518cdca461c747dc840b29827d0cb62d", "topic": "call with title", "createTime": "2023-10-30T22:30:53+08:00", "timeRecorded": "2023-10-30T22:17:19+08:00", "ownerId": "d7468402-e95f-42a9-92c8-dd65f45d40ba", "ownerType": "virtualLine", "ownerEmail": "Rbs_TA_Admin@wbxlab.us", "format": "MP3", "durationSeconds": 60, "sizeBytes": 244326, "serviceType": "calling", "storageRegion": "US", "status": "available", "serviceData": { "locationId": "US", "callSessionId": "7ba2967530164bf0af1966cf2854b000" } } ] } } } }, "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 Admin or Compliance officer", "operationId": "list_recordings_for_admin_or_compliance_officer", "description": "List recordings for an admin or compliance officer. You can specify a date range, 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\nList recordings requires the `spark-compliance:recordings_read` scope for compliance officer and `spark-admin:recordings_read` scope for admin.\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": [ "Converged 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.", "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`. 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": "status", "in": "query", "description": "Recording's status. If not specified or `available`, retrieves recordings that are available. if specified as `purged`, retrieves recordings those are deleted but available to a compliance officer. Otherwise, if specified as `deleted`, retrieves recordings that have been moved into the recycle bin.", "example": "available", "schema": { "type": "string", "default": "available", "enum": [ "available", "deleted", "purged" ] } }, { "name": "serviceType", "in": "query", "description": "Recording's service-type. If specified, the API filters recordings by service-type. Valid values are `calling` and `customerAssist`.", "example": "calling", "schema": { "type": "string", "enum": [ "calling", "customerAssist" ] } }, { "name": "format", "in": "query", "description": "Recording's file format. If specified, the API filters recordings by format. Valid values are `MP3`.", "example": "MP3", "schema": { "type": "string", "enum": [ "MP3" ] } }, { "name": "ownerId", "in": "query", "description": "Webex user Id to fetch recordings for a particular user.", "example": "24683d6c-5529-4b60-a6c7-91e8b293bbab", "schema": { "type": "string" } }, { "name": "ownerEmail", "in": "query", "description": "Webex email address to fetch recordings for a particular user.", "example": "john.andersen@example.com", "schema": { "type": "string" } }, { "name": "ownerType", "in": "query", "description": "Recording based on type of user.", "example": "user", "schema": { "type": "string", "enum": [ "user", "place", "virtualLine", "callQueue" ] } }, { "name": "storageRegion", "in": "query", "description": "Recording stored in certain Webex locations.", "example": "US", "schema": { "type": "string", "enum": [ "US", "SG", "GB", "JP", "DE", "AU", "IN", "CA" ] } }, { "name": "locationId", "in": "query", "description": "Fetch recordings for users in a particular Webex Calling location (as configured in Control Hub).", "example": "02a43ee9-17ae-4e0c-9e79-720e3a6503fd", "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": "Call with User7", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] } }, "/convergedRecordings/{recordingId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "$ref": "#/components/schemas/RecordingObjectWithDirectDownloadLinks" }, "example": { "id": "62807eaf-0c89-492e-a3c3-c4751812603b", "topic": "call with default", "createTime": "2023-11-01T23:09:05+08:00", "timeRecorded": "2023-11-01T15:27:29+08:00", "temporaryDirectDownloadLinks": { "audioDownloadLink": "https://nsq1wss.dmz.webex.com/nbr/MultiThreadDownloadServlet?type=calling&orgId=59e67527-4651-4c90-b2f0-4f86c3bb6608&recordUUID=62807eaf-0c89-492e-a3c3-c4751812603b&ticket=SDJTSwAAAIV9%2BooFzh%2FkPd1Edek7wtCLYrVcjsJ2RTHGbhwYHpWOEQ%3D%3D×tamp=1699495025258", "suggestedNotesDownloadLink": "https://aibridge-sa1.dmz.webex.com/wbxaibridge/api/v2/notes/e823b9ee-4c4d-4e91-9379-502a9c8c9e6d?contentType=html&resourceType=CallingRecording&resourceId=e31feef9-38bf-456b-898b-be59d310a490&token=QUhTSwAAAIU2M4Tf2_V07LJZ9K5v3S4stc0ETlKC2vkbmDtqQ89fkTw_GfhGHqnMY4U-T8wfjdHsOmAER_fa2AJrAQ6ZLs3u8IiqJxhb26YY9jXTj1QZ-ITGrC4OJACXqxgxFx43o3XTQ_ORJm2_x7A4SBhrWKYFJFIy9TcT6vOE8c45lAvteEsRcfSP49dJ5y7klaWUI1s1", "actionItemsDownloadLink": "https://aibridge-sa1.dmz.webex.com/wbxaibridge/api/v2/actionItems/0715435b-c6f9-49f5-be66-e3cbd9f65c0d?contentType=html&resourceType=CallingRecording&resourceId=e31feef9-38bf-456b-898b-be59d310a490&token=QUhTSwAAAIU2M4Tf2_V07LJZ9K5v3S4stc0ETlKC2vkbmDtqQ89fkTw_GfhGHqnMY4U-T8wfjdHsOmAER_fa2AJrAQ6ZLs3u8IiqJxhb26YY9jXTj1QZ-ITGrC4OJACXqxgxFx43o3XTQ_ORJm2_x7A4SBhrWKYFJFIy9TcT6vOE8c45lAvteEsRcfSP49dJ5y7klaWUI1s1", "shortNotesDownloadLink": "https://aibridge-sa1.dmz.webex.com/wbxaibridge/api/v2/shortNotes/e823b9ee-4c4d-4e91-9379-502a9c8c9e6d?contentType=html&resourceType=CallingRecording&resourceId=e31feef9-38bf-456b-898b-be59d310a490&token=QUhTSwAAAIU2M4Tf2_V07LJZ9K5v3S4stc0ETlKC2vkbmDtqQ89fkTw_GfhGHqnMY4U-T8wfjdHsOmAER_fa2AJrAQ6ZLs3u8IiqJxhb26YY9jXTj1QZ-ITGrC4OJACXqxgxFx43o3XTQ_ORJm2_x7A4SBhrWKYFJFIy9TcT6vOE8c45lAvteEsRcfSP49dJ5y7klaWUI1s1", "expiration": "2023-11-09T12:57:05Z" }, "ownerId": "24683d6c-5529-4b60-a6c7-91e8b293bbab", "ownerType": "user", "ownerEmail": "nshtestwebex+crctestuser1@gmail.com", "format": "MP3", "durationSeconds": 298, "sizeBytes": 299918, "serviceType": "calling", "storageRegion": "US", "status": "available", "serviceData": { "locationId": "02a43ee9-17ae-4e0c-9e79-720e3a6503fd", "callSessionId": "c61b357e-8f53-4d97-9cd2-ae3202796fb0" } } } } }, "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": "get_recording_details", "description": "Retrieves details for a recording with a specified recording ID.\n\nOnly recordings of owner with the authenticated user may be retrieved.\n\nGet Recording Details requires the `spark-compliance:recordings_read` scope for compliance officer, `spark-admin:recordings_read` scope for admin and `spark:recordings_read` scope for user.\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": [ "Converged Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "62807eaf-0c89-492e-a3c3-c4751812603b", "schema": { "type": "string" } }, { "name": "timezone", "in": "header", "description": "e.g. UTC", "required": false, "schema": { "type": "string" }, "example": "UTC" } ] }, "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.", "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": "delete_a_recording", "description": "Removes a recording with a specified recording ID. The deleted recording cannot be recovered.\n\nIf a Compliance Officer deletes another user's recording, the recording will be inaccessible to regular users (host, attendees and shared), and to the Compliance officer as well. This action purges the recordings from Webex.\n\nDelete a Recording requires the `spark-compliance:recordings_write` scope.", "tags": [ "Converged 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": { "reason": "audit", "comment": "Compliance Officer's optional explanation for deleting a recording" }, "schema": { "$ref": "#/components/schemas/DeleteRecordingObject" } } } } } }, "/convergedRecordings/{recordingId}/metadata": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json;charset=UTF-8": { "schema": { "type": "object", "properties": { "id": { "type": "string" }, "orgId": { "type": "string" }, "ownerId": { "type": "string" }, "ownerType": { "type": "string" }, "ownerName": { "type": "string" }, "ownerEmail": { "type": "string" }, "storageRegion": { "type": "string" }, "serviceType": { "type": "string" }, "version": { "type": "string" }, "serviceData": { "type": "object", "properties": { "callRecordingId": { "type": "string" }, "locationId": { "type": "string" }, "callSessionId": { "type": "string" }, "personality": { "type": "string" }, "callingParty": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "number": { "type": "string" } } }, "calledParty": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "number": { "type": "string" } } }, "callId": { "type": "string" }, "session": { "type": "object", "properties": { "startTime": { "type": "string" }, "stopTime": { "type": "string" } } }, "recordingType": { "type": "string" }, "answererInfo": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "number": { "type": "string" } } }, "recordingActions": { "type": "array", "items": { "type": "object", "properties": { "action": { "type": "string" }, "time": { "type": "string" } } } }, "callActivity": { "type": "array", "items": { "type": "object", "properties": { "timeStamp": { "type": "string" }, "mediaStreams": { "type": "array", "items": { "type": "object", "properties": { "streamId": { "type": "string" }, "mode": { "type": "string" }, "mLineIndex": { "type": "string" } } } }, "participants": { "type": "array", "items": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "aor": { "type": "string" }, "send": { "type": "string" } }, "required": [ "actor", "aor", "send" ] } }, "announcementData": { "type": "object", "properties": { "announcementFilename": { "type": "string" }, "announcementTimestamp": { "type": "string" }, "announcementParticipants": { "type": "array", "items": { "type": "string" } }, "announcementType": { "type": "string" } } } } } }, "managedBy": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "number": { "type": "string" } } }, "connectedParty": { "type": "object", "properties": { "actor": { "type": "object", "properties": { "type": { "type": "string" }, "id": { "type": "string" } } }, "number": { "type": "string" } } } } } } }, "example": { "id": "81bb582c-e93e-40aa-abf6-962b620f6db4", "orgId": "ee8ebeb0-f077-4384-bb50-9de6141c7bac", "ownerId": "************************************", "ownerType": "USER", "ownerName": "PRS TestUser1", "ownerEmail": "nshtestwebex+prstestuser1@gmail.com", "storageRegion": "US", "serviceType": "calling", "version": "1.2", "serviceData": { "callRecordingId": "81bb582c-e93e-40aa-abf6-962b620f6db4", "locationId": "************************************", "callSessionId": "fe2f5688-91a8-4799-a867-a396bb2b024a", "personality": "originator", "callingParty": { "actor": { "type": "USER", "id": "c2335e53-c41b-423d-a41e-da0bf56e2038" }, "number": "sip:####PII-EXPOSURE####@X.X.X.X" }, "calledParty": { "actor": { "type": "USER", "id": "ac7913cd-d943-4e34-81a8-f66ad1a5e376" }, "number": "sip:4060@X.X.X.X;user=phone" }, "callId": "callhalf-581329:0", "session": { "startTime": "2023-11-07T08:50:21Z", "stopTime": "2023-11-07T08:55:19Z" }, "recordingType": "alwaysON", "answererInfo": { "actor": { "type": "USER", "id": "ac7913cd-d943-4e34-81a8-f66ad1a5e376" }, "number": "sip:4060@X.X.X.X;user=phone" }, "recordingActions": [ { "action": "PAUSE", "time": "2023-11-07T08:50:23Z" } ], "callActivity": [ { "timeStamp": "2023-11-07T08:50:25Z", "mediaStreams": [ { "streamId": "2915a7bf-fc51-428f-b3f8-bfe4d10b0681", "mode": "mixed", "mLineIndex": "0" } ], "participants": [ { "actor": { "type": "USER", "id": "c2335e53-c41b-423d-a41e-da0bf56e2038" }, "aor": "sip:vqfedfdrpl@", "send": "2915a7bf-fc51-428f-b3f8-bfe4d10b0681" }, { "actor": { "type": "USER", "id": "ac7913cd-d943-4e34-81a8-f66ad1a5e376" }, "aor": "sip:4060@X.X.X.X;user=phone", "send": "2915a7bf-fc51-428f-b3f8-bfe4d10b0681" } ], "announcementData": { "announcementFilename": "http:///media/en_US/TrtCallRecordingStarted.wav", "announcementTimestamp": "2023-11-07T08:50:23Z", "announcementParticipants": [ "sip:vqfedfdrpl@", "sip:4060@X.X.X.X;user=phone" ], "announcementType": "USER_LEVEL" } } ], "managedBy": { "actor": { "type": "USER", "id": "ac7913cd-d943-4e34-81a8-f66ad1a5e376" }, "number": "sip:4060@X.X.X.X;user=phone" }, "connectedParty": { "actor": { "type": "USER", "id": "ac7913cd-d943-4e34-81a8-f66ad1a5e376" }, "number": "sip:4060@X.X.X.X;user=phone" } } } } } }, "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.", "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 Recording metadata", "operationId": "get_recording_metadata", "description": "Retrieves metadata details for a recording with a specified recording ID. The recording must be owned by the authenticated user.\n\nFor information on the metadata fields, refer to [Metadata Guide](https://developer.webex.com/docs/api/guides/consolidated-metadata-documentation-and-samples-guide)\n\nGet Recording metadata requires the `spark-compliance:recordings_read` scope for compliance officer, `spark-admin:recordings_read` for admin and `spark:recordings_read` for user.", "tags": [ "Converged Recordings" ], "parameters": [ { "name": "recordingId", "in": "path", "description": "A unique identifier for the recording.", "required": true, "example": "4f914b1dfe3c4d11a61730f18c0f5387", "schema": { "type": "string" } }, { "name": "showAllTypes", "in": "query", "description": "If `showAllTypes` is `true`, all attributes will be shown. If it's `false` or not specified, the following attributes of the metadata will be hidden.\n serviceData.callActivity.mediaStreams\n serviceData.callActivity.participants\n serviceData.callActivity.redirectInfo\n serviceData.callActivity.redirectedCall\n", "example": false, "schema": { "type": "boolean", "default": false } } ] } }, "/convergedRecordings/reassign": { "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.", "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": "Reassign Recordings", "operationId": "reassign_recordings", "description": "Reassigns recordings to a new user. As an administrator, you can reassign a list of recordings or all recordings of a particular user to a new user.\nThe recordings can belong to an org user, a virtual line, or a workspace, but the destination user should only be a valid org user.\n\n* For a org user either `ownerEmail` or `recordingIds` or both must be provided.\n\n* For a virtual line or a workspace, `ownerID` or `recordingIds` or both must be provided.\n\n* If `recordingIds` and `ownerID` is empty but `ownerEmail` is provided, all recordings owned by the `ownerEmail` are reassigned to `reassignOwnerEmail`.\n\n* If `recordingIds` is provided and `ownerEmail` or `ownerID` is also provided, only the recordings specified by `recordingIds` that are owned by `ownerEmail` or `ownerID` are reassigned to `reassignOwnerEmail`.\n\n* If `ownerEmail` and `ownerID` is empty but `recordingIds` is provided, the recordings specified by `recordingIds` are reassigned to `reassignOwnerEmail` regardless of the current owner.\n\n* If both `ownerId` and `ownerEmail` are passed along with `recordingIds`, only the recordings specified by `recordingIds` that are owned by `ownerEmail` are reassigned to `reassignOwnerEmail`.\n\n* If `recordingIds` is empty but both `ownerId` and `ownerEmail` is provided, all recordings owned by the `ownerEmail` are reassigned to `reassignOwnerEmail`.\n\nThe `spark-admin:recordings_write` scope is required to reassign recordings.", "tags": [ "Converged Recordings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "ownerEmail": "john.andersen@example.com", "recordingIds": [ "4f914b1dfe3c4d11a61730f18c0f5387", "4f914b1dfe3c4d11a61730f18c0f5388" ], "reassignOwnerEmail": "brenda.song@example.com" }, "schema": { "$ref": "#/components/schemas/ReassignRecordingObject" } } } } } }, "/convergedRecordings/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: 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.", "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.", "headers": {}, "content": {} }, "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": "move_recordings_into_the_recycle_bin", "description": "Move recordings into the recycle bin with recording IDs or move all the recordings to the recycle bin.\n\nOnly the following two entities can use this API\n\n* Administrator: A user or an application with the scope `spark-admin:recordings_write`.\n\n* User: An authenticated user who does not have the scope `spark-admin:recordings_write` but has `spark:recordings_write`.\n\nAs an `administrator`, you can move a list of recordings or all recordings of a particular user within the org you manage to the recycle bin.\n\nAs a `user`, you can move a list of your own recordings or all your recordings to the recycle bin.\n\nRecordings in the recycle bin can be recovered by [Restore Recordings from Recycle Bin](/docs/api/v1/converged-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/converged-recordings/purge-recordings-from-recycle-bin) API to purge all or some of them.\n\n* If `trashAll` is `true`:\n * `recordingIds` should be empty.\n * If the caller of this API is an `administrator`, `ownerEmail` should not be empty and all recordings owned by the `ownerEmail` will be moved to the recycle bin.\n * If the caller of this API is a `user`, `ownerEmail` should be empty and all recordings owned by the caller will be moved to the recycle bin.\n\n* If `trashAll` is `false`:\n * `ownerEmail` should be empty.\n * `recordingIds` should not be empty and its maximum size is `100`.", "tags": [ "Converged Recordings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "trashAll": false, "recordingIds": [ "81bb582c-e93e-40aa-abf6-962b620f6db4" ] }, "schema": { "$ref": "#/components/schemas/BulkSoftDeleteRecordingObject" } } } } } }, "/convergedRecordings/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: 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.", "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.", "headers": {}, "content": {} }, "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": "restore_recordings_from_recycle_bin", "description": "Restore recordings from the recycle bin with recording IDs or restore all the recordings that are in the recycle bin.\n\nOnly the following two entities can use this API\n\n* Administrator: A user or an application with the scope `spark-admin:recordings_write`.\n\n* User: An authenticated user who does not have the scope `spark-admin:recordings_write` but has `spark:recordings_write`.\n\nAs an `administrator`, you can restore a list of recordings or all recordings of a particular user within the org you manage from the recycle bin.\n\nAs a `user`, you can restore a list of your own recordings or all your recordings from the recycle bin.\n\n* If `restoreAll` is `true`:\n * `recordingIds` should be empty.\n * If the caller of this API is an `administrator`, `ownerEmail` should not be empty and all recordings owned by the `ownerEmail` will be restored from the recycle bin.\n * If the caller of this API is a `user`, `ownerEmail` should be empty and all recordings owned by the caller will be restored from the recycle bin.\n\n* If `restoreAll` is `false`:\n * `ownerEmail` should be empty.\n * `recordingIds` should not be empty and its maximum size is `100`.", "tags": [ "Converged Recordings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "restoreAll": false, "recordingIds": [ "81bb582c-e93e-40aa-abf6-962b620f6db4" ] }, "schema": { "$ref": "#/components/schemas/BulkRestoreRecordingObject" } } } } } }, "/convergedRecordings/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: 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.", "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.", "headers": {}, "content": {} }, "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": "purge_recordings_from_recycle_bin", "description": "Purge recordings from the recycle bin matching the supplied recording IDs, or purge all the recordings that are in the recycle bin. A recording, once purged, cannot be restored.\n\nOnly the following two entities can use this API\n\n* Administrator: A user or an application with the scope `spark-admin:recordings_write`.\n\n* User: An authenticated user who does not have the scope `spark-admin:recordings_write` but has `spark:recordings_write`.\n\nAs an `administrator`, you can purge a list of recordings or all recordings of a particular user within the org you manage from the recycle bin.\n\nAs a `user`, you can purge a list of your own recordings or all your recordings from the recycle bin.\n\n* If `purgeAll` is `true`:\n * `recordingIds` should be empty.\n * If the caller of this API is an `administrator`, `ownerEmail` should not be empty and all recordings owned the `ownerEmail` will be purged from the recycle bin.\n * If the caller of this API is a `user`, `ownerEmail` should be empty and all recordings owned by the caller will be purged from the recycle bin.\n\n* If `purgeAll` is `false`:\n * `ownerEmail` should be empty.\n * `recordingIds` should not be empty and its maximum size is `100`.", "tags": [ "Converged Recordings" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "purgeAll": false, "recordingIds": [ "81bb582c-e93e-40aa-abf6-962b620f6db4" ] }, "schema": { "$ref": "#/components/schemas/BulkPurgeRecordingObject" } } } } } }, "/telephony/config/devices/{deviceId}/members": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMemberResponse" }, "example": { "model": "DMS Cisco 192", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "John", "lastName": "Smith", "phoneNumber": "2055552221", "extension": "000", "routingPrefix": "1234", "esn": "1234000", "primaryOwner": true, "port": 1, "t38FaxCompressionEnabled": false, "lineType": "SHARED_CALL_APPEARANCE", "lineWeight": 1, "hostIP": "10.0.0.45", "remoteIP": "192.102.12.84", "hotlineEnabled": true, "hotlineDestination": "+12055552222", "allowCallDeclineEnabled": true, "lineLabel": "share line label", "linePort": "evypzco5ds@55552222.int10.bcld.webex.com", "memberType": "PEOPLE", "location": { "name": "MainOffice", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw" } } ], "maxLineCount": 2 } } } }, "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 Device Members", "operationId": "getDeviceMembers", "description": "Get the list of all the members of the device including primary and secondary users.\n\nA device member can be either a person or a workspace. An admin can access the list of member details, modify member details and\nsearch for available members on a device.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the list of all members of the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Members on the device", "operationId": "updateMembersOnDevice", "description": "Modify member details on the device.\n\nA device member can be either a person, virtual line or a workspace. An admin can access the list of member details, modify member details and\nsearch for available members on a device.\n\nModifying members on the device requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify members on the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "members": [ { "port": 1, "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "t38FaxCompressionEnabled": false, "primaryOwner": true, "lineType": "SHARED_CALL_APPEARANCE", "lineWeight": 1, "allowCallDeclineEnabled": true, "hotlineDestination": "", "hotlineEnabled": false, "lineLabel": "share line label" } ] }, "schema": { "$ref": "#/components/schemas/PutMembersRequest" } } } } } }, "/telephony/config/devices/{deviceId}/availableMembers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchMemberResponse" }, "example": { "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "John", "lastName": "Smith", "phoneNumber": "+12055552221", "t38FaxCompressionEnabled": false, "lineType": "SHARED_CALL_APPEARANCE", "allowCallDeclineEnabled": true, "memberType": "PEOPLE", "location": { "name": "MainOffice", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw" } }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "firstName": "Bob", "lastName": "Smith-ws", "phoneNumber": "+12055552221", "t38FaxCompressionEnabled": false, "lineType": "SHARED_CALL_APPEARANCE", "allowCallDeclineEnabled": true, "memberType": "PLACE", "location": { "name": "MainOffice", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw" } } ] } } } }, "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": "Search Members", "operationId": "searchMembers", "description": "Search members that can be assigned to the device.\n\nA device member can be either a person or a workspace. A admin can access the list of member details, modify member details and\nsearch for available members on a device.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the list of available members on the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch.", "example": 0, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": 100, "schema": { "type": "number", "default": 2000 } }, { "name": "memberName", "in": "query", "description": "Search (Contains) numbers based on member name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search (Contains) based on number.", "example": "9828282867", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Unique identifier for the location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search (Contains) based on extension.", "example": "1234", "schema": { "type": "string" } }, { "name": "usageType", "in": "query", "description": "Search for members eligible to become the owner of the device, or share line on the device.", "example": "SHARED_LINE", "schema": { "type": "string", "enum": [ "DEVICE_OWNER", "SHARED_LINE" ] } }, { "name": "order", "in": "query", "description": "Sort the list of available members on the device in ascending order by name, use either last name `lname` or first name `fname`. Default: last name in ascending order.", "example": "lname", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/{deviceId}/availableMembers/count": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "totalCount" ], "properties": { "totalCount": { "type": "integer", "example": 100, "description": "The total count of members that can be assigned to the device." } } }, "example": { "totalCount": 100 } } } }, "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 Count of Members", "operationId": "getCountOfMembers", "description": "Get the count of members that can be assigned to the device.\n\nA device member can be either a person or a workspace.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the count of available members on the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "memberName", "in": "query", "description": "Search (Contains) numbers based on member name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search (Contains) based on number.", "example": "9828282867", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Unique identifier for the location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwMDA1ZTAwLTUzYjQtNDBjMy1hN2FkLTU2NTBmZGRkZDUzYw", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search (Contains) based on extension.", "example": "1234", "schema": { "type": "string" } }, { "name": "usageType", "in": "query", "description": "Search for members eligible to become the owner of the device, or share line on the device.\n * `DEVICE_OWNER` - Search for members eligible to become the owner of the device.\n * `SHARED_LINE` - Search for members eligible to share line on the device.", "example": "SHARED_LINE", "schema": { "type": "string", "enum": [ "DEVICE_OWNER", "SHARED_LINE" ] } } ] } }, "/telephony/config/devices/availableMembers/count": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "totalCount" ], "properties": { "totalCount": { "type": "integer", "example": 100, "description": "The total count of members that can be assigned to devices." } } }, "example": { "totalCount": 100 } } } }, "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 Count of Available Members", "operationId": "getCountOfAvailableMembers", "description": "Get the count of members that can be assigned to devices.\n\nA device member can be either a person or a workspace.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieves the count of available members in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "memberName", "in": "query", "description": "Search (Contains) numbers based on member name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search (Contains) based on number.", "example": "9828282867", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Unique identifier for the location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwMDA1ZTAwLTUzYjQtNDBjMy1hN2FkLTU2NTBmZGRkZDUzYw", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search (Contains) based on extension.", "example": "1234", "schema": { "type": "string" } }, { "name": "usageType", "in": "query", "description": "Search for members eligible to become the owner of the device, or share line on the device.\n * `DEVICE_OWNER` - Search for members eligible to become the owner of the device.\n * `SHARED_LINE` - Search for members eligible to share line on the device.", "example": "SHARED_LINE", "schema": { "type": "string", "enum": [ "DEVICE_OWNER", "SHARED_LINE" ] } }, { "name": "excludeVirtualLine", "in": "query", "description": "If true, filters out virtual lines from the available members list.", "example": true, "schema": { "type": "boolean" } }, { "name": "deviceLocationId", "in": "query", "description": "Unique identifier for the device's location. When specified, filters available members to those in the same location as the device.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwMDA1ZTAwLTUzYjQtNDBjMy1hN2FkLTU2NTBmZGRkZDUzYw", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/{deviceId}/actions/applyChanges/invoke": { "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": "Apply Changes for a specific device", "operationId": "applyChangesForASpecificDevice", "description": "Issues request to the device to download and apply changes to the configuration.\n\nApplying changes for a specific device requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Apply changes for a device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/{deviceId}/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceSettingsObjectForDeviceLevel" }, "example": { "customizations": { "ata": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "G711a", "secondary": "G711u", "tertiary": "G729a" }, "ataDtmfMode": "STRICT", "ataDtmfMethod": "AVT", "cdpEnabled": true, "lldpEnabled": true, "qosEnabled": true, "vlan": { "enabled": true, "value": 1 }, "webAccessEnabled": true, "nightlyResyncEnabled": true, "snmp": { "enabled": false, "trustedIP": "0.0.0.0/0.0.0.0", "getCommunity": "public", "setCommunity": "private", "snmpV3Enabled": false } }, "mpp": { "pnacEnabled": true, "audioCodecPriority": { "selection": "CUSTOM", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "backlightTimer": "ONE_MIN", "background": { "customUrl": "", "image": "WEBEX_DARK_BLUE" }, "displayNameFormat": "PERSON_FIRST_THEN_LAST_NAME", "cdpEnabled": false, "defaultLoggingLevel": "STANDARD", "dndServicesEnabled": true, "acd": { "enabled": true, "displayCallqueueAgentSoftkeys": "LAST_PAGE" }, "shortInterdigitTimer": 14, "longInterdigitTimer": 16, "lineKeyLabelFormat": "PERSON_EXTENSION", "lineKeyLEDPattern": "DEFAULT", "lldpEnabled": false, "mppUserWebAccessEnabled": true, "multicast": [ "192.86.108.226:22" ], "enhancedMulticast": { "xmlAppUrl": "http://127.0.0.1:8080/", "multicastList": [ { "hostAndPort": "224.0.0.0:22", "hasXmlAppUrl": true, "xmlAppTimeout": 10 } ] }, "offHookTimer": 30, "phoneLanguage": "RUSSIAN", "poeMode": "MAXIMUM", "qosEnabled": true, "screenTimeout": { "enabled": true, "value": 400 }, "usbPortsEnabled": true, "vlan": { "enabled": false, "value": 1, "pcPort": 1 }, "wifiNetwork": { "enabled": false, "authenticationMethod": "PSK", "ssidName": "my_wifi_network", "userId": "test-user" }, "callHistory": "LOCAL_CALL_HISTORY", "contacts": "WEBEX_DIRECTORY", "webexMeetingsEnabled": false, "usbPorts": { "enabled": true, "sideUsbEnabled": true, "rearUsbEnabled": true }, "volumeSettings": { "ringerVolume": 9, "speakerVolume": 9, "handsetVolume": 9, "headsetVolume": 9, "eHookEnabled": false, "allowEndUserOverrideEnabled": false }, "httpProxy": { "mode": "OFF", "autoDiscoveryEnabled": false, "host": "localhost", "port": "8080", "packUrl": "www.webex.com", "authSettingsEnabled": true, "username": "usernamecpi" }, "bluetooth": { "enabled": true, "mode": "PHONE" }, "passThroughPortEnabled": true, "userPasswordOverrideEnabled": true, "activeCallFocusEnabled": true, "peerFirmwareEnabled": true, "noiseCancellation": { "enabled": false, "allowEndUserOverrideEnabled": false }, "dialAssistEnabled": true, "callsPerLine": 8, "nightlyResyncEnabled": true, "missedCallNotificationEnabled": false, "softKeyLayout": { "softKeyMenu": { "idleKeyList": "abcdefgh", "offHookKeyList": "nmhsdjs", "dialingInputKeyList": "djsks", "progressingKeyList": "sdsd", "connectedKeyList": "ssdds", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "abcdef", "startConferenceKeyList": "abcdef", "conferencingKeyList": "abcdef", "releasingKeyList": "abcdef", "holdKeyList": "abcdef", "ringingKeyList": "abcdef", "sharedActiveKeyList": "abcdef", "sharedHeldKeyList": "abcdef" }, "psk": { "psk1": "abcdef", "psk2": "abcdef", "psk3": "abcdef", "psk4": "abcdef", "psk5": "abcdef", "psk6": "abcdef", "psk7": "abcdef", "psk8": "abcdef", "psk9": "abcdef", "psk10": "abcdef", "psk11": "abcdef", "psk12": "abcdef", "psk13": "abcdef", "psk14": "abcdef", "psk15": "abcdef", "psk16": "veeresh" }, "softKeyMenuDefaults": { "idleKeyList": "guestin|;guestout|;acd_login|;acd_logout|;astate|;redial|;newcall|;cfwd|;recents|;dnd|;unpark|;psk1|;gpickup|;pickup|;dir|4;miss|5;selfview|;messages", "offHookKeyList": "endcall|1;redial|2;dir|3;lcr|4;unpark|5;pickup|6;gpickup|7", "dialingInputKeyList": "dial|1;cancel|2;delchar|3;left|5;right|6", "progressingKeyList": "endcall|2", "connectedKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "endcall|2;xfer|3", "startConferenceKeyList": "endcall|2;conf|3", "conferencingKeyList": "endcall;join;crdstart;crdstop;crdpause;crdresume", "releasingKeyList": "endcall|2", "holdKeyList": "resume|1;endcall|2;newcall|3;redial|4;dir|5", "ringingKeyList": "answer|1;ignore|2", "sharedActiveKeyList": "newcall|1;psk1|2;dir|3;back|4", "sharedHeldKeyList": "resume|1;dir|4" }, "pskDefaults": { "psk1": "fnc=sd;ext=*11;nme=Call Pull" } }, "backgroundImage8875": "BLUE_LIGHT", "backlightTimer68XX78XX": "THIRTY_SEC", "allowMonitorLinesEnabled": false, "voiceFeedbackAccessibilityEnabled": false, "iceEnabled": true, "cfExpandedSoftKey": "ONLY_THE_CALL_FORWARD_ALL" }, "wifi": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "ldap": {}, "webAccess": { "enabled": false } } }, "customEnabled": true, "updateInProgress": true, "deviceCount": 9, "lastUpdateTime": 1659624763665 } } } }, "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 Device Settings", "operationId": "getDeviceSettings", "description": "Get override settings for a device.\n\nDevice settings lists all the applicable settings for MPP, ATA and Wifi devices at the device level. An admin can also modify the settings. DECT devices do not support settings at the device level.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Settings on the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "deviceModel", "in": "query", "description": "The model type of the device. The corresponding device model display name sometimes called the product name, can also be used to specify the model.", "example": "DMS Cisco 8811", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 device settings", "operationId": "updateDeviceSettings", "description": "Modify override settings for a device.\n\nDevice settings list all the applicable settings for an MPP and an ATA devices at the device level. Admins can also modify the settings. NOTE: DECT devices do not support settings at the device level.\n\nUpdating settings on the device requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvMzAwMmViYmYtYjE1Zi00NTg5LWFjYmUtZGY2NzkwNzE1OTVh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization in which the device resides..", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "deviceModel", "in": "query", "description": "The model type of the device. The corresponding device model display name sometimes called the product name, can also be used to specify the model.", "example": "DMS Cisco 8811", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "customizations": { "mpp": { "pnacEnabled": true, "audioCodecPriority": { "primary": "OPUS", "secondary": "G722", "tertiary": "G711u", "selection": "CUSTOM" }, "backlightTimerOldModel": "THIRTY_SECONDS", "background": { "customUrl": "", "image": "WEBEX_DARK_BLUE" }, "displayNameFormat": "PERSON_FIRST_THEN_LAST_NAME", "cdpEnabled": false, "defaultLoggingLevel": "DEBUGGING", "dndServicesEnabled": true, "acd": { "enabled": true, "displayCallqueueAgentSoftkeys": "LAST_PAGE" }, "shortInterdigitTimer": 14, "longInterdigitTimer": 16, "lineKeyLabelFormat": "PERSON_EXTENSION", "lineKeyLEDPattern": "DEFAULT", "lldpEnabled": false, "mppUserWebAccessEnabled": true, "multicast": [ "192.86.108.226:2223" ], "enhancedMulticast": { "xmlAppUrl": "http://127.0.0.1:8080/", "multicastList": [ { "hostAndPort": "224.0.0.0:22", "hasXmlAppUrl": true, "xmlAppTimeout": 10 } ] }, "offHookTimer": 30, "phoneLanguage": "RUSSIAN", "poeMode": "MAXIMUM", "qosEnabled": true, "screenTimeout": { "enabled": true, "value": 400 }, "usbPortsEnabled": true, "vlan": { "enabled": false, "value": 1, "pcPort": 1 }, "wifiNetwork": { "enabled": false, "authenticationMethod": "PSK", "ssidName": "my_wifi_network", "userId": "test-user" }, "backlightTimer": "FIVE_MIN", "callHistory": "LOCAL_CALL_HISTORY", "contacts": "WEBEX_DIRECTORY", "webexMeetingsEnabled": false, "usbPorts": { "enabled": true, "sideUsbEnabled": true, "rearUsbEnabled": true }, "volumeSettings": { "ringerVolume": 9, "speakerVolume": 9, "handsetVolume": 9, "headsetVolume": 9, "eHookEnabled": false, "allowEndUserOverrideEnabled": false }, "httpProxy": { "mode": "OFF", "autoDiscoveryEnabled": false, "host": "localhost", "port": "8080", "packUrl": "www.webex.com", "authSettingsEnabled": true, "username": "usernamecpi" }, "bluetooth": { "enabled": true, "mode": "PHONE" }, "passThroughPortEnabled": true, "userPasswordOverrideEnabled": true, "activeCallFocusEnabled": true, "peerFirmwareEnabled": true, "noiseCancellation": { "enabled": false, "allowEndUserOverrideEnabled": false }, "dialAssistEnabled": true, "callsPerLine": 8, "nightlyResyncEnabled": true, "missedCallNotificationEnabled": false, "softKeyLayout": { "softKeyMenu": { "idleKeyList": "abcdefgh", "offHookKeyList": "nmhsdjs", "dialingInputKeyList": "djsks", "progressingKeyList": "sdsd", "connectedKeyList": "ssdds", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "abcdef", "startConferenceKeyList": "abcdef", "conferencingKeyList": "abcdef", "releasingKeyList": "abcdef", "holdKeyList": "abcdef", "ringingKeyList": "abcdef", "sharedActiveKeyList": "abcdef", "sharedHeldKeyList": "abcdef" }, "psk": { "psk1": "abcdef", "psk2": "abcdef", "psk3": "abcdef", "psk4": "abcdef", "psk5": "abcdef", "psk6": "abcdef", "psk7": "abcdef", "psk8": "abcdef", "psk9": "abcdef", "psk10": "abcdef", "psk11": "abcdef", "psk12": "abcdef", "psk13": "abcdef", "psk14": "abcdef", "psk15": "abcdef", "psk16": "veeresh" }, "softKeyMenuDefaults": { "idleKeyList": "guestin|;guestout|;acd_login|;acd_logout|;astate|;redial|;newcall|;cfwd|;recents|;dnd|;unpark|;psk1|;gpickup|;pickup|;dir|4;miss|5;selfview|;messages", "offHookKeyList": "endcall|1;redial|2;dir|3;lcr|4;unpark|5;pickup|6;gpickup|7", "dialingInputKeyList": "dial|1;cancel|2;delchar|3;left|5;right|6", "progressingKeyList": "endcall|2", "connectedKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "endcall|2;xfer|3", "startConferenceKeyList": "endcall|2;conf|3", "conferencingKeyList": "endcall;join;crdstart;crdstop;crdpause;crdresume", "releasingKeyList": "endcall|2", "holdKeyList": "resume|1;endcall|2;newcall|3;redial|4;dir|5", "ringingKeyList": "answer|1;ignore|2", "sharedActiveKeyList": "newcall|1;psk1|2;dir|3;back|4", "sharedHeldKeyList": "resume|1;dir|4" }, "pskDefaults": { "psk1": "fnc=sd;ext=*11;nme=Call Pull" } }, "backgroundImage8875": "BLUE_LIGHT", "backlightTimer68XX78XX": "THIRTY_SEC", "allowMonitorLinesEnabled": false, "voiceFeedbackAccessibilityEnabled": false, "iceEnabled": true, "cfExpandedSoftKey": "ONLY_THE_CALL_FORWARD_ALL" }, "wifi": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "ldap": {}, "webAccess": { "enabled": false } } }, "customEnabled": true, "updateInProgress": true, "deviceCount": 9, "lastUpdateTime": 1659624763665 }, "schema": { "$ref": "#/components/schemas/PutDeviceSettingsRequest" } } } } } }, "/telephony/config/locations/{locationId}/devices/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceSettingsObject" }, "example": { "customizations": { "ata": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "G711a", "secondary": "G711u", "tertiary": "G729a" }, "ataDtmfMode": "STRICT", "ataDtmfMethod": "AVT", "cdpEnabled": true, "lldpEnabled": true, "qosEnabled": true, "vlan": { "enabled": true, "value": 1 }, "webAccessEnabled": true, "nightlyResyncEnabled": true, "snmp": { "enabled": false, "trustedIP": "0.0.0.0/0.0.0.0", "getCommunity": "public", "setCommunity": "private", "snmpV3Enabled": false } }, "mpp": { "pnacEnabled": true, "audioCodecPriority": { "selection": "CUSTOM", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "backlightTimer": "ONE_M", "background": { "customUrl": "", "image": "WEBEX_DARK_BLUE" }, "displayNameFormat": "PERSON_FIRST_THEN_LAST_NAME", "cdpEnabled": false, "defaultLoggingLevel": "STANDARD", "dndServicesEnabled": true, "acd": { "enabled": true, "displayCallqueueAgentSoftkeys": "LAST_PAGE" }, "shortInterdigitTimer": 14, "longInterdigitTimer": 16, "lineKeyLabelFormat": "PERSON_EXTENSION", "lineKeyLEDPattern": "DEFAULT", "lldpEnabled": false, "mppUserWebAccessEnabled": true, "multicast": [ "192.86.108.226:22" ], "enhancedMulticast": { "xmlAppUrl": "http://127.0.0.1:8080/", "multicastList": [ { "hostAndPort": "224.0.0.0:22", "hasXmlAppUrl": true, "xmlAppTimeout": 10 } ] }, "offHookTimer": 30, "phoneLanguage": "RUSSIAN", "poeMode": "MAXIMUM", "qosEnabled": true, "screenTimeout": { "enabled": true, "value": 400 }, "usbPortsEnabled": true, "vlan": { "enabled": false, "value": 1, "pcPort": 1 }, "wifiNetwork": { "enabled": false, "authenticationMethod": "PSK", "ssidName": "my_wifi_network", "userId": "test-user" }, "callHistory": "LOCAL_CALL_HISTORY", "contacts": "WEBEX_DIRECTORY", "webexMeetingsEnabled": false, "usbPorts": { "enabled": true, "sideUsbEnabled": true, "rearUsbEnabled": true }, "volumeSettings": { "ringerVolume": 9, "speakerVolume": 9, "handsetVolume": 9, "headsetVolume": 9, "eHookEnabled": false, "allowEndUserOverrideEnabled": false }, "httpProxy": { "mode": "OFF", "autoDiscoveryEnabled": false, "host": "localhost", "port": "8080", "packUrl": "www.webex.com", "authSettingsEnabled": true, "username": "usernamecpi" }, "bluetooth": { "enabled": true, "mode": "PHONE" }, "passThroughPortEnabled": true, "userPasswordOverrideEnabled": true, "activeCallFocusEnabled": true, "peerFirmwareEnabled": true, "noiseCancellation": { "enabled": false, "allowEndUserOverrideEnabled": false }, "dialAssistEnabled": true, "callsPerLine": 8, "nightlyResyncEnabled": true, "missedCallNotificationEnabled": false, "softKeyLayout": { "softKeyMenu": { "idleKeyList": "abcdefgh", "offHookKeyList": "nmhsdjs", "dialingInputKeyList": "djsks", "progressingKeyList": "sdsd", "connectedKeyList": "ssdds", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "abcdef", "startConferenceKeyList": "abcdef", "conferencingKeyList": "abcdef", "releasingKeyList": "abcdef", "holdKeyList": "abcdef", "ringingKeyList": "abcdef", "sharedActiveKeyList": "abcdef", "sharedHeldKeyList": "abcdef" }, "psk": { "psk1": "abcdef", "psk2": "abcdef", "psk3": "abcdef", "psk4": "abcdef", "psk5": "abcdef", "psk6": "abcdef", "psk7": "abcdef", "psk8": "abcdef", "psk9": "abcdef", "psk10": "abcdef", "psk11": "abcdef", "psk12": "abcdef", "psk13": "abcdef", "psk14": "abcdef", "psk15": "abcdef", "psk16": "veeresh" }, "softKeyMenuDefaults": { "idleKeyList": "guestin|;guestout|;acd_login|;acd_logout|;astate|;redial|;newcall|;cfwd|;recents|;dnd|;unpark|;psk1|;gpickup|;pickup|;dir|4;miss|5;selfview|;messages", "offHookKeyList": "endcall|1;redial|2;dir|3;lcr|4;unpark|5;pickup|6;gpickup|7", "dialingInputKeyList": "dial|1;cancel|2;delchar|3;left|5;right|6", "progressingKeyList": "endcall|2", "connectedKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "endcall|2;xfer|3", "startConferenceKeyList": "endcall|2;conf|3", "conferencingKeyList": "endcall;join;crdstart;crdstop;crdpause;crdresume", "releasingKeyList": "endcall|2", "holdKeyList": "resume|1;endcall|2;newcall|3;redial|4;dir|5", "ringingKeyList": "answer|1;ignore|2", "sharedActiveKeyList": "newcall|1;psk1|2;dir|3;back|4", "sharedHeldKeyList": "resume|1;dir|4" }, "pskDefaults": { "psk1": "fnc=sd;ext=*11;nme=Call Pull" } }, "backgroundImage8875": "BLUE_LIGHT", "backlightTimer68XX78XX": "THIRTY_SEC", "allowMonitorLinesEnabled": false, "voiceFeedbackAccessibilityEnabled": false, "iceEnabled": true, "cfExpandedSoftKey": "ONLY_THE_CALL_FORWARD_ALL" }, "wifi": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "ldap": {}, "webAccess": { "enabled": false } } }, "customEnabled": false, "updateInProgress": true, "deviceCount": 9, "lastUpdateTime": 1659624763665 } } } }, "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 Location Device Settings", "operationId": "getLocationDeviceSettings", "description": "Get device override settings for a location.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwMDA1ZTAwLTUzYjQtNDBjMy1hN2FkLTU2NTBmZGRkZDUzYw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization in which the device resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/{deviceId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetThirdPartyDeviceObject" }, "example": { "managedBy": "CUSTOMER", "owner": { "sipUserName": "392829", "linePort": "i6i1ar1v29@98079822.int10.bcld.webex.com" }, "proxy": { "outboundProxy": "hs17.hosted-int.bcld.webex.com" }, "manufacturer": "THIRD_PARTY", "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "ip": "100.110.120.130", "mac": "11223344AAFF", "model": "DMS Cisco 8811", "activationState": "activated", "description": [ "your tag", "device tag" ], "upgradeChannelEnabled": 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 Webex Calling Device Details", "operationId": "getWebexCallingDeviceDetails", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nRetrieves Webex Calling device details that include information needed for third-party device management.\n\nWebex calling devices are associated with a specific user Workspace or Virtual Line. Webex Calling devices share the location with the entity that owns them.\n\nPerson or workspace to which the device is assigned. Its fields point to a primary line/port of the device.\n\nRequires a full, location, user, or read-only admin auth token with the scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the device resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Third Party Device", "operationId": "updateThirdPartyDevice", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nModify a device's `sipPassword`.\n\nUpdating `sipPassword` on the device requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the device resides.", "example": "Y2lzY29zcGFyazovL3VzL0NBTExJTkdfREVWSUNFLzAwMDA1ZTAwLTUzYjQtNDBjMy1hN2FkLTU2NTBmZGRkZDUzYw", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "sipPassword": "Test4Password123&" }, "schema": { "$ref": "#/components/schemas/PutThirdPartyDevice" } } } } } }, "/telephony/config/people/{personId}/devices": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/deviceList" }, "example": { "devices": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "descriptions": [ "Your tag", "John Doe (Cisco 8875)" ], "model": "DMS Cisco 8875", "modelType": "MPP", "mac": "52EAD324FD21", "ipAddress": "10.201.128.187", "displayName": "Cisco 8875", "primaryOwner": true, "type": "PRIMARY", "hoteling": { "enabled": true, "limitGuestUse": true, "guestHoursLimit": 5 }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi81NzU2YWE1Yy03YjQ0LTQ3MjQtOGQ3ZS03NDE1MGVjODc4YmQ", "type": "PEOPLE", "firstName": "John", "lastName": "Doe" } } ], "maxDeviceCount": 1, "maxOwnedDeviceCount": 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 Person Devices", "operationId": "getPersonDevices", "description": "Get all devices for a person.\n\nThis requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "Person for whom to retrieve devices.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the person belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/people/{personId}/devices/settings/hoteling": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Hoteling Settings for a Person's Primary Devices", "operationId": "modefyHotelingSettingsForPersonsPrimaryDevices", "description": "Modify hoteling login configuration on a person's Webex Calling Devices which are in effect when the device is the user's primary device and device type is PRIMARY. To view the current hoteling login settings, see the `hoteling` field in [Get Person Devices](/docs/api/v1/device-call-settings/get-person-devices).\n\nModifying devices for a person requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "ID of the person associated with the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the person belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "hoteling": { "enabled": true, "limitGuestUse": true, "guestHoursLimit": 5 } }, "schema": { "$ref": "#/components/schemas/UserHotelingRequestPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/devices": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/placeDeviceList" }, "example": { "devices": [ { "id": "Y2lzY29zcGFyazovL3VzL0RFVklDRS81NzU2YWE1Yy1jODc4LTQ3MjQtOGQ3ZS03NDE1MGU3YjQ0YmQ", "descriptions": [ "Your tag", "John Doe (Cisco 8875)" ], "model": "DMS Cisco 8875", "mac": "52EAD324FD21", "ipAddress": "10.201.128.187", "displayName": "Cisco 8875", "primaryOwner": true, "type": "PRIMARY", "hoteling": { "enabled": true, "limitGuestUse": true, "guestHoursLimit": 24 }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi81NzU2YWE1Yy03YjQ0LTQ3MjQtOGQ3ZS03NDE1MGVjODc4YmQ", "type": "PEOPLE", "firstName": "John", "lastName": "Doe" } } ], "maxDeviceCount": 1, "maxOwnedDeviceCount": 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 Workspace Devices", "operationId": "getWorkspaceDevices", "description": "Get all devices for a workspace.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "ID of the workspace for which to retrieve devices.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the workspace belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Workspace Devices", "operationId": "modifyWorkspaceDevices", "description": "Modify devices for a workspace.\n\nModifying devices for a workspace requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "ID of the workspace for which to modify devices.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the workspace belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "limitGuestUse": true, "guestHoursLimit": 24 }, "schema": { "$ref": "#/components/schemas/HotelingRequest" } } } } } }, "/telephony/config/supportedDevices": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/supportedDevicesObject" }, "example": { "upgradeChannelList": [ "STABLE", "STABLE_DELAY", "PREVIEW", "BETA", "TESTING" ], "devices": [ { "model": "2N Customer Managed", "displayName": "2N Customer Managed", "type": "GENERIC_SIP", "manufacturer": "THIRD_PARTY", "managedBy": "CUSTOMER", "supportedFor": [ "PEOPLE", "PLACE" ], "onboardingMethod": [ "MAC_ADDRESS" ], "allowConfigureLayoutEnabled": false, "numberOfLinePorts": 20, "kemSupportEnabled": true, "kemModuleCount": 1, "kemModuleType": [ "KEM_20_KEYS" ], "upgradeChannelEnabled": false, "additionalPrimaryLineAppearancesEnabled": false, "basicEmergencyNomadicEnabled": false, "customizedBehaviorsEnabled": false, "allowConfigurePortsEnabled": false, "customizableLineLabelEnabled": false, "supportsLinePortReorderingEnabled": false, "kemLinesSupportEnabled": false, "portNumberSupportEnabled": false, "numberOfLineKeyButtons": 0, "t38Enabled": false, "callDeclinedEnabled": false, "touchScreenPhone": false, "deviceSettingsConfiguration": "NONE", "allowHotelingHostEnabled": false, "supportsLogCollection": "NONE", "supportsApplyChangesEnabled": false, "allowConfigureLinesEnabled": true, "allowConfigurePhoneSettingsEnabled": false, "supportsHotlineEnabled": false }, { "model": "DMS Polycom EE400", "displayName": "Polycom EE400", "familyDisplayName": "Poly", "type": "GENERIC_SIP", "manufacturer": "THIRD_PARTY", "managedBy": "CISCO", "supportedFor": [ "PEOPLE", "PLACE" ], "onboardingMethod": [ "MAC_ADDRESS" ], "allowConfigureLayoutEnabled": false, "numberOfLinePorts": 14, "kemSupportEnabled": false, "upgradeChannelEnabled": false, "additionalPrimaryLineAppearancesEnabled": true, "basicEmergencyNomadicEnabled": false, "customizedBehaviorsEnabled": true, "allowConfigurePortsEnabled": false, "customizableLineLabelEnabled": false, "supportsLinePortReorderingEnabled": true, "kemLinesSupportEnabled": false, "portNumberSupportEnabled": false, "numberOfLineKeyButtons": 0, "touchScreenPhone": false, "t38Enabled": false, "callDeclinedEnabled": true, "deviceSettingsConfiguration": "WEBEX_CALLING_DYNAMIC_DEVICE_CONFIGURATION", "allowHotelingHostEnabled": true, "supportsLogCollection": "NONE", "supportsApplyChangesEnabled": true, "allowConfigureLinesEnabled": true, "allowConfigurePhoneSettingsEnabled": true, "supportsHotlineEnabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Supported Devices", "operationId": "readTheListOfSupportedDevices", "description": "Gets the list of supported devices for an organization.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings With Device Dynamic Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List supported devices for an organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "allowConfigureLayoutEnabled", "in": "query", "description": "List supported devices that allow the user to configure the layout.", "example": true, "schema": { "type": "boolean" } }, { "name": "type", "in": "query", "description": "List supported devices of a specific type. To excluded device types from a request or query, add `type=not:DEVICE_TYPE`. For example, `type=not:MPP`.", "example": "MPP", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/settings": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListDeviceSettingsObject" }, "example": { "customizations": { "ata": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "G711a", "secondary": "G711u", "tertiary": "G729a" }, "ataDtmfMode": "STRICT", "ataDtmfMethod": "AVT", "cdpEnabled": true, "lldpEnabled": true, "qosEnabled": true, "vlan": { "enabled": true, "value": 1 }, "webAccessEnabled": true, "nightlyResyncEnabled": true, "snmp": { "enabled": false, "trustedIP": "0.0.0.0/0.0.0.0", "getCommunity": "public", "setCommunity": "private", "snmpV3Enabled": false } }, "dect": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "G729", "secondary": "G711u", "tertiary": "G711a" }, "cdpEnabled": true, "lldpEnabled": true, "qosEnabled": true, "vlan": { "enabled": false, "value": 0 }, "webAccessEnabled": true, "nightlyResyncEnabled": true }, "mpp": { "pnacEnabled": true, "audioCodecPriority": { "selection": "CUSTOM", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "backlightTimer": "ONE_MIN", "background": { "customUrl": "", "image": "WEBEX_DARK_BLUE" }, "displayNameFormat": "PERSON_FIRST_THEN_LAST_NAME", "cdpEnabled": false, "defaultLoggingLevel": "STANDARD", "dndServicesEnabled": true, "acd": { "enabled": true, "displayCallqueueAgentSoftkeys": "LAST_PAGE" }, "shortInterdigitTimer": 14, "longInterdigitTimer": 16, "lineKeyLabelFormat": "PERSON_EXTENSION", "lineKeyLEDPattern": "DEFAULT", "lldpEnabled": false, "mppUserWebAccessEnabled": true, "multicast": [ "192.86.108.226:22" ], "enhancedMulticast": { "xmlAppUrl": "http://127.0.0.1:8080/", "multicastList": [ { "hostAndPort": "224.0.0.0:22", "hasXmlAppUrl": true, "xmlAppTimeout": 10 } ] }, "offHookTimer": 30, "phoneLanguage": "RUSSIAN", "poeMode": "MAXIMUM", "qosEnabled": true, "screenTimeout": { "enabled": true, "value": 400 }, "usbPortsEnabled": true, "vlan": { "enabled": false, "value": 1, "pcPort": 1 }, "wifiNetwork": { "enabled": false, "authenticationMethod": "PSK", "ssidName": "my_wifi_network", "userId": "test-user" }, "callHistory": "LOCAL_CALL_HISTORY", "contacts": "WEBEX_DIRECTORY", "webexMeetingsEnabled": false, "usbPorts": { "enabled": true, "sideUsbEnabled": true, "rearUsbEnabled": true }, "volumeSettings": { "ringerVolume": 9, "speakerVolume": 9, "handsetVolume": 9, "headsetVolume": 9, "eHookEnabled": false, "allowEndUserOverrideEnabled": false }, "httpProxy": { "mode": "OFF", "autoDiscoveryEnabled": false, "host": "localhost", "port": "8080", "packUrl": "www.webex.com", "authSettingsEnabled": true, "username": "usernamecpi" }, "bluetooth": { "enabled": true, "mode": "PHONE" }, "passThroughPortEnabled": true, "userPasswordOverrideEnabled": true, "activeCallFocusEnabled": true, "peerFirmwareEnabled": true, "noiseCancellation": { "enabled": false, "allowEndUserOverrideEnabled": false }, "dialAssistEnabled": true, "callsPerLine": 8, "nightlyResyncEnabled": true, "missedCallNotificationEnabled": false, "softKeyLayout": { "softKeyMenu": { "idleKeyList": "abcdefgh", "offHookKeyList": "nmhsdjs", "dialingInputKeyList": "djsks", "progressingKeyList": "sdsd", "connectedKeyList": "ssdds", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "abcdef", "startConferenceKeyList": "abcdef", "conferencingKeyList": "abcdef", "releasingKeyList": "abcdef", "holdKeyList": "abcdef", "ringingKeyList": "abcdef", "sharedActiveKeyList": "abcdef", "sharedHeldKeyList": "abcdef" }, "psk": { "psk1": "abcdef", "psk2": "abcdef", "psk3": "abcdef", "psk4": "abcdef", "psk5": "abcdef", "psk6": "abcdef", "psk7": "abcdef", "psk8": "abcdef", "psk9": "abcdef", "psk10": "abcdef", "psk11": "abcdef", "psk12": "abcdef", "psk13": "abcdef", "psk14": "abcdef", "psk15": "abcdef", "psk16": "veeresh" }, "softKeyMenuDefaults": { "idleKeyList": "guestin|;guestout|;acd_login|;acd_logout|;astate|;redial|;newcall|;cfwd|;recents|;dnd|;unpark|;psk1|;gpickup|;pickup|;dir|4;miss|5;selfview|;messages", "offHookKeyList": "endcall|1;redial|2;dir|3;lcr|4;unpark|5;pickup|6;gpickup|7", "dialingInputKeyList": "dial|1;cancel|2;delchar|3;left|5;right|6", "progressingKeyList": "endcall|2", "connectedKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "connectedVideoKeyList": "hold;endcall;xfer;conf;xferLx;confLx;bxfer;phold;redial;dir;park;crdstart;crdstop;crdpause;crdresume", "startTransferKeyList": "endcall|2;xfer|3", "startConferenceKeyList": "endcall|2;conf|3", "conferencingKeyList": "endcall;join;crdstart;crdstop;crdpause;crdresume", "releasingKeyList": "endcall|2", "holdKeyList": "resume|1;endcall|2;newcall|3;redial|4;dir|5", "ringingKeyList": "answer|1;ignore|2", "sharedActiveKeyList": "newcall|1;psk1|2;dir|3;back|4", "sharedHeldKeyList": "resume|1;dir|4" }, "pskDefaults": { "psk1": "fnc=sd;ext=*11;nme=Call Pull" } }, "backgroundImage8875": "BLUE_LIGHT", "backlightTimer68XX78XX": "THIRTY_SEC", "allowMonitorLinesEnabled": false, "voiceFeedbackAccessibilityEnabled": false, "iceEnabled": true }, "wifi": { "audioCodecPriority": { "selection": "REGIONAL", "primary": "OPUS", "secondary": "G722", "tertiary": "G711u" }, "ldap": {}, "webAccess": { "enabled": false } } }, "updateInProgress": false, "deviceCount": 22, "lastUpdateTime": 1659624763665 } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the device override settings for a organization", "operationId": "readDeviceOverrideSettingsForOrganization", "description": "Get device override settings for an organization.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List supported devices for an organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/lineKeyTemplates": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9lYzVmMjg0Ni1iMDQ2LTQ5OGEtOWU2Mi04ZTg4ZWFlZmQyMGQ", "description": "ID of the newly created Line Key Template." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9lYzVmMjg0Ni1iMDQ2LTQ5OGEtOWU2Mi04ZTg4ZWFlZmQyMGQ" } } } }, "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 Line Key Template", "operationId": "createLineKeyTemplate", "description": "Create a Line Key Template in this organization.\n\nLine Keys, also known as Programmable Line Keys (PLK), are the keys found on either side of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows customers to create a `Line Key Template` for a device model.\n\nCreating a Line Key Template requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the line key template belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "templateName": "My Template", "deviceModel": "DMS Cisco 8851", "userReorderEnabled": true, "lineKeys": [ { "lineKeyIndex": 1, "lineKeyType": "PRIMARY_LINE" }, { "lineKeyIndex": 2, "lineKeyType": "SPEED_DIAL", "lineKeyLabel": "Help Line", "lineKeyValue": "3568" }, { "lineKeyIndex": 3, "lineKeyType": "SHARED_LINE", "sharedLineIndex": 1 } ] }, "schema": { "$ref": "#/components/schemas/PostLineKeyTemplateRequest" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "lineKeyTemplates" ], "properties": { "lineKeyTemplates": { "type": "array", "items": { "$ref": "#/components/schemas/lineKeyTemplatesResponse" }, "description": "Array of Line Key Templates." } } }, "example": { "lineKeyTemplates": [ { "id": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9lYzVmMjg0Ni1iMDQ2LTQ5OGEtOWU2Mi04ZTg4ZWFlZmQyMGQ", "templateName": "template-for-8845", "deviceModel": "DMS Cisco 8845", "modelDisplayName": "Cisco 8845" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the list of Line Key Templates", "operationId": "readListOfLineKeyTemplates", "description": "List all Line Key Templates available for this organization.\n\nLine Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to retrieve the list of Line Key Templates that are available for the organization.\n\nRetrieving this list requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List line key templates for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/lineKeyTemplates/{templateId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLineKeyTemplateResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM", "templateName": "My Template", "deviceModel": "DMS Cisco 8851", "modelDisplayName": "Cisco 8851", "userReorderEnabled": true, "lineKeys": [ { "lineKeyIndex": 1, "lineKeyType": "PRIMARY_LINE" }, { "lineKeyIndex": 2, "lineKeyType": "SPEED_DIAL", "lineKeyLabel": "Home", "lineKeyValue": "2891" }, { "lineKeyIndex": 3, "lineKeyType": "SHARED_LINE", "sharedLineIndex": 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 details of a Line Key Template", "operationId": "getDetailsOfLineKeyTemplate", "description": "Get detailed information about a Line Key Template by template ID in an organization.\n\nLine Keys, also known as Programmable Line Keys (PLK), are the keys found on either side of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to retrieve a line key template by its ID in an organization.\n\nRetrieving a line key template requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "templateId", "in": "path", "description": "Get line key template for this template ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve a line key template for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Line Key Template", "operationId": "modifyLineKeyTemplate", "description": "Modify a Line Key Template by its template ID in an organization.\n\nLine Keys, also known as Programmable Line Keys (PLK), are the keys found on either side of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to modify an existing Line Key Template by its ID in an organization.\n\nModifying an existing Line Key Template requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "templateId", "in": "path", "description": "Modify line key template with this template ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify a line key template for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "userReorderEnabled": true, "lineKeys": [ { "lineKeyIndex": 1, "lineKeyType": "PRIMARY_LINE" }, { "lineKeyIndex": 2, "lineKeyType": "SPEED_DIAL", "lineKeyLabel": "Office", "lineKeyValue": "4850" }, { "lineKeyIndex": 3, "lineKeyType": "SHARED_LINE", "sharedLineIndex": 1 } ] }, "schema": { "$ref": "#/components/schemas/PutLineKeyTemplateRequest" } } } } }, "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 Line Key Template", "operationId": "deleteLineKeyTemplate", "description": "Delete a Line Key Template by its template ID in an organization.\n\nLine Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to delete an existing Line Key Templates by its ID in an organization.\n\nDeleting an existing line key template requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "templateId", "in": "path", "description": "Delete line key template with this template ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS9kNDUzM2MwYi1hZGRmLTRjODUtODk0YS1hZTVkOTAyYzAyMDM", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete a line key template for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/actions/previewApplyLineKeyTemplate/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "deviceCount" ], "properties": { "deviceCount": { "type": "number", "description": "Number of devices affected." } } }, "example": { "deviceCount": 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": "Preview Apply Line Key Template", "operationId": "previewApplyLineKeyTemplate", "description": "Preview the number of devices that will be affected by the application of a Line Key Template or when resetting devices to their factory Line Key settings.\n\nLine Keys, also known as Programmable Line Keys (PLK), are the keys found on either side of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to preview the number of devices that will be affected if a customer were to apply a Line Key Template or apply factory default Line Key settings to devices.\n\nRetrieving the number of devices affected requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Preview Line Key Template for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "action": "APPLY_TEMPLATE", "templateId": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS81NzVhMWY3Zi03MjRkLTRmZGUtODk4NC1mNjNhNDljMzYxZmQ", "locationIds": [ "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" ], "excludeDevicesWithCustomLayout": true, "includeDeviceTags": [ "accounting", "sales" ], "excludeDeviceTags": [ "admin" ], "advisoryTypes": { "moreSharedAppearancesEnabled": true, "fewSharedAppearancesEnabled": true, "moreMonitorAppearancesEnabled": "true", "moreCPEAppearancesEnabled": "true", "moreModeManagementAppearancesEnabled": true } }, "schema": { "$ref": "#/components/schemas/PostApplyLineKeyTemplateRequest" } } } } } }, "/telephony/config/jobs/devices/applyLineKeyTemplate": { "post": { "responses": { "202": { "description": "Accepted", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplyLineKeyTemplateJobDetails" }, "example": { "name": "applyphonelinekeytemplates", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "name": "applyphonelinekeytemplatesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "STARTED", "latestExecutionExitCode": "UNKNOWN", "percentageComplete": 10, "updatedCount": 1, "advisoryCount": 0 } } } }, "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": "Apply a Line Key Template", "operationId": "applyLineKeyTemplate", "description": "Apply a Line Key Template or reset devices to their factory Line Key settings.\n\nLine Keys, also known as Programmable Line Keys (PLK), are the keys found on either side of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to apply a line key template or apply factory default Line Key settings to devices in a set of locations or across all locations in the organization.\n\nApplying a Line Key Template or resetting devices to their default Line Key configuration requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Apply Line Key Template for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "action": "APPLY_TEMPLATE", "templateId": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS81NzVhMWY3Zi03MjRkLTRmZGUtODk4NC1mNjNhNDljMzYxZmQ", "locationIds": [ "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" ], "excludeDevicesWithCustomLayout": true, "includeDeviceTags": [ "accounting", "sales" ], "excludeDeviceTags": [ "admin" ], "advisoryTypes": { "moreSharedAppearancesEnabled": true, "fewSharedAppearancesEnabled": true, "moreMonitorAppearancesEnabled": "true", "moreCPEAppearancesEnabled": "true", "moreModeManagementAppearancesEnabled": true } }, "schema": { "$ref": "#/components/schemas/PostApplyLineKeyTemplateRequest" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplyLineKeyTemplateJobList" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "applyphonelinekeytemplatesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "percentageComplete": 100, "updatedCount": 1, "advisoryCount": 0 } ] } } } }, "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 List of Apply Line Key Template jobs", "operationId": "getListOfApplyLineKeyTemplatesJobs", "description": "Get the list of all apply line key templates jobs in an organization.\n\nLine Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to retrieve all the apply line key templates jobs in an organization.\n\nRetrieving the list of apply line key templates jobs in an organization requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of line key templates jobs in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/applyLineKeyTemplate/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplyLineKeyTemplateJobDetails" }, "example": { "name": "applyphonelinekeytemplates", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "applyphonelinekeytemplatesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "percentageComplete": 100, "updatedCount": 1, "advisoryCount": 0 } } } }, "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 the job status of an Apply Line Key Template job", "operationId": "getTheJobStatusOfAnApplyLineKeyTemplateJob", "description": "Get the status of an apply line key template job by its job ID.\n\nLine Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to check the status of an apply line key templates job by job ID in an organization.\n\nChecking the the status of an apply line key templates job in an organization requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job status for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Check a line key template job status in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/applyLineKeyTemplate/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplyLineKeyTemplateJobErrors" }, "example": { "error": { "key": "500", "message": [ { "description": null, "code": "BATCH-0", "locationId": null } ] }, "trackingId": "NA_b5352f89-dee8-4eca-bb6f-edabfb175688" } } } }, "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 job errors for an Apply Line Key Template job", "operationId": "getJobErrorsForApplyLineKeyTemplateJob", "description": "GET job errors for an apply Line Key Template job in an organization.\n\nLine Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display.\nA Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model.\nThis API allows users to retrieve all the errors of an apply line key templates job by job ID in an organization.\n\nRetrieving all the errors of an apply line key templates job in an organization requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job errors for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve list of errors for an apply line key template job in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/dects/supportedDevices": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListDectDeviceType" }, "example": { "devices": [ { "model": "DMS Cisco DBS110", "displayName": "Cisco DECT 110 Base", "numberOfBaseStations": 2, "numberOfLinePorts": 20, "numberOfRegistrationsSupported": 10 }, { "model": "DMS Cisco DBS210", "displayName": "Cisco DECT 210 Base", "numberOfBaseStations": 250, "numberOfLinePorts": 1000, "numberOfRegistrationsSupported": 30 } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the DECT device type list - Deprecated", "operationId": "readTheDectDeviceTypeListDeprecated", "description": "
Not supported for Webex for Government (FedRAMP).
\n\n
The REST path for this API has changed to [GET /telephony/config/devices/dectNetworks/supportedDevices{?orgId}]. The use of this old REST path is deprecated and will be decommissioned on October 10, 2024. Please start using it for all future projects.
\n\nGet DECT device type list with base stations and line ports supported count. This is a static list.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/dectNetworks/supportedDevices": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListDectDeviceType" }, "example": { "devices": [ { "model": "DMS Cisco DBS110", "displayName": "Cisco DECT 110 Base", "numberOfBaseStations": 2, "numberOfLinePorts": 20, "numberOfRegistrationsSupported": 10 }, { "model": "DMS Cisco DBS210", "displayName": "Cisco DECT 210 Base", "numberOfBaseStations": 250, "numberOfLinePorts": 1000, "numberOfRegistrationsSupported": 30 } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the DECT device type list", "operationId": "readTheDectDeviceTypeList", "description": "
Not supported for Webex for Government (FedRAMP).
\n\nGet DECT device type list with base stations and line ports supported count. This is a static list.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/actions/validateMacs/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MACAddressResponse" }, "example": { "status": "ERRORS", "macStatus": [ { "mac": "ab125678cdef", "state": "AVAILABLE" }, { "mac": "00005E0053B4", "state": "UNAVAILABLE", "errorCode": 5675, "message": "[Error 5675] MAC Address is in use." } ] } } } }, "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": "Validate a list of MAC address", "operationId": "validateAListOfMACAddress", "description": "Validate a list of MAC addresses.\n\nValidating this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Validate the mac address(es) for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "macs": [ "ab125678cdef", "00005E0053B4" ] }, "schema": { "$ref": "#/components/schemas/ValidateMACRequest" } } } } } }, "/telephony/config/jobs/devices/callDeviceSettings": { "post": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StartJobResponse" }, "example": { "name": "calldevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "jobType": "calldevicesettings", "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 235142, "jobExecutionStatus": [ { "id": 235842, "lastUpdated": "2022-08-12T14:15:14.591Z", "statusMessage": "STARTING", "exitCode": "UNKNOWN", "createdTime": "2022-08-12T14:15:14.591Z", "timeElapsed": "PT0S" } ], "latestExecutionStatus": "STARTING", "latestExecutionExitCode": "UNKNOWN", "locationCustomizationsEnabled": false, "target": "CUSTOMER", "locationId": "", "percentageComplete": 0 } } } }, "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": "Change Device Settings Across Organization Or Location Job", "operationId": "changeDeviceSettingsAcrossOrganizationOrLocationJob", "description": "Change device settings across organization or locations jobs.\n\nPerforms bulk and asynchronous processing for all types of device settings initiated by organization and system admins in a stateful persistent manner. This job will modify the requested device settings across all the devices. Whenever a location ID is specified in the request, it will modify the requested device settings only for the devices that are part of the provided location within an organization.\n\nReturns a unique job ID which can then be utilized further to retrieve status and errors for the same.\n\nOnly one job per customer can be running at any given time within the same organization. An attempt to run multiple jobs at the same time will result in a 409 error response.\n\nRunning a job requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Apply change device settings for all the devices under this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "locationCustomizationsEnabled": true, "customizations": { "ata": { "audioCodecPriority": { "primary": "G711a", "secondary": "G711u", "tertiary": "G729a", "selection": "REGIONAL" }, "ataDtmfMode": "NORMAL", "ataDtmfMethod": "AVT", "cdpEnabled": true, "lldpEnabled": true, "qosEnabled": true, "vlan": { "enabled": true, "value": 1 } }, "dect": { "audioCodecPriority": { "primary": "G729", "secondary": "G711u", "tertiary": "G711a", "selection": "REGIONAL" }, "cdpEnabled": true, "lldpEnabled": false, "multicast": [], "qosEnabled": true, "vlan": { "enabled": false, "value": null } }, "mpp": { "pnacEnabled": true, "audioCodecPriority": { "primary": "OPUS", "secondary": "G722", "tertiary": "G711u", "selection": "CUSTOM" }, "backlightTimer": "FIVE_M", "background": { "customUrl": "", "image": "NONE" }, "displayNameFormat": "PERSON_FIRST_THEN_LAST_NAME", "cdpEnabled": false, "dndServicesEnabled": true, "acd": { "enabled": false, "displayCallqueueAgentSoftkeys": "LAST_PAGE" }, "shortInterdigitTimer": 14, "longInterdigitTimer": 16, "lineKeyLabelFormat": "PERSON_FIRST_THEN_LAST_NAME", "lineKeyLEDPattern": "DEFAULT", "lldpEnabled": false, "mppUserWebAccessEnabled": true, "multicast": [], "enhancedMulticast": { "xmlAppUrl": "http://127.0.0.1:8080/", "multicastList": [ { "hostAndPort": "224.0.0.0:22", "hasXmlAppUrl": true, "xmlAppTimeout": 10 } ] }, "offHookTimer": 30, "phoneLanguage": "DANISH", "poeMode": "MAXIMUM", "qosEnabled": true, "screenTimeout": { "enabled": true, "value": 400 }, "usbPortsEnabled": true, "vlan": { "enabled": false, "value": 1, "pcPort": 1 }, "wifiNetwork": { "enabled": false, "authenticationMethod": "PSK", "ssidName": "test_wifi_network", "userId": "test" }, "allowMonitorLinesEnabled": false, "iceEnabled": true, "cfExpandedSoftKey": "ONLY_THE_CALL_FORWARD_ALL" } } }, "schema": { "$ref": "#/components/schemas/AdminBatchStartJobObjectLocationCustomizations" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobListResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "jobType": "calldevicesettings", "trackingId": "ATLAS_89144033-afb5-44e8-bae8-946e84c71fa3_0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 235690, "jobExecutionStatus": [ { "id": 236410, "startTime": "2022-08-15T12:54:50.380Z", "endTime": "2022-08-15T12:55:01.833Z", "lastUpdated": "2022-08-15T12:55:02.160Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-08-15T12:54:50.350Z", "stepExecutionStatuses": [ { "id": 1159389, "startTime": "2022-08-15T12:54:50.433Z", "endTime": "2022-08-15T12:55:01.826Z", "lastUpdated": "2022-08-15T12:55:01.826Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "calldevicesettingsOverrideProcess", "timeElapsed": "PT11.393S" } ], "timeElapsed": "PT11.393S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "locationCustomizationsEnabled": false, "target": "CUSTOMER", "locationId": "", "percentageComplete": 100, "deviceCount": 23 } ] } } } }, "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 Change Device Settings Jobs", "operationId": "listChangeDeviceSettingsJobs", "description": "List change device settings jobs.\n\nLists all the jobs for jobType `calldevicesettings` for the given organization in order of most recent one to oldest one irrespective of its status.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of 'calldevicesettings' jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of jobs. Default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of jobs returned to this maximum count. Default is 2000.", "example": "100", "schema": { "type": "number" } } ] } }, "/telephony/config/jobs/devices/callDeviceSettings/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/jobIdResponseObject" }, "example": { "name": "calldevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "jobType": "calldevicesettings", "trackingId": "ATLAS_89144033-afb5-44e8-bae8-946e84c71fa3_0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 235690, "jobExecutionStatus": [ { "id": 236410, "startTime": "2022-08-15T12:54:50.380Z", "endTime": "2022-08-15T12:55:01.833Z", "lastUpdated": "2022-08-15T12:55:02.160Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-08-15T12:54:50.350Z", "stepExecutionStatuses": [ { "id": 1159389, "startTime": "2022-08-15T12:54:50.433Z", "endTime": "2022-08-15T12:55:01.826Z", "lastUpdated": "2022-08-15T12:55:01.826Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "calldevicesettingsOverrideProcess", "timeElapsed": "PT11.393S" } ], "timeElapsed": "PT11.393S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "locationCustomizationsEnabled": false, "target": "CUSTOMER", "locationId": "", "percentageComplete": 100, "deviceCount": 23 } } } }, "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 Change Device Settings Job Status", "operationId": "getChangeDeviceSettingsJobStatus", "description": "Get change device settings job status.\n\nProvides details of the job with `jobId` of `jobType` `calldevicesettings`.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/callDeviceSettings/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 0, "error": { "key": "500", "message": [ { "description": "Unable to trigger device settings override process.", "code": null, "location": null } ] }, "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137" } ] } } } }, "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 Change Device Settings Job Errors", "operationId": "listChangeDeviceSettingsJobErrors", "description": "List change device settings job errors.\n\nLists all error details of the job with `jobId` of `jobType` `calldevicesettings`.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve list of jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch. Default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch. Default is 2000", "example": "100", "schema": { "type": "number" } } ] } }, "/telephony/config/devices/{deviceId}/layout": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceLayout" }, "example": { "layoutMode": "CUSTOM", "userReorderEnabled": "true", "lineKeys": [ { "lineKeyIndex": 1, "lineKeyType": "PRIMARY_LINE" }, { "lineKeyIndex": 2, "lineKeyType": "SPEED_DIAL", "lineKeyLabel": "Home", "lineKeyValue": "213456" } ], "kemModuleType": "KEM_14_KEYS", "kemKeys": [ { "kemModuleIndex": 1, "kemKeyIndex": 1, "kemKeyType": "CLOSED" }, { "kemModuleIndex": 1, "kemKeyIndex": 2, "kemKeyType": "SPEED_DIAL", "kemKeyLabel": "Office", "kemKeyValue": "213457" }, { "kemModuleIndex": 1, "kemKeyIndex": 3, "kemKeyType": "SHARED_LINE", "sharedLineIndex": 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 Device Layout by Device ID", "operationId": "getDeviceLayoutByDeviceId", "description": "Get layout information of a device by device ID in an organization.\n\nDevice layout customizes a user’s programmable line keys (PLK) on the phone and any attached Key Expansion Modules (KEM) with the existing configured line members and the user’s monitoring list.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Get device layout for this device ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRS8yM2VlNDM5OS1lZWYwLTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve a device layout for the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Device Layout by Device ID", "operationId": "modifyDeviceLayoutByDeviceId", "description": "Modify the layout of a device by device ID in an organization.\n\nDevice layout customizes a user’s programmable line keys (PLK) on the phone and any attached Key Expansion Modules (KEM) with the existing configured line members and the user’s monitoring list.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Modify device layout for this device ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFVklDRS8yM2VlNDM5OS1lZWYwLTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM/", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify a device layout for the device in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "layoutMode": "CUSTOM", "userReorderEnabled": "true", "lineKeys": [ { "lineKeyIndex": 1, "lineKeyType": "PRIMARY_LINE" }, { "lineKeyIndex": 2, "lineKeyType": "SPEED_DIAL", "lineKeyLabel": "Home", "lineKeyValue": "213456" } ], "kemModuleType": "KEM_14_KEYS", "kemKeys": [ { "kemModuleIndex": 1, "kemKeyIndex": 1, "kemKeyType": "CLOSED" }, { "kemModuleIndex": 1, "kemKeyIndex": 2, "kemKeyType": "SPEED_DIAL", "kemKeyLabel": "Office", "kemKeyValue": "213457" }, { "kemModuleIndex": 1, "kemKeyIndex": 3, "kemKeyType": "SHARED_LINE", "sharedLineIndex": 1 } ] }, "schema": { "$ref": "#/components/schemas/DeviceLayout" } } } } } }, "/telephony/config/jobs/devices/rebuildPhones": { "post": { "responses": { "202": { "description": "Accepted", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RebuildPhonesJob" }, "example": { "name": "rebuildphones", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "rebuildphonesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg", "percentageComplete": 100 } } } }, "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": "Rebuild Phones Configuration", "operationId": "rebuildPhonesConfiguration", "description": "
Not supported for Webex for Government (FedRAMP)
.\n\nRebuild all phone configurations for the specified location.\n\nRebuild phones jobs are used when there is a change in the network configuration of phones in a location, i.e. a change in the network configuration of devices in a location from public to private and vice-versa.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Rebuild phones for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg" }, "schema": { "$ref": "#/components/schemas/RebuildPhonesPostRequest" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RebuildPhonesList" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "rebuildphonesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg", "percentageComplete": 100, "deviceCount": 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 Rebuild Phones Jobs", "operationId": "listRebuildPhonesJobs", "description": "
Not supported for Webex for Government (FedRAMP)
.\n\nGet the list of all Rebuild Phones jobs in an organization.\n\nRebuild phones jobs are used when there is a change in the network configuration of phones in a location, i.e. a change in the network configuration of devices in a location from public to private and vice-versa.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List of rebuild phones jobs in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/rebuildPhones/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RebuildPhonesJob" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "rebuildphonesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg", "percentageComplete": 100, "deviceCount": 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 the Job Status of a Rebuild Phones Job", "operationId": "getTheJobStatusOfARebuildPhonesJob", "description": "
Not supported for Webex for Government (FedRAMP)
.\n\nGet the details of a rebuild phones job by its job ID.\n\nRebuild phones jobs are used when there is a change in the network configuration of phones in a location, i.e. a change in the network configuration of devices in a location from public to private and vice-versa.\n\nThis API requires requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job status for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Check a rebuild phones job status in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/rebuildPhones/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 0, "error": { "key": "500", "message": [ { "description": "Unable to trigger device settings override process.", "code": null, "location": null } ] }, "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137" } ] } } } }, "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 Job Errors for a Rebuild Phones Job", "operationId": "getJobErrorsForARebuildPhonesJob", "description": "
Not supported for Webex for Government (FedRAMP)
.\n\nGet errors for a rebuild phones job in an organization.\n\nRebuild phones jobs are used when there is a change in the network configuration of phones in a location, i.e. a change in the network configuration of devices in a location from public to private and vice-versa.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job errors for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve list of errors for a rebuild phones job in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/people/{personId}/devices/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "compression" ], "properties": { "compression": { "$ref": "#/components/schemas/Compression", "description": "Toggles compression ON and OFF." } } }, "example": { "compression": "ON" } } } }, "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 Device Settings for a Person", "operationId": "getDeviceSettingsForAPerson", "description": "Device settings list the compression settings for a person.\n\nDevice settings customize a device's behavior and performance. The compression field optimizes call quality for inbound and outbound calls.\n\nThis API requires a full, location, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "ID of the person for whom to retrieve device settings.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80MDM2ZWI2NC1iNDliLTQ1ZTUtOTM1ZS1hYmQ2NGUwNjc2ZmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the device settings for a person in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jNzJmNWM3My02OGJlLTRlNTctODNjYS00NjBiMWMzNzBkMmE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Device Settings for a Person", "operationId": "updateDeviceSettingsForAPerson", "description": "Update device settings modifies the compression settings for a person.\n\nDevice settings customize a device's behavior and performance. The compression field optimizes call quality for inbound and outbound calls.\n\nThis API requires a full, location, or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "ID of the person for whom to update device settings.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80MDM2ZWI2NC1iNDliLTQ1ZTUtOTM1ZS1hYmQ2NGUwNjc2ZmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify device settings for a person in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jNzJmNWM3My02OGJlLTRlNTctODNjYS00NjBiMWMzNzBkMmE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "compression": "ON" }, "schema": { "type": "object", "required": [ "compression" ], "properties": { "compression": { "$ref": "#/components/schemas/Compression", "description": "Toggles compression ON and OFF." } } } } } } } }, "/telephony/config/workspaces/{workspaceId}/devices/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "compression" ], "properties": { "compression": { "$ref": "#/components/schemas/Compression", "description": "Toggles compression ON and OFF." } } }, "example": { "compression": "ON" } } } }, "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 Device Settings for a Workspace", "operationId": "getDeviceSettingsForAWorkspace", "description": "Device settings list the compression settings for a workspace.\n\nDevice settings customize a device's behavior and performance. The compression field optimizes call quality for inbound and outbound calls.\n\nThis API requires a full, location, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "ID of the workspace for which to retrieve device settings.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWdvdi13ZXN0LTFfYTEvUExBQ0UvYTA4MTEyOWMtMTExYi00NTEyLWI1OGItZTdjODY0ZGZlMzY0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the device settings for a workspace in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jNzJmNWM3My02OGJlLTRlNTctODNjYS00NjBiMWMzNzBkMmE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Device Settings for a Workspace", "operationId": "updateDeviceSettingsForAWorkspace", "description": "Update device settings modifies the compression settings for a workspace.\n\nDevice settings customize a device's behavior and performance. The compression field optimizes call quality for inbound and outbound calls.\n\nThis API requires a full, location, or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "ID of the workspace for which to update device settings.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWdvdi13ZXN0LTFfYTEvUExBQ0UvYTA4MTEyOWMtMTExYi00NTEyLWI1OGItZTdjODY0ZGZlMzY0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify the device settings for a workspace in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jNzJmNWM3My02OGJlLTRlNTctODNjYS00NjBiMWMzNzBkMmE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "compression": "ON" }, "schema": { "type": "object", "required": [ "compression" ], "properties": { "compression": { "$ref": "#/components/schemas/Compression", "description": "Toggles compression ON and OFF." } } } } } } } }, "/telephony/config/devices/backgroundImages": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "backgroundImages" ], "properties": { "backgroundImages": { "type": "array", "items": { "$ref": "#/components/schemas/listBackgroundImagesObject" }, "description": "Array of background images." }, "count": { "type": "string", "example": "2", "description": "The total number of images in the org." } } }, "example": { "backgroundImages": [ { "backgroundImageUrl": "/dms/Cisco_Phone_Background/background001", "fileName": "CompanyLogoBlue" }, { "backgroundImageUrl": "/dms/Cisco_Phone_Background/background002", "fileName": "CompanyLogoRed" } ], "count": 2 } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Background Images", "operationId": "readTheListOfBackgroundImages", "description": "Gets the list of device background images for an organization.\n\nWebex Calling supports the upload of up to 100 background image files for each org. These image files can then be referenced by MPP phones in that org for use as their background image.\n\nRetrieving this list requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieves the list of images in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "delete": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/deleteImageResponseSuccessObject" }, "description": "Array of deleted images." }, "count": { "type": "string", "example": "2", "description": "The total number of images in the org after deletion." } } }, "example": { "items": [ { "fileName": "CompanyLogoBlue", "result": { "status": 200 } } ], "count": 2 } } } }, "206": { "description": "Partial Content", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/deleteImageResponseObject" }, "description": "Array of deleted images." }, "count": { "type": "string", "example": "2", "description": "The total number of images in the org after deletion." } } }, "example": { "items": [ { "fileName": "CompanyLogoBlue", "result": { "status": 200 } }, { "fileName": "CompanyLogoRed", "result": { "status": 400, "error": { "message": "The image could not be deleted.", "errorCode": 4305 } } } ], "count": 2 } } } }, "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 Device Background Images", "operationId": "deleteDeviceBackgroundImages", "description": "Delete the list of designated device background images for an organization. Maximum is 10 images per request.\n\nDeleting a device background image requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Deletes the list of images in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "backgroundImages": [ { "fileName": "CompanyLogoBlue", "forceDelete": true } ] }, "schema": { "type": "object", "required": [ "backgroundImages" ], "properties": { "backgroundImages": { "type": "array", "items": { "$ref": "#/components/schemas/deleteImageRequestObject" }, "description": "Array of images to be deleted." } } } } } } } }, "/telephony/config/devices/{deviceId}/actions/backgroundImageUpload/invoke": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "filename": { "type": "string", "example": "CompanyLogoBlue", "description": "The name of the uploaded image file." }, "backgroundImageUrl": { "type": "string", "example": "\"/dms/Cisco_Phone_Background/background001\"", "description": "The URL of the uploaded image file." }, "count": { "type": "string", "example": "2", "description": "The total number of images in the org after uploading." } } }, "example": { "filename": "CompanyLogoBlue", "backgroundImageUrl": "\"/dms/Cisco_Phone_Background/background001\"", "count": "2" } } } }, "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": "Upload a Device Background Image", "operationId": "uploadADeviceBackgroundImage", "description": "Configure a device's background image by uploading an image with file format, `.jpeg` or `.png`, encoded image file. Maximum image file size allowed to upload is 625 KB.\n\nThe request must be a multipart/form-data request rather than JSON, using the image/jpeg or image/png content-type.\n\nWebex Calling supports the upload of up to 100 background image files for each org. These image files can then be referenced by MPP phones in that org for use as their background image.\n\nUploading a device background image requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**WARNING:** This API is not callable using the developer portal web interface due to the lack of support for multipart POST. This API can be utilized using other tools that support multipart POST, such as Postman.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Uploads the image in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "multipart/form-data": { "schema": { "type": "object", "required": [ "file", "fileName" ], "properties": { "file": { "type": "string", "format": "binary", "description": "The image file to upload. Must be in `.jpeg` or `.png` format. Maximum file size is 625 KB." }, "fileName": { "type": "string", "description": "The name of the image file being uploaded.", "example": "CompanyLogoBlue.png" } } } } } } } }, "/telephony/config/people/{personId}/devices/count": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/userDeviceCount" }, "example": { "totalDeviceCount": 3, "applicationsCount": 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 User Devices Count", "operationId": "getUserDevicesCount", "description": "Get the total device and application count for a person.\n\nThe device count can be used to determine if more devices can be added for users with a device count limit. For example, users with standard calling licenses can only have one physical device.\n\nThis requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "Person for whom to retrieve the device count.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the person belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/devices/dynamicSettings/validationSchema": { "get": { "responses": { "200": { "description": "OK.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceDynamicSettingsValidationSchemaGet" }, "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 } }, { "familyOrModelDisplayName": "Poly", "tag": "%G722_ORDER%", "friendlyName": "voice.codecPref.G722", "tooltip": "Tag tooltip.", "level": [ "location", "device" ], "validationRule": { "type": "int", "min": 0, "max": 10, "increment": 1 } }, { "familyOrModelDisplayName": "Poly", "tag": "%ENABLE_BLUETOOTH%", "friendlyName": "feature.bluetooth.enabled", "tooltip": "Tag tooltip.", "level": [ "organization", "location", "device" ], "validationRule": { "type": "boolean", "values": [ "1", "0" ] } }, { "familyOrModelDisplayName": "Poly", "tag": "%DO_BLUETOOTH_DEVICE_NAME%", "friendlyName": "bluetooth.device.name", "tooltip": "Tag tooltip.", "alert": "Alert text.", "level": [ "organization", "location", "device" ], "validationRule": { "type": "string", "regex": "[A-Za-z0-9]+", "maxLength": 255 } }, { "familyOrModelDisplayName": "Poly", "tag": "%DO_UI_MENU_BACKGROUND%", "friendlyName": "ui.menu.background", "tooltip": "Tag tooltip.", "level": [ "organization", "location", "device" ], "validationRule": { "type": "string", "regex": "#[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]", "maxLength": 7, "validationHint": "#RRGGBB" } }, { "familyOrModelDisplayName": "Poly", "tag": "%UP_BACKLIGHT_IDLE_INTENSITY%", "friendlyName": "up.backlight.idleIntensity", "tooltip": "Tag tooltip.", "level": [ "organization", "location", "device" ], "validationRule": { "type": "enum", "values": [ "0", "1", "2", "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." } }, "operationId": "getValidationSchema", "summary": "Get Validation Schema", "description": "This API returns the validation schema for `tags` of all or specific `familyOrModelDisplayName`.\n\nThe schema is used to validate the `tag` for devices in the `Webex Calling` platform. The schema includes information about the required fields, data types, and validation rules for each setting.", "parameters": [ { "name": "orgId", "in": "query", "description": "Validation schema for devices in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "familyOrModelDisplayName", "in": "query", "description": "Device family or model display name to filter the schema.", "example": "Poly", "schema": { "type": "string" } } ], "tags": [ "Beta Device Call Settings With Dynamic Device Settings" ] } }, "/telephony/config/devices/dynamicSettings/settingsGroups": { "get": { "responses": { "200": { "description": "OK.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceDynamicSettingsSettingsGroupsGet" }, "example": { "settingsGroups": [ { "path": "Voice.Codec Preferences", "friendlyName": "voice.codecPref.G711Mu", "tab": "Poly", "familyOrModelDisplayName": "Poly", "tags": [ { "tagBlock": [ "%G711U_ORDER%" ] } ] }, { "path": "Feature.Bluetooth", "friendlyName": "feature.bluetooth.enabled", "tab": "Poly", "familyOrModelDisplayName": "Poly", "tags": [ { "tagBlock": [ "%ENABLE_BLUETOOTH%" ] } ] }, { "path": "User Interface.Menu", "friendlyName": "ui.menu.background", "tab": "Poly", "familyOrModelDisplayName": "Poly", "tags": [ { "tagBlock": [ "%DO_UI_MENU_BACKGROUND%" ] } ] } ], "settingsTabs": [ "Poly", "MPP" ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "operationId": "getSettingsGroups", "summary": "Get Settings Groups", "description": "This API returns the `settingsGroups` that define the structure and association of tags for device dynamic settings.\n\n The `settingsGroups` are used to organize the tags into logical groups, making it easier to manage and configure device dynamic settings.", "parameters": [ { "name": "orgId", "in": "query", "description": "Settings groups for devices in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "familyOrModelDisplayName", "in": "query", "description": "Device family or model display name to filter the `settingsGroups`.", "example": "Poly", "schema": { "type": "string" } }, { "name": "includeSettingsType", "in": "query", "description": "To show groups or tabs or both. Query param is case insensitive. Default is `ALL`.", "example": "ALL", "schema": { "type": "string", "enum": [ "TABS", "GROUPS", "ALL" ] } } ], "tags": [ "Device Call Settings With Device Dynamic Settings" ] } }, "/telephony/config/lists/devices/dynamicSettings/actions/getSettings/invoke": { "post": { "responses": { "200": { "description": "OK.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomerDeviceDynamicSettingsListPostResponse" }, "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%DO_MENU_ITEM_BACKGROUND%", "value": "#RRGGBB", "parentValue": "#FFFFFF", "parentLevel": "ORGANIZATION" }, { "familyOrModelDisplayName": "Poly", "tag": "%ENABLE_BLUETOOTH%", "value": "1", "parentValue": "0", "parentLevel": "SYSTEM_DEFAULT" }, { "familyOrModelDisplayName": "Poly", "tag": "%DO_MENU_TITLE_BACKGROUND%", "value": "#1A1A1A", "parentValue": "#FFFFFF", "parentLevel": "REGIONAL_DEFAULT" } ], "lastUpdateTime": 1651396800000, "updateInProgress": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "operationId": "getCustomerDeviceDynamicSettings", "summary": "Get Customer Device Dynamic Settings", "description": "Retrieve dynamic settings for specific device tags at customer level, allowing filters by `familyOrModelDisplayName` and `tag` identifier.\n\nThis API lets you request the values of multiple `Device Settings` at once by specifying a list of `familyOrModelDisplayName` and tag combinations.\n\nThis requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "parameters": [ { "name": "orgId", "in": "query", "description": "List of device dynamic settings in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "familyOrModelDisplayName", "in": "query", "required": true, "description": "The family or model name for the device. If no tag is specified, all tags related to `familyOrModelDisplayName` are returned.", "example": "Poly", "schema": { "type": "string", "minLength": 1, "maxLength": 40 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomerDeviceDynamicSettingsListPostRequest" }, "example": { "tags": [ "%DO_MENU_ITEM_BACKGROUND%", "%ENABLE_BLUETOOTH%", "%DO_MENU_TITLE_BACKGROUND%" ] } } }, "description": "Request body containing the list of device tags to retrieve settings for.", "required": false }, "tags": [ "Device Call Settings With Device Dynamic Settings" ] } }, "/telephony/config/lists/locations/{locationId}/devices/dynamicSettings/actions/getSettings/invoke": { "post": { "responses": { "200": { "description": "OK.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationDeviceDynamicSettingsListPostResponse" }, "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%G711U_ORDER%", "value": "4", "parentValue": "3", "parentLevel": "ORGANIZATION" }, { "familyOrModelDisplayName": "Poly", "tag": "%ENABLE_BLUETOOTH%", "value": "1", "parentValue": "0", "parentLevel": "SYSTEM_DEFAULT" }, { "familyOrModelDisplayName": "Poly", "tag": "%DO_UI_MENU_BACKGROUND%", "value": "#1A1A1A", "parentValue": "#FFFFFF", "parentLevel": "LOCATION" } ], "lastUpdateTime": 1651396800000, "updateInProgress": false } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "operationId": "getLocationDeviceDynamicSettings", "summary": "Get Location Device Dynamic Settings", "description": "Retrieve dynamic settings for specific device tags at the specified location level, allowing filters by `familyOrModelDisplayName` and `tag` identifier.\n\nThis API lets you request the values of multiple `Device Settings` at once by specifying a list of `familyOrModelDisplayName` and tag combinations for a specific location.\n\nThis requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "parameters": [ { "name": "locationId", "in": "path", "required": true, "description": "Unique identifier for the `location`.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMzZjBlZDFiLWQ1YjctNGI4Mi1iMzIzLTg4ZTFmODMzNGNmMw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the `organization` to which this location belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "familyOrModelDisplayName", "in": "query", "required": true, "description": "The family or model name for the device. If no tag is specified, all tags related to `familyOrModelDisplayName` are returned.", "example": "Poly", "schema": { "type": "string", "minLength": 1, "maxLength": 40 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationDeviceDynamicSettingsListPostRequest" }, "example": { "tags": [ "%G711U_ORDER%", "%ENABLE_BLUETOOTH%", "%DO_UI_MENU_BACKGROUND%" ] } } }, "description": "Request body containing the list of device tags to retrieve settings for.", "required": false }, "tags": [ "Device Call Settings With Device Dynamic Settings" ] } }, "/telephony/config/lists/devices/{deviceId}/dynamicSettings/actions/getSettings/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceDynamicSettingsListPostResponse" }, "example": { "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%G711U_ORDER%", "value": "4", "parentValue": "3", "parentLevel": "ORGANIZATION" }, { "familyOrModelDisplayName": "Poly", "tag": "%ENABLE_BLUETOOTH%", "parentValue": "0", "parentLevel": "SYSTEM_DEFAULT" }, { "familyOrModelDisplayName": "Poly", "tag": "%DO_UI_MENU_BACKGROUND%", "value": "#1A1A1A", "parentValue": "#FFFFFF", "parentLevel": "LOCATION" } ], "lastUpdateTime": 1651396800000 } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "operationId": "getDeviceDynamicSettings", "summary": "Get Device Dynamic Settings", "description": "Retrieve settings for a specified device.\n\nThis API retrieves device settings based on the specified `tags`; if the `tags` field is empty or missing, all settings for the device are returned.\n\nThis requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "parameters": [ { "name": "deviceId", "in": "path", "required": true, "description": "Device for which to retrieve settings.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the `device` belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceDynamicSettingsListPostRequest" }, "example": { "tags": [ "%G711U_ORDER%", "%ENABLE_BLUETOOTH%", "%DO_UI_MENU_BACKGROUND%" ] } } }, "description": "Request body containing the list of device tags to retrieve settings for.", "required": true }, "tags": [ "Device Call Settings With Device Dynamic Settings" ] } }, "/telephony/config/devices/{deviceId}/dynamicSettings": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "operationId": "updateSpecifiedSettingsForTheDevice", "summary": "Update Device Dynamic Settings", "description": "Modify dynamic settings for a specified device.\n\nThis API updates device settings based on the specified `tags`. If the `tags` field is empty, the request has no effect.\n\nThis requires a full, device, or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "parameters": [ { "name": "deviceId", "in": "path", "required": true, "description": "Device for which to update settings.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS8zMDAyZWJiZi1iMTVmLTQ1ODktYWNiZS1kZjY3OTA3MTU5NWE=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the device belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceDynamicSettingsPutRequest" }, "example": { "tags": [ { "action": "CLEAR", "tag": "%G711A_ORDER%" }, { "action": "SET", "tag": "%ENABLE_BLUETOOTH%", "value": "0" } ] } } }, "description": "Request body containing the list of device tags for which the values will be updated.", "required": true }, "tags": [ "Device Call Settings With Device Dynamic Settings" ] } }, "/telephony/config/jobs/devices/dynamicDeviceSettings": { "post": { "responses": { "202": { "description": "Accepted", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PostDynamicDeviceSettingsJobResponse" }, "example": { "name": "dynamicdevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "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": 0 } } } }, "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 Device Dynamic Settings Across Organization or Location", "operationId": "updatesDynamicDeviceSettingsAcrossOrganizationOrLocation", "description": "Creates a job to update device settings at location or organization level.\n\nThe job runs asynchronously and persistently, applying the requested settings in bulk to all relevant devices, which may belong to multiple families as specified in the request. If a `locationId` is provided, only devices in that location are affected.\n\nA unique job ID is returned to track status and errors.\n\nOnly one job can run per customer per organization at a time. Additionally, this job cannot run in parallel with other device jobs such as [Call device settings](/docs/api/v1/device-call-settings/change-device-settings-across-organization-or-location-job) and [Rebuild Phones](/docs/api/v1/device-call-settings/rebuild-phones-configuration).\n\nRunning a job requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Device Call Settings With Device Dynamic Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Apply update device dynamic settings for all the devices under this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationId": "", "tags": [ { "familyOrModelDisplayName": "Poly", "tag": "%DO_MENU_TITLE_BACKGROUND%", "action": "CLEAR" }, { "familyOrModelDisplayName": "Poly", "tag": "%ENABLE_BLUETOOTH%", "action": "SET", "value": "1" } ] }, "schema": { "$ref": "#/components/schemas/PostDynamicSettingsUpdateStartJobRequest" } } }, "required": true } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DynamicDeviceSettingsJobListResponse" }, "example": { "items": [ { "name": "dynamicdevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "endTime": "2023-07-05T21:37:06.105Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "endTime": "2023-07-05T21:37:06.077Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "dynamicdevicesettingsUpdate", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgwZmUxMzdkLTg5NDgtNDlhYS1iODdiLTk4MGMxN2I2YzdiYg", "percentageComplete": 100 } ] } } } }, "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 Device Dynamic Settings Jobs", "operationId": "listDynamicDeviceSettingsJobs", "description": "List device dynamic settings jobs.\n\nLists all the jobs for job type `dynamicdevicesettings` for the given organization in order of most recent one to oldest one irrespective of its status.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings With Device Dynamic Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of device dynamic settings jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of jobs. Default is 0.", "example": 0, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of jobs returned to this maximum count. Default is 2000.", "example": 100, "schema": { "type": "number" } } ] } }, "/telephony/config/jobs/devices/dynamicDeviceSettings/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PostDynamicDeviceSettingsJobResponse" }, "example": { "name": "dynamicdevicesettings", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "trackingId": "ATLAS_89144033-afb5-44e8-bae8-946e84c71fa3_0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 235690, "jobExecutionStatus": [ { "id": 236410, "startTime": "2022-08-15T12:54:50.380Z", "endTime": "2022-08-15T12:55:01.833Z", "lastUpdated": "2022-08-15T12:55:02.160Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-08-15T12:54:50.350Z", "stepExecutionStatuses": [ { "id": 1159389, "startTime": "2022-08-15T12:54:50.433Z", "endTime": "2022-08-15T12:55:01.826Z", "lastUpdated": "2022-08-15T12:55:01.826Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "dynamicdevicesettingsUpdate", "timeElapsed": "PT11.393S" } ], "timeElapsed": "PT11.393S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "target": "CUSTOMER", "locationId": "", "percentageComplete": 100 } } } }, "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 Device Dynamic Settings Job Status", "operationId": "getDeviceDynamicSettingsJobStatus", "description": "Get device dynamic settings job status.\n\nProvides details of the job with `jobId` of `jobType` `dynamicdevicesettings`.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings With Device Dynamic Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/devices/dynamicDeviceSettings/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 0, "error": { "key": "error.key", "message": [ { "description": "Error description", "code": "1001", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMzZjBlZDFiLWQ1YjctNGI4Mi1iMzIzLTg4ZTFmODMzNGNmMw" } ] }, "trackingId": "ROUTER_62F66055-8D70-01BB-0137-AC10A8310137" } ] } } } }, "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 Device Dynamic Settings Job Errors", "operationId": "listDynamicDeviceSettingsJobErrors", "description": "List Update device dynamic settings job errors.\n\nLists all error details of the job with `jobId` of `jobType` `dynamicdevicesettings`.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Device Call Settings With Device Dynamic Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wMTA4NDJjMy1mNWQ5LTRjOWQtOGZiYi0yYzIxZmU4OWI0YzQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve the status of job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch. Default is 0.", "example": 0, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch. Default is 2000", "example": 100, "schema": { "type": "number" } } ] } }, "/devices": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceCollectionResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "callingDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "webexDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag", "Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org", "another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "cisco", "plannedMaintenance": "off" } ] } } } }, "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 Devices", "operationId": "List Devices", "description": "Lists all active Webex devices associated with the authenticated user, such as devices activated in personal mode. This requires the `spark:devices_read` scope. Administrators can list all devices within their organization. This requires an administrator auth token with the `spark-admin:devices_read` scope.", "tags": [ "Devices" ], "parameters": [ { "name": "max", "in": "query", "description": "Limit the maximum number of devices in the response.", "example": "100", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "\nOffset. Default is 0.\n", "schema": { "type": "number" } }, { "name": "displayName", "in": "query", "description": "\nList devices with this display name.\n", "example": "SFO12-3-PanHandle", "schema": { "type": "string" } }, { "name": "personId", "in": "query", "description": "\nList devices by person ID.\n", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "schema": { "type": "string" } }, { "name": "workspaceId", "in": "query", "description": "\nList devices by workspace ID.\n", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "\nList devices in this organization. Only admin users of another organization (such as partners) may use this parameter.\n", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "connectionStatus", "in": "query", "description": "\nList devices with this connection status.\n", "schema": { "type": "string" } }, { "name": "product", "in": "query", "description": "\nList devices with this product name.\n", "schema": { "type": "string", "enum": [ "DX-80", "RoomKit", "SX-80" ] } }, { "name": "type", "in": "query", "description": "\nList devices with this type.\n", "schema": { "type": "string", "enum": [ "roomdesk", "phone", "accessory", "webexgo", "unknown" ] } }, { "name": "serial", "in": "query", "description": "\nList devices with this serial number.\n", "schema": { "type": "string" } }, { "name": "tag", "in": "query", "description": "\nList devices which have a tag. Searching for multiple tags (logical AND) can be done by comma separating the `tag` values or adding several `tag` parameters.\n", "schema": { "type": "string" } }, { "name": "software", "in": "query", "description": "\nList devices with this software version.\n", "schema": { "type": "string" } }, { "name": "upgradeChannel", "in": "query", "description": "\nList devices with this upgrade channel.\n", "schema": { "type": "string" } }, { "name": "errorCode", "in": "query", "description": "\nList devices with this error code.\n", "schema": { "type": "string" } }, { "name": "capability", "in": "query", "description": "\nList devices with this capability.\n", "example": "xapi", "schema": { "type": "string", "enum": [ "xapi" ] } }, { "name": "permission", "in": "query", "description": "\nList devices with this permission.\n", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "\nList devices by location ID.\n", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "schema": { "type": "string" } }, { "name": "workspaceLocationId", "in": "query", "description": "\nList devices by workspace location ID. Deprecated, prefer `locationId`.\n", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "schema": { "type": "string" } }, { "name": "mac", "in": "query", "description": "\nList devices with this MAC address.\n", "schema": { "type": "string" } }, { "name": "devicePlatform", "in": "query", "description": "\nList devices with this device platform.\n", "example": "cisco", "schema": { "type": "string", "enum": [ "cisco", "microsoftTeamsRoom" ] } }, { "name": "plannedMaintenance", "in": "query", "description": "\nList devices with this planned maintenance.\n", "example": "off", "schema": { "type": "string", "enum": [ "off", "on", "upcoming" ] } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "callingDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "webexDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag", "Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org", "another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "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": "Create a Device by MAC Address", "operationId": "Create a Device by MAC Address", "description": "Create a phone by its MAC address in a specific workspace or for a person.\n\nSpecify the `mac`, `model` and either `workspaceId` or `personId`.\n\n* You can get the `model` from the [supported devices](/docs/api/v1/device-call-settings/read-the-list-of-supported-devices) API.\n\n* Either `workspaceId` or `personId` should be provided. If both are supplied, the request will be invalid.\n\n* The `password` field is only required for third party devices. You can obtain the required third party phone configuration from [here](/docs/api/v1/beta-device-call-settings-with-third-party-device-support/get-third-party-device).\n\n
Adding a device to a person with a Webex Calling Standard license will disable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.

When adding devices to a Webex Calling Professional licensed person or workspace, wait for each API call to finish before starting the next. This prevents race conditions that can cause errors when assigning primary versus secondary device status.
", "tags": [ "Devices" ], "parameters": [ { "name": "orgId", "in": "query", "description": "The organization associated with the device. If left empty, the organization associated with the caller will be used.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL09SR0FOSVpBVElPTi9mN2I3MzYwYy1lMDcxLTQwN2EtYTU1Ny04NDI4YmIyMjhlODQ", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "mac": "D82E3EEF4E5C", "model": "DMS Cisco 8865", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU" }, "schema": { "type": "object", "required": [ "mac", "model" ], "properties": { "mac": { "type": "string", "example": "54A3152300C8", "description": "The MAC address of the device being created." }, "model": { "type": "string", "example": "DMS Cisco 8865", "description": "The model of the device being created. The corresponding device model display name sometimes called the product name, can also be used to specify the model." }, "workspaceId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The ID of the workspace where the device will be created." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QRU9QTEUvNTAzYmRhODAtOTM4NS00NmQ1LWIzMzAtMGU2NzIyMjQ5MTNh", "description": "The ID of the person who will own the device once created." }, "password": { "type": "string", "example": "TestPassword123&", "description": "SIP password to be configured for the phone, only required with third party devices." } } } } } } } }, "/devices/{deviceId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "callingDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "webexDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag", "Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org", "another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "cisco", "plannedMaintenance": "off" } } } }, "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 Device Details", "operationId": "getDeviceDetails", "description": "Shows details for a device, by ID. This requires an auth token with the `spark:devices_read` scope to see your own device, or `spark-admin:devices_read` to see any other device in your organization.\n\nSpecify the device ID in the `deviceId` parameter in the URI.", "tags": [ "Devices" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "\nA unique identifier for the device.\n", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization associated with the device. If left empty, the organization associated with the caller will be used.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL09SR0FOSVpBVElPTi9mN2I3MzYwYy1lMDcxLTQwN2EtYTU1Ny04NDI4YmIyMjhlODQ", "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 Device", "operationId": "Delete a Device", "description": "Deletes a device, by ID. Deleting your own device requires an auth token with the `spark:devices_write` scope. Deleting any other device in the organization will require an administrator auth token with the `spark-admin:devices_write` scope.\n\nSpecify the device ID in the `deviceId` parameter in the URI.\n\n
Deleting a device from a person with a Webex Calling Standard license will enable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.
", "tags": [ "Devices" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "A unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization associated with the device. If left empty, the organization associated with the caller will be used.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL09SR0FOSVpBVElPTi9mN2I3MzYwYy1lMDcxLTQwN2EtYTU1Ny04NDI4YmIyMjhlODQ", "schema": { "type": "string" } } ] }, "patch": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "callingDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc=", "webexDeviceId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag", "Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org", "another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "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": "Modify Device Tags", "operationId": "Modify Device Tags", "description": "Create, delete or update tags on a device. For your own device, this requires an auth token with the `spark:devices_write` scope. An auth token with the `spark-admin:devices_write` scope is required to operate on other devices within the organization.\n\nSpecify the device ID in the `deviceId` parameter in the URI.\n\nInclude only the tag array in the request body, no other device attributes can be changed. This action will overwrite any previous tags. A common approach is to first [GET the devices's details](/docs/api/v1/devices/get-device-details), make changes to the `tags` array, and then PATCH the new complete array with this endpoint.", "tags": [ "Devices" ], "parameters": [ { "name": "deviceId", "in": "path", "description": "Unique identifier for the device.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization associated with the device. If left empty, the organization associated with the caller will be used.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL09SR0FOSVpBVElPTi9mN2I3MzYwYy1lMDcxLTQwN2EtYTU1Ny04NDI4YmIyMjhlODQ", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json-patch+json": { "example": [ { "op": "replace", "path": "tags", "value": [ "First Tag", "Second Tag" ] } ], "schema": { "type": "object", "properties": { "op": { "type": "string", "enum": [ "add", "remove", "replace" ], "description": " * `add` - Add all specified tags to the existing device tags list.\n * `remove` - Remove all tags that the device currently has.\n * `replace` - Replace the tags currently on the device with the specified list.\n" }, "path": { "type": "string", "example": "tags", "description": "Only the tags path is supported to patch." }, "value": { "type": "array", "items": { "type": "string", "example": "First Tag,Second Tag" } } } } } } } } }, "/devices/activationCode": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActivationCode" }, "example": { "code": "5414011256173816", "expiryTime": "2017-11-16T23:38:03.215Z" } } } }, "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 Device Activation Code", "operationId": "Create a Device Activation Code", "description": "Generate an activation code for a device in a specific workspace by `workspaceId` or for a person by `personId`. This requires an auth token with the `spark-admin:devices_write` scope, and either `identity:placeonetimepassword_create` (allows creating activation codes for workspaces only) or `identity:one_time_password` (allows creating activation codes for workspaces or persons).\n\n* Adding a device to a workspace with calling type `none` or `thirdPartySipCalling` will reset the workspace calling type to `freeCalling`.\n\n* Either `workspaceId` or `personId` should be provided. If both are supplied, the request will be invalid.\n\n* If no `model` is supplied, the `code` returned will only be accepted on RoomOS devices.\n\n* If your device is a phone, you must provide the `model` as a field. You can get the `model` from the [supported devices](/docs/api/v1/device-call-settings/read-the-list-of-supported-devices) API.\n\n
Adding a device to a person with a Webex Calling Standard license will disable Webex Calling across their Webex mobile, tablet, desktop, and browser applications.

When adding devices to a Webex Calling Professional licensed person or workspace, wait for each API call to finish before starting the next. This prevents race conditions that can cause errors when assigning primary versus secondary device status.
", "tags": [ "Devices" ], "parameters": [ { "name": "orgId", "in": "query", "description": "The organization associated with the activation code generated. If left empty, the organization associated with the caller will be used.", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL09SR0FOSVpBVElPTi9mN2I3MzYwYy1lMDcxLTQwN2EtYTU1Ny04NDI4YmIyMjhlODQ", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "model": "DMS Cisco 8865" }, "schema": { "type": "object", "properties": { "workspaceId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The ID of the workspace where the device will be activated." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The ID of the person who will own the device once activated." }, "model": { "type": "string", "example": "DMS Cisco 8865", "description": "The model of the device being created. The corresponding device model display name sometimes called the product name, can also be used to specify the model." } } } } } } } }, "/telephony/config/redSky/serviceSettings": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 RedSky Service Settings", "operationId": "Update RedSky Service Settings", "description": "Update the RedSky service settings.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nUpdating the RedSky service settings requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update E911 settings for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "companyId": "a5e5808f-34ac-4ed0-b8f3-2416bc4cb785", "secret": "qwEr4%2d", "externalTenantEnabled": true, "email": "test@cisco.com", "password": "Test@123" }, "schema": { "$ref": "#/components/schemas/RedSkyServiceSettingsObject" } } } } } }, "/telephony/config/redSky": { "post": { "responses": { "201": { "description": "Created", "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": "Create an Account and Admin in RedSky", "operationId": "Create an Account and Admin in RedSky", "description": "Create an account and admin in RedSky.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nCreating a RedSky account requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create RedSky account for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RedSkyCreateObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RedSkyGetObject" }, "example": { "enabled": true, "companyId": "a5e5808f-34ac-4ed0-b8f3-2416bc4cb785", "secret": "*****", "locationsEnabled": 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": "Retrieve RedSky Account Details for an Organization", "operationId": "Retrieve RedSky Account Details for an Organization", "description": "Retrieve RedSky account details for an organization.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nTo retrieve the RedSky account details requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve RedSky account for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/redSky/status": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ComplianceStatusResponse" }, "example": { "orgStatus": "INITIALISE", "complianceStatus": "NON_COMPLIANT", "companyId": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "redSkyOrgId": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "adminExists": true, "locationsStatus": { "state": "LOCATION_SETUP", "count": 2, "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice" } ] } } } } }, "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 the Organization RedSky Account's Compliance Status", "operationId": "Update the Organization RedSky Account's Compliance Status", "description": "Update the compliance status for the customer's RedSky account.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nUpdating the RedSky account's compliance status requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update E911 compliance status for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "complianceStatus": "LOCATION_SETUP" }, "schema": { "$ref": "#/components/schemas/RedSkyComplianceStatusRequestObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ComplianceStatusResponse" }, "example": { "orgStatus": "INITIALISE", "complianceStatus": "NON_COMPLIANT", "companyId": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "redSkyOrgId": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "adminExists": true, "locationsStatus": { "state": "LOCATION_SETUP", "count": 2, "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice" } ] } } } } }, "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 the Organization Compliance Status for a RedSky Account", "operationId": "Get the Organization Compliance Status for a RedSky Account", "description": "Get the organization compliance status for a RedSky account. The `locationStatus.state` in the response will show the state for the location that is in the earliest stage of configuration.\n\nThe enhanced emergency (E911) service for Webex Calling provides an emergency service designed for organizations with a hybrid or nomadic workforce. It provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada.\n\nTo retrieve organization compliance status requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve the compliance status for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] } }, "/telephony/config/redSky/complianceStatus": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetComplianceStatusResponse" }, "example": { "orgStatus": "INITIALISE", "complianceStatus": "NON_COMPLIANT", "companyId": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "redSkyOrgId": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "adminExists": true, "locationsStatus": { "count": 2, "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice", "state": "LOCATION_SETUP" } ] } } } } }, "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 the Organization Compliance Status and the Location Status List", "operationId": "Get the Organization Compliance Status and the Location Status List", "description": "Get the organization compliance status and the location status list for a RedSky account.\n\nThe enhanced emergency (E911) service for Webex Calling provides an emergency service designed for organizations with a hybrid or nomadic workforce. It provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada.\n\nTo retrieve organization compliance status requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve the compliance status and the list of location statuses for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": "100", "schema": { "type": "number", "default": 2000 } }, { "name": "order", "in": "query", "description": "Sort the list of locations in ascending or descending order. To sort in descending order append `-desc` to possible sort order values. Possible sort order values are `locationName` and `locationState`.", "example": "locationName-asc", "schema": { "type": "string" } } ] } }, "/telephony/config/redSky/actions/login/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginResponse" }, "example": { "accountMatch": true, "externalTenantEnabled": true, "companyId": "ddd1424c-5b48-433d-9bab-061cdfb84c90" } } } }, "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": "Login to a RedSky Admin Account", "operationId": "Login to a RedSky Admin Account", "description": "Login to Redsky for an existing account admin user to retrieve the `companyId` and verify the status of `externalTenantEnabled`. The password provided will not be stored.\n\nThe enhanced emergency (E911) service for Webex Calling provides an emergency service designed for organizations with a hybrid or nomadic workforce. It provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada.\n\nLogging in requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Login to a RedSky account for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "email": "test@cisco.com", "password": "Test@123", "redSkyOrgId": "610af8f4-a4ed-4be3-ae6f-efcdcd4895a8" }, "schema": { "$ref": "#/components/schemas/LoginRequest" } } } } } }, "/telephony/config/locations/{locationId}/redSky": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationCallingParamtersResponse" }, "example": { "integrationEnabled": true, "routingEnabled": 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 a Location's RedSky Emergency Calling Parameters", "operationId": "Get a Location's RedSky Emergency Calling Parameters", "description": "Get the Emergency Calling Parameters for a specific location.\n\nThe enhanced emergency (E911) service for Webex Calling provides an emergency service designed for organizations with a hybrid or nomadic workforce. It provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada.\n\nTo retrieve location calling parameters requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve Calling Parameters for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Calling Parameters for the location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/redSky/status": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationComplianceStatusResponse" }, "example": { "orgStatus": "INITIALISE", "complianceStatus": "NON_COMPLIANT", "companyId": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "redSkyOrgId": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "adminExists": true, "locationsStatus": { "state": "LOCATION_SETUP", "count": 2, "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice" } ] } } } } }, "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 Location's RedSky Compliance Status", "operationId": "Get a Location's RedSky Compliance Status", "description": "Get RedSky compliance status for a specific location.\n\nThe enhanced emergency (E911) service for Webex Calling provides an emergency service designed for organizations with a hybrid or nomadic workforce. It provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada.\n\nRetrieving the location's compliance status requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve the compliance status for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve compliance status for the location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocationComplianceStatusResponse" }, "example": { "locationsStatus": { "state": "LOCATION_SETUP", "count": 2, "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "MainOffice" } ] } } } } }, "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 Location's RedSky Compliance Status", "operationId": "Update a Location's RedSky Compliance Status", "description": "Update the compliance status for a specific location.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nUpdating the RedSky account's compliance status requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the E911 compliance status for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the E911 compliance status for the location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "complianceStatus": "LOCATION_SETUP" }, "schema": { "$ref": "#/components/schemas/RedSkyComplianceStatusRequestObject" } } } } } }, "/telephony/config/locations/{locationId}/redSky/building": { "post": { "responses": { "201": { "description": "Created", "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": "Create a RedSky Building Address and Alert Email for a Location", "operationId": "Create a RedSky Building Address and Alert Email for a Location", "description": "Add a RedSky building address and alert email for a specified location.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nCreating a building address and alert email requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the building address and alert email for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization in which the location exists.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "alertingEmail": "test@cisco.com", "address": { "addressLine1": "170 West Tasman Dr", "addressLine2": "Building 6", "city": "San Jose", "stateOrProvince": "California", "zipOrPostalCode": "95134", "country": "US" } }, "schema": { "$ref": "#/components/schemas/CreateBuildingRequest" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 RedSky Building Address for a Location", "operationId": "Update a RedSky Building Address for a Location", "description": "Update a RedSky building address for a specified location.\n\nThe Enhanced Emergency (E911) Service for Webex Calling provides dynamic location support and a network that routes emergency calls to Public Safety Answering Points (PSAP) around the US, its territories, and Canada. E911 services are provided in conjunction with a RedSky account.\n\nUpdating a building address requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the building address for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization in which the location exists.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "address": { "addressLine1": "170 West Tasman Dr", "addressLine2": "Building 6", "city": "San Jose", "stateOrProvince": "California", "zipOrPostalCode": "95134", "country": "US" } }, "schema": { "$ref": "#/components/schemas/UpdateBuildingRequest" } } } } } }, "/telephony/config/emergencyCallNotification": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrgCallNotificationObject" }, "example": { "emergencyCallNotificationEnabled": true, "allowEmailNotificationAllLocationEnabled": true, "emailAddress": "callback@gmail.com" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Get an Organization Emergency Call Notification", "operationId": "Get an Organization Emergency Call Notification", "description": "Get organization emergency call notification.\n\nEmergency Call Notifications can be enabled at the organization level, allowing specified email addresses to receive email notifications when an emergency call is made. To comply with U.S. Public Law 115-127, also known as Kari’s Law, any call that's made from within your organization to emergency services must generate an email notification.\n\nTo retrieve organization call notifications requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve Emergency Call Notification attributes for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 an Organization Emergency Call Notification", "operationId": "Update an Organization Emergency Call Notification", "description": "Update an organization emergency call notification.\n\nOnce settings are enabled at the organization level, the configured email address will receive emergency call notifications for all locations.\n\nEmergency Call Notifications can be enabled at the organization level, allowing specified email addresses to receive email notifications when an emergency call is made. To comply with U.S. Public Law 115-127, also known as Kari’s Law, any call that's made from within your organization to emergency services must generate an email notification.\n\nTo update organization call notification requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update Emergency Call Notification attributes for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "emergencyCallNotificationEnabled": true, "allowEmailNotificationAllLocationEnabled": true, "emailAddress": "callback@gmail.com" }, "schema": { "$ref": "#/components/schemas/OrgCallNotificationObject" } } } } } }, "/telephony/config/locations/{locationId}/emergencyCallNotification": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationCallNotificationObject" }, "example": { "emergencyCallNotificationEnabled": true, "emailAddress": "callback@gmail.com", "organization": { "emergencyCallNotificationEnabled": true, "allowEmailNotificationAllLocationEnabled": true, "emailAddress": "callback@gmail.com" } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Get a Location Emergency Call Notification", "operationId": "Get a Location Emergency Call Notification", "description": "Get location emergency call notification.\n\nEmergency Call Notifications can be enabled at the organization level, allowing specified email addresses to receive email notifications when an emergency call is made. Once activated at the organization level, individual locations can configure this setting to direct notifications to specific email addresses. To comply with U.S. Public Law 115-127, also known as Kari’s Law, any call that's made from within your organization to emergency services must generate an email notification.\n\nTo retrieve location call notifications requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve Emergency Call Notification attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Emergency Call Notification attributes for the location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Location Emergency Call Notification", "operationId": "Update a Location Emergency Call Notification", "description": "Update a location emergency call notification.\n\nOnce settings enabled at the organization level, the configured email address will receive emergency call notifications for all locations; for specific location customization, users can navigate to Management > Locations, select the Calling tab, and update the Emergency Call Notification settings.\n\nEmergency Call Notifications can be enabled at the organization level, allowing specified email addresses to receive email notifications when an emergency call is made. Once activated at the organization level, individual locations can configure this setting to direct notifications to specific email addresses. To comply with U.S. Public Law 115-127, also known as Kari’s Law, any call that's made from within your organization to emergency services must generate an email notification.\n\nTo update location call notification requires a full, user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update Emergency Call Notification attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzc4OWRkZTBjLWQ3N2ItNGYwZS1hYmJmLWY5YWFkMzQzOTJhZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update Emergency Call Notification attributes for a location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "emergencyCallNotificationEnabled": true, "emailAddress": "callback@gmail.com" }, "schema": { "$ref": "#/components/schemas/PutLocationCallNotificationObject" } } } } } }, "/telephony/config/huntGroups/{huntGroupId}/emergencyCallbackNumber/dependencies": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHuntGroupCallbackNumberDependenciesObject" }, "example": { "isLocationEcbnDefault": true, "isSelfEcbnDefault": false, "dependentMemberCount": 0 } } } }, "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 Dependencies for a Hunt Group Emergency Callback Number", "operationId": "Get Dependencies for a Hunt Group Emergency Callback Number", "description": "Retrieves the emergency callback number dependencies for a specific hunt group.\n\nHunt groups can route incoming calls to a group of people, workspaces or virtual lines. You can even configure a pattern to route to a whole group.\n\nRetrieving the dependencies requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "huntGroupId", "in": "path", "description": "Unique identifier for the hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Emergency Callback Number attributes for the hunt group under this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] } }, "/telephony/config/people/{personId}/emergencyCallbackNumber": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPersonCallbackNumberObject" }, "example": { "selected": "DIRECT_LINE", "directLineInfo": { "phoneNumber": "+18164196065", "firstName": "backUpworkspace", "lastName": ".", "effectiveLevel": "DIRECT_LINE", "effectiveValue": "+18164196065", "quality": "RECOMMENDED" }, "locationECBNInfo": { "phoneNumber": "+18164196065", "lastName": ".", "effectiveLevel": "DIRECT_LINE", "effectiveValue": "+18164196065", "quality": "RECOMMENDED", "firstName": "backUpworkspace" }, "locationMemberInfo": { "phoneNumber": "+18164196065", "firstName": "backUpworkspace", "lastName": ".", "memberId": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "effectiveLevel": "LOCATION_MEMBER_NUMBER", "effectiveValue": "+18164196065", "quality": "RECOMMENDED", "memberType": "PLACE" }, "elinEnabled": false, "elinForWebexAppEnabled": 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 Person's Emergency Callback Number", "operationId": "Get a Person's Emergency Callback Number", "description": "Retrieve a person's emergency callback number settings.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Callback Numbers (ECBN) and Emergency Service Addresses to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nTo retrieve a person's callback number requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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's Emergency Callback Number", "operationId": "Update a Person's Emergency Callback Number", "description": "Update a person's emergency callback number settings.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Callback Numbers (ECBN) to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nTo update an emergency callback number requires a full, location, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_MEMBER_NUMBER", "locationMemberId": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "elinEnabled": false, "elinForWebexAppEnabled": false }, "schema": { "$ref": "#/components/schemas/PutPersonECBNObject" } } } } } }, "/telephony/config/people/{personId}/emergencyCallbackNumber/dependencies": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPersonCallbackNumberDependenciesObject" }, "example": { "isLocationEcbnDefault": true, "isSelfEcbnDefault": false, "dependentMemberCount": 0 } } } }, "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": "Retrieve A Person's Emergency Callback Number Dependencies", "operationId": "Retrieve A Person's Emergency Callback Number Dependencies", "description": "Retrieve Emergency Callback Number dependencies for a person.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Call Back Numbers (ECBN) to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nRetrieving the dependencies requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Emergency Callback Number attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/emergencyCallbackNumber": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetWorkspaceCallbackNumberObject" }, "example": { "selected": "DIRECT_LINE", "directLineInfo": { "phoneNumber": "+18164196065", "firstName": "backUpworkspace", "lastName": ".", "effectiveLevel": "DIRECT_LINE", "effectiveValue": "+18164196065", "quality": "RECOMMENDED" }, "locationECBNInfo": { "phoneNumber": "+18164196065", "lastName": ".", "effectiveLevel": "DIRECT_LINE", "effectiveValue": "+18164196065", "quality": "RECOMMENDED", "firstName": "backUpworkspace" }, "locationMemberInfo": { "phoneNumber": "+18164196065", "firstName": "backUpworkspace", "lastName": ".", "memberId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8wY2VlYjFmYy04ZmEyLTQ5OGEtYWM3Ni02N2MyZGQ3MGQ2ZGY=", "effectiveLevel": "LOCATION_MEMBER_NUMBER", "effectiveValue": "+18164196065", "quality": "RECOMMENDED", "memberType": "PLACE" }, "elinEnabled": 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 a Workspace Emergency Callback Number", "operationId": "Get a Workspace Emergency Callback Number", "description": "Retrieve the emergency callback number setting associated with a specific workspace.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Callback Numbers (ECBN) and Emergency Service Addresses to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nTo retrieve an emergency callback number, it requires a full, location, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Retrieve Emergency Callback Number attributes for this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzBjZWViMWZjLThmYTItNDk4YS1hYzc2LTY3YzJkZDcwZDZk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Emergency Callback Number attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Workspace Emergency Callback Number", "operationId": "Update a Workspace Emergency Callback Number", "description": "Update the emergency callback number settings for a workspace.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Call Back Numbers (ECBN) to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nTo update an emergency callback number requires a full, location, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Updating Emergency Callback Number attributes for this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzBjZWViMWZjLThmYTItNDk4YS1hYzc2LTY3YzJkZDcwZDZk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Updating Emergency Callback Number attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_MEMBER_NUMBER", "locationMemberId": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "elinEnabled": true }, "schema": { "$ref": "#/components/schemas/PutWorkspaceECBNObject" } } } } } }, "/telephony/config/workspaces/{workspaceId}/emergencyCallbackNumber/dependencies": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetWorkspaceCallbackNumberDependenciesObject" }, "example": { "isLocationEcbnDefault": true, "isSelfEcbnDefault": false, "dependentMemberCount": 0 } } } }, "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": "Retrieve Workspace Emergency Callback Number Dependencies", "operationId": "Retrieve Workspace Emergency Callback Number Dependencies", "description": "Retrieve Emergency Callback Number dependencies for a workspace.\n\nEmergency Callback Configurations can be enabled at the organization level, Users without individual telephone numbers, such as extension-only users, must be set up with accurate Emergency Call Back Numbers (ECBN) to enable them to make emergency calls. These users can either utilize the default ECBN for their location or be assigned another specific telephone number from that location for emergency purposes.\n\nRetrieving the dependencies requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Retrieve Emergency Callback Number attributes for this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzBjZWViMWZjLThmYTItNDk4YS1hYzc2LTY3YzJkZDcwZDZk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Emergency Callback Number attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/emergencyCallbackNumber/dependencies": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLinesECBNDependenciesObject" }, "example": { "isLocationEcbnDefault": true, "isSelfEcbnDefault": true, "dependentMemberCount": 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": "Get Dependencies for a Virtual Line Emergency Callback Number", "operationId": "Get Dependencies for a Virtual Line Emergency Callback Number", "description": "Retrieves the emergency callback number dependencies for a specific virtual line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines for Webex Calling users.\n\nRetrieving the dependencies requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List virtual lines for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/emergencyCallbackNumber": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLinesECBNObject" }, "example": { "selected": "DIRECT_LINE", "directLineInfo": { "phoneNumber": "9726856700", "firstName": "John", "lastName": "Smith", "effectiveLevel": "DIRECT_LINE", "effectiveValue": "9726856770", "quality": "RECOMMENDED" }, "locationECBNInfo": { "phoneNumber": "9726856701", "firstName": "Jane", "lastName": "Smith", "effectiveLevel": "LOCATION_ECBN", "effectiveValue": "9726856772", "quality": "RECOMMENDED" }, "locationMemberInfo": { "phoneNumber": "9726856703", "firstName": "Group Name", "lastName": ".", "memberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MmQ3YTY3MS00YmVlLTQ2MDItOGVkOC1jOTFmNjU5NjcxZGI", "effectiveLevel": "LOCATION_MEMBER_NUMBER", "effectiveValue": "9726856774", "quality": "RECOMMENDED", "memberType": "PLACE" } } } } }, "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 the Virtual Line's Emergency Callback settings", "operationId": "Get the Virtual Line's Emergency Callback settings", "description": "Retrieves the emergency callback number settings for a specific virtual line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines for Webex Calling users.\n\nRetrieving the dependencies requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List virtual lines for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Virtual Line's Emergency Callback settings", "operationId": "Update a Virtual Line's Emergency Callback settings", "description": "Update the emergency callback number settings for a specific virtual line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines for Webex Calling users.\n\nTo update virtual line callback number requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Emergency Services Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List virtual lines for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_MEMBER_NUMBER", "locationMemberId": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg" }, "schema": { "$ref": "#/components/schemas/PutECBNObject" } } } } } }, "/telephony/config/announcements/playlists": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "playlists" ], "properties": { "playlists": { "type": "array", "items": { "$ref": "#/components/schemas/PlaylistObject" }, "description": "Array of playlists." } } }, "example": { "playlists": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "name": "testingAnnouncementPlaylist", "fileCount": 1, "isInUse": true, "lastUpdated": "2024-03-06 07:06:36", "level": "ORGANIZATION", "locationCount": 2 }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC80MzA1ZTYyZS1hMmIxLTRlNzktODQxMy1lYWQwZDVlYjcwNjM", "name": "testingAnnouncementPlaylistDuplicateFiles", "fileCount": 1, "isInUse": true, "lastUpdated": "2024-03-08 10:21:37", "level": "ORGANIZATION", "locationCount": 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": "List Announcement Playlists", "operationId": "listAnnouncementPlaylists", "description": "Fetch a list of announcement playlist at an organization.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Get announcements playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementPlaylistResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jNzAwNmI4ZC1kYmQ3LTQ3YjctOWQ0Ny05ZDJkMWEzYmY1Yzc" } } } }, "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 Announcement Playlist", "operationId": "createAnnouncementPlaylist", "description": "Create announcement Playlist at an organization level. A maximum of 25 announcement files can be included in a single playlist.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create an announcement playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "testingHydraAnnouncementPlaylistWithTwoFiles", "announcementIds": [ "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8yMTkxMDhmNC1iMGVjLTRkNTMtODMzYy1kNTE1NWE4OWQzZTk", "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zY2I2Y2Q1MS02Zjk3LTRiMmYtYTA0Yy04MjRmOGQ2NjQyYTU" ] }, "schema": { "$ref": "#/components/schemas/PostAnnouncementPlaylistObject" } } } } } }, "/telephony/config/announcements/playlists/{playlistId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementPlaylistGetResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "name": "testingAnnouncementPlaylist", "lastUpdated": "2024-03-06T07:06:36.396Z", "fileSize": "4279", "fileCount": 1, "announcements": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC83ODNmNjNhZi1jNDU1LTRhZWItODg0OS1jZThjNDQ4ZmNjNTg", "name": "TestAnnouncement1TT", "mediaFileType": "WAV", "fileName": "12Soft Piano Music_16000_mon1 copy.wav", "fileSize": "4279", "lastUpdated": "2023-06-06 13:51:02", "level": "ORGANIZATION" } ] } } } }, "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 Announcement Playlist", "operationId": "getAnnouncementPlaylist", "description": "Fetch details of announcement playlist by its ID at an organization level.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "playlistId", "in": "path", "description": "Unique identifier of an announcement playlist.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jNzAwNmI4ZC1kYmQ3LTQ3YjctOWQ0Ny05ZDJkMWEzYmY1Yzc", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get an announcement playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Announcement Playlist", "operationId": "updateAnnouncementPlaylist", "description": "Modify an existing announcement playlist at an organization level.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "playlistId", "in": "path", "description": "Unique identifier of an announcement playlist.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify an announcement playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "testingHydraAnnouncementPlaylistWithTwoFiles", "announcementIds": [ "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8yMTkxMDhmNC1iMGVjLTRkNTMtODMzYy1kNTE1NWE4OWQzZTk", "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zY2I2Y2Q1MS02Zjk3LTRiMmYtYTA0Yy04MjRmOGQ2NjQyYTU" ] }, "schema": { "$ref": "#/components/schemas/PutAnnouncementPlaylistObject" } } } } }, "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 Announcement Playlist", "operationId": "deleteAnnouncementPlaylist", "description": "Delete an announcement playlist for an organization.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "playlistId", "in": "path", "description": "Unique identifier of an announcement playlist.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jNzAwNmI4ZC1kYmQ3LTQ3YjctOWQ0Ny05ZDJkMWEzYmY1Yzc", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete an announcement playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/announcements/playlists/{playlistId}/locations": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaylistAssignedLocationResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "locations": [ { "name": "Atlas_Test_Location_Trunk_Limit", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M3YWEzNjQzLTYyNmYtNGQ0Yy1hNzNmLTk0MTA3NDgzMjMxMg" }, { "name": "Cy_location_full_page_Test02_DND", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzg4NzhlNzE4LTczMGItNGY2OC1iZTc3LTViMjNiNWUwOGUwZg" } ] } } } }, "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 Playlist Locations", "operationId": "listPlaylistLocations", "description": "Fetch list of locations which are assigned to the given announcement playlist\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "playlistId", "in": "path", "description": "Unique identifier of playlist.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get location associated to a playlist in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Playlist Locations", "operationId": "updatePlaylistLocations", "description": "Modify list of assigned locations or add new locations to the announcement playlist. This will assing the playlist to the location's music on hold.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Playlist" ], "parameters": [ { "name": "playlistId", "in": "path", "description": "Unique identifier of an announcement playlist.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify an assign location for announcement playlist for organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationIds": [ "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M3YWEzNjQzLTYyNmYtNGQ0Yy1hNzNmLTk0MTA3NDgzMjMxMg", "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzg4NzhlNzE4LTczMGItNGY2OC1iZTc3LTViMjNiNWUwOGUwZg" ] }, "schema": { "$ref": "#/components/schemas/PutPlaylistAssignedLocation" } } } } } }, "/telephony/config/announcements/playlists/{playListId}/usage": { "get": { "summary": "Get Playlist Usage", "operationId": "getPlaylistUsage", "tags": [ "Call Queue Settings with Playlist Settings" ], "parameters": [ { "name": "playListId", "in": "path", "required": true, "description": "Unique identifier of the playlist.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL1BMQVlMSVNULzg1NWU1N2M0LWUzYTAtNGEyZS1hYWYxLTQ3ZWUxMmI3M2U2MA==" }, { "name": "playlistUsageType", "in": "query", "schema": { "type": "string", "enum": [ "feature", "location" ] }, "description": "Filter usage by type.", "example": "feature" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaylistUsage" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQVlMSVNULzg1NWU1N2M0LWUzYTAtNGEyZS1hYWYxLTQ3ZWUxMmI3M2U2MA", "locations": [ { "name": "RCDN6", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAxNWFmN2QzLTRlNzktNGY2ZC04Nzk5LWRlMjEzYTBhZDNhYQ", "featureReference": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNGFlMzJkMTAtNWI0Zi00NmNmLWI4ZTQtYmE2YzNiZjMyZGZi", "name": "Test Call Queue", "type": "CALL_QUEUE" } }, { "name": "RCDN6", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAxNWFmN2QzLTRlNzktNGY2ZC04Nzk5LWRlMjEzYTBhZDNhYQ", "featureReference": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMTkyNDYxMjEtZDhiYi00NTdjLWEzZjQtNGQ3YTBlYmQ4Nzk2", "name": "Test Call Queue 3", "type": "CALL_QUEUE" } } ] } } } }, "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." } } } }, "/telephony/config/announcements": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "announcements" ], "properties": { "announcements": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementsListResponse" }, "description": "Array of announcements." } } }, "example": { "announcements": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "name": "Public_Announcement", "fileName": "Sample_Greetings_file.wav", "fileSize": "356", "mediaFileType": "WAV", "lastUpdated": "2022-02-22 22:27:54", "level": "LOCATION", "location": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81ZTk3MzFlNy1iOWQ0LTRmMWQtYjYyMi05NDgwMDhhMjkzMzM", "name": "RCDN" }, "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "name": "General Announcement", "fileName": "General_Greetings_file.wav", "fileSize": "356", "mediaFileType": "WAV", "lastUpdated": "2022-02-22 22:27:54", "level": "ORGANIZATION", "isTextToSpeech": 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": "Fetch list of announcement greetings on location and organization level", "operationId": "Fetch list of announcement greetings on location and organization level", "description": "Fetch a list of binary announcement greetings at an organization as well as location level.\n\nAn admin can upload a file at an organization level. This file will be uploaded to the announcement repository.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Get announcements in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of enterprise or Location announcement files. Without this parameter, the Enterprise level announcements are returned.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string", "enum": [ "all", "locations", "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx" ] } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list according to fileName or fileSize. The default sort will be in Ascending order.", "example": "fileName-desc", "schema": { "type": "string" } }, { "name": "fileName", "in": "query", "description": "Return the list of announcements with the given fileName.", "example": "RegionalAnnouncement", "schema": { "type": "string" } }, { "name": "fileType", "in": "query", "description": "Return the list of announcement files for this fileType.", "example": "audio", "schema": { "type": "string" } }, { "name": "mediaFileType", "in": "query", "description": "Return the list of announcement files for this mediaFileType.", "example": "wav", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of announcement files for this announcement label.", "example": "General Announcement", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ" } } } }, "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": "Upload a binary announcement greeting at organization level", "operationId": "Upload a binary announcement greeting at organization level", "description": "Upload a binary file to the announcement repository at an organization level.\n\nAn admin can upload a file at an organization level. This file will be uploaded to the announcement repository.\n\nYour request will need to be an `application/json` request with the announcement details including name, fileUri, fileName, and isTextToSpeech fields.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create an announcement in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementRequestBody" }, "example": { "name": "Public_Announcement", "fileUri": "https://example.com/announcements/greeting.wav", "fileName": "greeting.wav", "isTextToSpeech": false } } } } } }, "/telephony/config/announcements/usage": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementUsageResponse" }, "example": { "totalFileSizeUsedKB": 356, "maxAudioFileSizeAllowedKB": 100, "maxVideoFileSizeAllowedKB": 100, "totalFileSizeLimitMB": 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": "Fetch repository usage for announcements for an organization", "operationId": "Fetch repository usage for announcements for an organization", "description": "Retrieves repository usage for announcements for an organization.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Get announcement usage in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/announcements/{announcementId}": { "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 an announcement greeting of the organization", "operationId": "Delete an announcement greeting of the organization", "description": "Delete an announcement greeting for an organization.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete an announcement in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementResponseWithPlaylist" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "name": "Public_Announcement", "fileName": "Sample_Greetings_file.wav", "fileSize": "356", "mediaFileType": "WAV", "lastUpdated": "2022-02-22 22:27:54Z", "featureReferenceCount": 1, "featureReferences": [ { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "AUTO_ATTENDANT", "type": "WAV", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "locationName": "RCDN" } ], "playlists": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "name": "testingAnnouncementPlaylist" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC80MzA1ZTYyZS1hMmIxLTRlNzktODQxMy1lYWQwZDVlYjcwNjM", "name": "testingAnnouncementPlaylistDuplicateFiles" } ], "isTextToSpeech": false, "voice": "en-US-Neural2-A", "language": "en-US", "text": "Welcome to our service. Please hold while we connect you." } } } }, "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": "Fetch details of a binary announcement greeting at the organization level", "operationId": "Fetch details of a binary announcement greeting at the organization level", "description": "Fetch details of a binary announcement greeting by its ID at an organization level.\n\nAn admin can upload a file at an organization level. This file will be uploaded to the announcement repository.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get an announcement in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a binary announcement greeting at organization level", "operationId": "Modify a binary announcement greeting at organization level", "description": "Modify an existing announcement greeting at an organization level.\n\nAn admin can upload a file or modify an existing file at an organization level. This file will be uploaded to the announcement repository.\n\nYour request will need to be an `application/json` request with the announcement details including name, fileUri, fileName, and isTextToSpeech fields.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify an announcement in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementRequestBody" }, "example": { "name": "Public_Announcement", "fileUri": "https://example.com/announcements/greeting.wav", "fileName": "greeting.wav", "isTextToSpeech": false } } } } } }, "/telephony/config/locations/{locationId}/announcements": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ" } } } }, "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": "Upload a binary announcement greeting at the location level", "operationId": "Upload a binary announcement greeting at the location level", "description": "Upload a binary file to the announcement repository at a location level.\n\nAn admin can upload a file at a location level. This file will be uploaded to the announcement repository.\n\nYour request will need to be an `application/json` request with the announcement details including name, fileUri, fileName, and isTextToSpeech fields.\n\nThis API requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier of a location where an announcement is being created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U1MjQ0OGU5LTE1NjQtNDNlOS04YzY1LWMyYWMwNDY1ZWMwYw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create an announcement for location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementRequestBody" }, "example": { "name": "Public_Announcement", "fileUri": "https://example.com/announcements/greeting.wav", "fileName": "greeting.wav", "isTextToSpeech": false } } } } } }, "/telephony/config/locations/{locationId}/announcements/usage": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementUsageResponse" }, "example": { "totalFileSizeUsedKB": 356, "maxAudioFileSizeAllowedKB": 100, "maxVideoFileSizeAllowedKB": 100, "totalFileSizeLimitMB": 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": "Fetch repository usage for announcements in a location", "operationId": "Fetch repository usage for announcements in a location", "description": "Retrieves repository usage for announcements in a location.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier of a location where an announcement is being created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U1MjQ0OGU5LTE1NjQtNDNlOS04YzY1LWMyYWMwNDY1ZWMwYw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get announcement usage for location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/announcements/{announcementId}": { "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 an announcement greeting in a location", "operationId": "Delete an announcement greeting in a location", "description": "Delete an announcement greeting in a location.\n\nThis API requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier of a location where announcement is being created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U1MjQ0OGU5LTE1NjQtNDNlOS04YzY1LWMyYWMwNDY1ZWMwYw", "schema": { "type": "string" } }, { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete an announcement for location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "name": "Public_Announcement", "fileName": "Sample_Greetings_file.wav", "fileSize": "356", "mediaFileType": "WAV", "lastUpdated": "2022-02-22 22:27:54Z", "featureReferenceCount": 1, "featureReferences": [ { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "AUTO_ATTENDANT", "type": "WAV", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "locationName": "RCDN" } ], "isTextToSpeech": false, "voice": "en-US-Neural2-A", "language": "en-US", "text": "Welcome to our service. Please hold while we connect you." } } } }, "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": "Fetch details of a binary announcement greeting at location level", "operationId": "Fetch details of a binary announcement greeting at location level", "description": "Fetch details of a binary announcement greeting by its ID at a location level.\n\nAn admin can upload a file at a location level. This file will be uploaded to the announcement repository.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier of a location where an announcement is being created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U1MjQ0OGU5LTE1NjQtNDNlOS04YzY1LWMyYWMwNDY1ZWMwYw", "schema": { "type": "string" } }, { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Fetch an announcement for location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a binary announcement greeting at location level", "operationId": "Modify a binary announcement greeting at location level", "description": "Modify an existing announcement greeting at a location level.\n\nAn admin can upload a file or modify an existing file at a location level. This file will be uploaded to the announcement repository.\n\nYour request will need to be an `application/json` request with the announcement details including name, fileUri, fileName, and isTextToSpeech fields.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier of a location where an announcement is being created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U1MjQ0OGU5LTE1NjQtNDNlOS04YzY1LWMyYWMwNDY1ZWMwYw", "schema": { "type": "string" } }, { "name": "announcementId", "in": "path", "description": "Unique identifier of an announcement.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify an announcement for location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnnouncementRequestBody" }, "example": { "name": "Public_Announcement", "fileUri": "https://example.com/announcements/greeting.wav", "fileName": "greeting.wav", "isTextToSpeech": false } } } } } }, "/telephony/config/textToSpeech/actions/generate/invoke": { "post": { "responses": { "202": { "description": "Accepted", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GenerateTtsResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA" } } } }, "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." }, "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." }, "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": "Generate a Text-to-Speech Prompt", "operationId": "generateTextToSpeech", "description": "Generate a text-to-speech prompt from the provided text, voice, and language.\n\nText-to-speech (TTS) efficiently generates prompts, greetings, and announcements by converting written text into synthesized audio using the specified voice. The generated audio functions like a recorded WAV file, eliminating the need for manual recording.\n\nThis API requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Generate text-to-speech for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GenerateTtsRequest" }, "example": { "voice": "ashley", "text": "Welcome to our service. Please hold while we connect you.", "languageCode": "en_us" } } } } } }, "/telephony/config/textToSpeech/usage": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TtsUsageResponse" }, "example": { "noOfApiCalls": 25, "maxAllowedApiCalls": 150, "usageResetTimestamp": "2026-01-01T00:00: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." }, "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 Text-to-Speech Usage", "operationId": "getTextToSpeechUsage", "description": "Retrieve text-to-speech usage information, including the number of API calls made, the maximum allowed within the time window, and the timestamp indicating when the usage will reset.\n\nText-to-speech (TTS) efficiently generates prompts, greetings, and announcements by converting written text into synthesized audio using the specified voice. The generated audio functions like a recorded WAV file, eliminating the need for manual recording.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Get text-to-speech usage for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/textToSpeech/{ttsId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TtsStatusResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA", "voice": "ashley", "text": "Welcome to our service. Please hold while we connect you.", "languageCode": "en_us", "status": "SUCCESS", "promptUrl": "https://wxc-int-media-file.ciscospark.com/b535b87e-0994-4387-ace1-56facfba9b75/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663", "kmsKeyUri": "kms://kms-cisco.wbx2.com/keys/b56642f3-d597-420c-8a55-41aaa8c5b6e7", "fileUri": "cmf://customers/bf01164f-ed87-44d9-bc41-f63f26fb9663/media/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663" } } } }, "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." }, "410": { "description": "Gone: The requested resource is no longer available." }, "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 Text-to-Speech Generation Status", "operationId": "getTextToSpeechGenerationStatus", "description": "Get the status of a text-to-speech generation request by its ID. If the status is SUCCESS, the response includes `promptUrl`, `kmsKeyUri`, and `fileUri` to preview or use the audio prompt.\n\nTo preview the audio prompt:\n\n1. Download the KMS key - use the Webex Node.js SDK and provide `kmsKeyUri` to download the key from KMS.\n\n2. Download the encrypted audio - The encrypted audio file content is stored in cloud and can be retrieved using `promptURL`.\n\n3. Decrypt the audio content - Use the jose library to decrypt the content downloaded from `promptUrl` using the downloaded key.\n\nText-to-speech (TTS) efficiently generates prompts, greetings, and announcements by converting written text into synthesized audio using the specified voice. The generated audio functions like a recorded WAV file, eliminating the need for manual recording.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "ttsId", "in": "path", "description": "Unique identifier of the text-to-speech generation request.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get text-to-speech status for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/textToSpeech/voices": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TtsVoicesResponse" }, "example": { "voices": [ { "id": "ashley", "label": "Ashley-Female" }, { "id": "steve", "label": "Steve-Male" } ] } } } }, "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." }, "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 Text-to-Speech Voices", "operationId": "listTextToSpeechVoices", "description": "Fetch a list of available text-to-speech voices. Use the returned voice ID in the generation request.\n\nText-to-speech (TTS) efficiently generates prompts, greetings, and announcements by converting written text into synthesized audio using the specified voice. The generated audio functions like a recorded WAV file, eliminating the need for manual recording.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Announcement Repository" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List text-to-speech voices supported for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/autoAttendants": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "autoAttendants" ], "properties": { "autoAttendants": { "type": "array", "items": { "$ref": "#/components/schemas/ListAutoAttendantObject" }, "description": "Array of auto attendants." } } }, "example": { "autoAttendants": [ { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "Main Line AA - Test", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzI0NDY5OA", "phoneNumber": "+19705550028", "extension": "0028", "routingPrefix": "1234", "esn": "12340028", "tollFreeNumber": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2NXZHVjWGg1WkhCbmFVQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "AUTOATTENDANT-TEST 1", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzI0NDY5OA", "phoneNumber": "+19705550030", "extension": "1234", "routingPrefix": "1234", "esn": "12340028", "tollFreeNumber": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "AUTOATTENDANT-TEST 2", "locationName": "Houston", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzI2NDE1MA", "phoneNumber": "+17135551001", "extension": "1001", "routingPrefix": "1234", "esn": "12340028", "tollFreeNumber": 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": "Read the List of Auto Attendants", "operationId": "listAutoAttendants", "description": "List all Auto Attendants for the organization.\n\nAuto attendants play customized prompts and provide callers with menu options for routing their calls through your system.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List auto attendants for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of auto attendants for this location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return auto attendants with the matching name.", "example": "Main Line AA - Test", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return auto attendants with the matching phone number.", "example": "9705550028", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAutoAttendantObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "name": "Main Line AA - Test", "enabled": true, "phoneNumber": "+19705550026", "extension": "200", "routingPrefix": "1234", "esn": "1234200", "tollFreeNumber": false, "firstName": "Main Line AA", "lastName": "Test", "language": "English", "languageCode": "en_us", "businessSchedule": "AUTOATTENDANT-BUSINESS-HOURS", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "extensionDialing": "ENTERPRISE", "nameDialing": "ENTERPRISE", "timeZone": "America/Los_Angeles", "businessHoursMenu": { "greeting": "DEFAULT", "extensionEnabled": true, "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" }, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "TRANSFER_WITHOUT_PROMPT", "value": "+19175551092" }, { "key": "2", "action": "TRANSFER_WITH_PROMPT", "value": "+19073569984" }, { "key": "3", "action": "EXTENSION_DIALING" }, { "key": "4", "action": "TRANSFER_TO_MAILBOX", "value": "+19705550006" }, { "key": "5", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, { "key": "6", "action": "REPEAT_MENU" } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "afterHoursMenu": { "greeting": "DEFAULT", "extensionEnabled": true, "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" }, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "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 Details for an Auto Attendant", "operationId": "getAutoAttendant", "description": "Retrieve an Auto Attendant details.\n\nAuto attendants play customized prompts and provide callers with menu options for routing their calls through your system.\n\nRetrieving an auto attendant details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve an auto attendant details in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Retrieve the auto attendant with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve auto attendant details from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 an Auto Attendant", "operationId": "updateAutoAttendant", "description": "Update the designated Auto Attendant.\n\nAuto attendants play customized prompts and provide callers with menu options for routing their calls through your system.\n\nUpdating an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Update an auto attendant with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update an auto attendant from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Main Line AA - Test New Name", "phoneNumber": "+19705550026", "extension": "200", "firstName": "Main Line AA", "lastName": "Test", "languageCode": "en_us", "businessSchedule": "TEST-BUSINESS-HOURS-NEW-NAME", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "extensionDialing": "ENTERPRISE", "nameDialing": "ENTERPRISE", "timeZone": "America/Los_Angeles", "businessHoursMenu": { "greeting": "DEFAULT", "extensionEnabled": true, "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "TRANSFER_WITHOUT_PROMPT", "value": "+19175551092" }, { "key": "2", "action": "TRANSFER_WITH_PROMPT", "value": "+19073569984" }, { "key": "3", "action": "EXTENSION_DIALING" }, { "key": "4", "action": "TRANSFER_TO_MAILBOX", "value": "+19705550006" }, { "key": "5", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, { "key": "6", "action": "REPEAT_MENU" } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "afterHoursMenu": { "greeting": "DEFAULT", "extensionEnabled": true, "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/ModifyAutoAttendantObject" } } } } }, "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 an Auto Attendant", "operationId": "deleteAutoAttendant", "description": "Delete the designated Auto Attendant.\n\nAuto attendants play customized prompts and provide callers with menu options for routing their calls through your system.\n\nDeleting an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete an auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Delete the auto attendant with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the auto attendant from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created auto attendant." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw" } } } }, "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 an Auto Attendant", "operationId": "createAutoAttendant", "description": "Create new Auto Attendant for the given location.\n\nAuto attendants play customized prompts and provide callers with menu options for routing their calls through your system.\n\nCreating an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the auto attendant for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the auto attendant for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Main Line AA - Test", "phoneNumber": "+19705550026", "extension": "200", "firstName": "Main Line AA", "lastName": "Test", "languageCode": "en_us", "businessSchedule": "AUTOATTENDANT-BUSINESS-HOURS", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "extensionDialing": "ENTERPRISE", "nameDialing": "ENTERPRISE", "timeZone": "America/Los_Angeles", "businessHoursMenu": { "greeting": "DEFAULT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "extensionEnabled": true, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "TRANSFER_WITHOUT_PROMPT", "value": "+19175551092" }, { "key": "2", "action": "TRANSFER_WITH_PROMPT", "value": "+19073569984" }, { "key": "3", "action": "EXTENSION_DIALING" }, { "key": "4", "action": "TRANSFER_TO_MAILBOX", "value": "+19705550006" }, { "key": "5", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, { "key": "6", "action": "REPEAT_MENU" } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "afterHoursMenu": { "greeting": "DEFAULT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "extensionEnabled": true, "keyConfigurations": [ { "key": "0", "action": "EXIT" }, { "key": "1", "action": "PLAY_ANNOUNCEMENT", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } ], "callTreatment": { "retryAttemptForNoInput": "THREE_TIMES", "noInputTimer": "60", "actionToBePerformed": { "action": "TRANSFER_TO_OPERATOR", "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "transferCallTo": "9878945608" } } }, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/PostAutoAttendantObject" } } } } } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAutoAttendantCallForwardSettingsObject" } } } }, "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 Call Forwarding Settings for an Auto Attendant", "operationId": "getAutoAttendantCallForwardingSettings", "description": "Retrieve Call Forwarding settings for the designated Auto Attendant including the list of call forwarding rules.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nRetrieving call forwarding settings for an auto attendant requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Retrieve the call forwarding settings for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve auto attendant forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Forwarding Settings for an Auto Attendant", "operationId": "updateAutoAttendantCallForwardingSettings", "description": "Update Call Forwarding settings for the designated Auto Attendant.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nUpdating call forwarding settings for an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Update call forwarding settings for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update auto attendant forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "+19705550006", "ringReminderEnabled": false, "sendToVoicemailEnabled": false }, "selective": { "enabled": true, "destination": "+19705550006", "ringReminderEnabled": false, "sendToVoicemailEnabled": false }, "rules": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "enabled": false } ], "operatingModes": { "enabled": true, "modes": [ { "normalOperationEnabled": true, "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "forwardTo": { "selection": "FORWARD_TO_SPECIFIED_NUMBER", "destination": "00000", "destinationVoicemailEnabled": false } } ] } } }, "schema": { "$ref": "#/components/schemas/ModifyAutoAttendantCallForwardSettingsObject" } } } } } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/callForwarding/selectiveRules": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created auto attendant call forward selective rule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw" } } } }, "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 Selective Call Forwarding Rule for an Auto Attendant", "operationId": "createAutoAttendantSelectiveCallForwardingRule", "description": "Create a Selective Call Forwarding Rule for the designated Auto Attendant.\n\nA selective call forwarding rule for an auto attendant allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the auto attendant's call forwarding settings.\n\nCreating a selective call forwarding rule for an auto attendant requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which the auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Create the rule for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the auto attendant rule for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Test Rule", "businessSchedule": "AUTOATTENDANT-BUSINESS-HOURS", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": false, "numbers": [ "4554" ] } }, "callsTo": { "numbers": [ { "type": "PRIMARY", "phoneNumber": "+19705550026" } ] }, "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "enabled": true }, "schema": { "$ref": "#/components/schemas/PostAutoAttendantCallForwardSelectiveRuleObject" } } } } } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/callForwarding/selectiveRules/{ruleId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAutoAttendantCallForwardSelectiveRuleObject" }, "example": { "name": "Test Rule", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "enabled": true, "businessSchedule": "AUTOATTENDANT-BUSINESS-HOURS", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": false, "numbers": [ "44544" ] } }, "callsTo": { "numbers": [ { "phoneNumber": "+19705550026", "type": "PRIMARY" } ] } } } } }, "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 Selective Call Forwarding Rule for an Auto Attendant", "operationId": "getAutoAttendantSelectiveCallForwardingRule", "description": "Retrieve a Selective Call Forwarding Rule's settings for the designated Auto Attendant.\n\nA selective call forwarding rule for an auto attendant allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the auto attendant's call forwarding settings.\n\nRetrieving a selective call forwarding rule's settings for an auto attendant requires a full or read-only administrator or location administrator\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Retrieve settings for a rule for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Auto attendant rule you are retrieving settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve auto attendant rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "New ID for the modified rule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGxJRTVsZHlCT1lXMWw" } } } }, "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 Selective Call Forwarding Rule for an Auto Attendant", "operationId": "updateAutoAttendantSelectiveCallForwardingRule", "description": "Update a Selective Call Forwarding Rule's settings for the designated Auto Attendant.\n\nA selective call forwarding rule for an auto attendant allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the auto attendant's call forwarding settings.\n\nUpdating a selective call forwarding rule's settings for an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Update settings for a rule for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Auto attendant rule you are updating settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update auto attendant rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Test Rule New Name", "businessSchedule": "AUTOATTENDANT-BUSINESS-HOURS", "holidaySchedule": "AUTOATTENDANT-HOLIDAY", "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": false, "numbers": [ "4554" ] } }, "callsTo": { "numbers": [ { "type": "PRIMARY", "phoneNumber": "+19705550026" } ] }, "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "enabled": true }, "schema": { "$ref": "#/components/schemas/ModifyAutoAttendantCallForwardSelectiveRuleObject" } } } } }, "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 Selective Call Forwarding Rule for an Auto Attendant", "operationId": "deleteAutoAttendantSelectiveCallForwardingRule", "description": "Delete a Selective Call Forwarding Rule for the designated Auto Attendant.\n\nA selective call forwarding rule for an auto attendant allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the auto attendant's call forwarding settings.\n\nDeleting a selective call forwarding rule for an auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Delete the rule for this auto attendant.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Auto attendant rule you are deleting.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete auto attendant rule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AutoAttendantPrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Auto Attendant Primary Available Phone Numbers", "operationId": "getAutoAttendantPrimaryAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the auto attendant's primary phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/alternate/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AutoAttendantAlternateAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Auto Attendant Alternate Available Phone Numbers", "operationId": "getAutoAttendantAlternateAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the auto attendant's alternate number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AutoAttendantCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8zZjc0NzJiMS1iNDNmLTQ3N2QtODNlZi1hNmQzZGYyZGJiMjY=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Auto Attendant Call Forward Available Phone Numbers", "operationId": "getAutoAttendantCallForwardAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the auto attendant's call forward number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/callForwarding/actions/switchMode/invoke": { "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": "Switch Mode for Call Forwarding Settings for an Auto Attendant", "operationId": "switchAutoAttendantCallForwardingMode", "description": "Switches the current operating mode of the `Auto Attendant` to the mode as per normal operations.\n\nOperating modes allow call forwarding to be configured based on predefined schedules, enabling different routing behaviors during business hours, after hours, or holidays.\n\nSwitching operating mode for an `auto attendant` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "`Location` in which this `auto attendant` exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Switch operating mode to normal operations for this `auto attendant`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzk3ZjJiODY1LTc3NTUtNGVlOC05NDY0LTFjOGU1NGE1OGVjNQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Switch operating mode as per normal operations for the `auto attendant` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": {}, "schema": { "type": "object", "properties": {} } } } } } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/announcements/{fileName}": { "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 Auto Attendant Announcement File", "operationId": "deleteAutoAttendantAnnouncementFile", "description": "Delete an announcement file for the designated auto attendant.\n\nAuto Attendant announcement files contain messages and music that callers hear while waiting in the queue. A auto attendant can be configured to play whatever subset of these announcement files is desired.\n\nDeleting an announcement file for a auto attendant requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete an announcement for a auto attendant in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Delete an announcement for the auto attendant with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "fileName", "in": "path", "description": "", "required": true, "example": "Greeting-2.wav", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete auto attendant announcement from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/autoAttendants/{autoAttendantId}/announcements": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "announcements" ], "properties": { "announcements": { "type": "array", "items": { "$ref": "#/components/schemas/GetAnnouncementFileInfo" }, "description": "Array of announcements for this auto attendant." } } }, "example": { "announcements": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9kODc5YWZlZC1jNTRhLTQyOTctOGY0Mi02ZmEyMDJjN2E1M2E", "fileName": "Greeting-1.wav", "fileSize": "33456", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "Greeting-2.wav", "fileSize": "32356", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "Greeting-3.wav", "fileSize": "31237", "mediaFileType": "WAV", "level": "ORGANIZATION" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Auto Attendant Announcement Files", "operationId": "listAutoAttendantAnnouncementFiles", "description": "List file info for all auto attendant announcement files associated with this auto attendant.\n\nAuto attendant announcement files contain messages and music that callers hear while waiting in the queue. A auto attendant can be configured to play whatever subset of these announcement files is desired.\n\nRetrieving this list of files requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\nNote that uploading of announcement files via API is not currently supported, but is available via Webex Control Hub.", "tags": [ "Features: Auto Attendant" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this auto attendant exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "autoAttendantId", "in": "path", "description": "Retrieve announcement files for the auto attendant with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve announcement files for a auto attendant from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callParks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callParks" ], "properties": { "callParks": { "type": "array", "items": { "$ref": "#/components/schemas/ListCallParkObject" }, "description": "Array of call parks." } } }, "example": { "callParks": [ { "name": "technical support - cards - customer 1", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JqWVhKa2N5QXRJR04xYzNSdmJXVnlJREU9", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1" }, { "name": "technical support - insurance - customer 1", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Call Parks", "operationId": "Read the List of Call Parks", "description": "List all Call Parks for the organization.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Park ID will change upon modification of the Call Park name.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of call parks for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List call parks for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of call parks returned to this maximum count. Default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching call parks. Default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list of call parks by name, either ASC or DSC. Default is ASC.", "example": "ASC", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of call parks that contains the given name. The maximum length is 80.", "example": "technical support", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9WR1Z6ZEMxRFVFY3RNZz09", "description": "ID of the newly created call park." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==" } } } }, "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 Call Park", "operationId": "Create a Call Park", "description": "Create new Call Parks for the given location.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nCreating a call park requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Park ID will change upon modification of the Call Park name.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the call park for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the call park for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "technical support - insurance - customer 1", "recall": { "huntGroupId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "option": "ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP" }, "agents": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ" ], "parkOnAgentsEnabled": false, "callParkExtensions": [ "Y3lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc2MWQ" ] }, "schema": { "$ref": "#/components/schemas/PostCallParkObject" } } } } } }, "/telephony/config/locations/{locationId}/callParks/{callParkId}": { "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 Call Park", "operationId": "Delete a Call Park", "description": "Delete the designated Call Park.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nDeleting a call park requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Park ID will change upon modification of the Call Park name.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a call park.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "callParkId", "in": "path", "description": "Delete the call park with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the call park from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallParkObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "name": "technical support - insurance - customer 1", "recall": { "huntGroupId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "huntGroupName": "Technical Support Group - 5558675309", "option": "ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP" }, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "firstName": "John", "lastName": "Brown", "displayName": "John Brown", "type": "PEOPLE", "email": "john.brown@example.com", "numbers": [ { "external": "+19075552859", "extension": "8080", "routingPrefix": "1234", "esn": "12348080", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ", "firstName": "John", "lastName": "Smith", "displayName": "John Smith", "type": "PEOPLE", "email": "john.smith@example.com", "numbers": [ { "external": "+19075553859", "extension": "8081", "routingPrefix": "1234", "esn": "12348081", "primary": "true" } ] } ], "parkOnAgentsEnabled": false, "callParkExtensions": [ { "id": "Y3lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc2MWQ", "extension": "1415", "name": "14159265" } ] } } } }, "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 Details for a Call Park", "operationId": "Get Details for a Call Park", "description": "Retrieve Call Park details.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nRetrieving call park details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Park ID will change upon modification of the Call Park name.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call park in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "callParkId", "in": "path", "description": "Retrieve settings for a call park with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call park settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the target call park." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==" } } } }, "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 Call Park", "operationId": "Update a Call Park", "description": "Update the designated Call Park.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nUpdating a call park requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Park ID will change upon modification of the Call Park name.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call park exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "callParkId", "in": "path", "description": "Update settings for a call park with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call park settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "technical support - insurance - customer 1", "recall": { "huntGroupId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "option": "ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP" }, "agents": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ" ], "parkOnAgentsEnabled": false, "callParkExtensions": [ "Y3lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc2MWQ" ] }, "schema": { "$ref": "#/components/schemas/ModifyCallParkObject" } } } } } }, "/telephony/config/locations/{locationId}/callParks/availableUsers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineCallParksObject" }, "description": "Array of agents." } } }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "firstName": "John", "lastName": "Brown", "displayName": "John Brown", "type": "PEOPLE", "email": "john.brown@example.com", "numbers": [ { "external": "+19075552859", "extension": "8080", "routingPrefix": "1234", "esn": "12348080", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ", "firstName": "John", "lastName": "Smith", "displayName": "John Smith", "type": "PEOPLE", "email": "john.smith@example.com", "numbers": [ { "external": "+19075553859", "extension": "8081", "routingPrefix": "1234", "esn": "12348081", "primary": "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 available agents from Call Parks", "operationId": "Get available agents from Call Parks", "description": "Retrieve available agents from call parks for a given location.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nRetrieving available agents from call parks requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the available agents for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Return the available agents for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "callParkName", "in": "query", "description": "Only return available agents from call parks with the matching name.", "example": "technical support - insurance - customer 1", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of available agents returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching available agents.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return available agents with the matching name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return available agents with the matching primary number.", "example": "+19075552859", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the available agents according to the designated fields. Up to three vertical bar (|) separated sort order fields may be specified. Available sort fields: fname, lname, number and extension. The maximum supported sort order value is 3.", "example": "lname|fname|extension", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callParks/availableRecallHuntGroups": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "huntGroups" ], "properties": { "huntGroups": { "type": "array", "items": { "$ref": "#/components/schemas/GetAvailableRecallHuntGroupsObject" }, "description": "Array of available recall hunt groups." } } }, "example": { "huntGroups": [ { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "name": "Technical Support Group - 5558675309" }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TWpRMU5ESXpPVEF3TUVCbmJXRnBiQzVqYjIwPQ", "name": "Technical Support Group - 2454239000" } ] } } } }, "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 available recall hunt groups from Call Parks", "operationId": "Get available recall hunt groups from Call Parks", "description": "Retrieve available recall hunt groups from call parks for a given location.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nRetrieving available recall hunt groups from call parks requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the available recall hunt groups for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Return the available recall hunt groups for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of available recall hunt groups returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching available recall hunt groups.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return available recall hunt groups with the matching name.", "example": "Technical Support Group", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the available recall hunt groups according to the designated fields. Available sort fields: lname.", "example": "lname", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callParks/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallParkSettingsObject" }, "example": { "callParkRecall": { "huntGroupId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "huntGroupName": "Technical Support Group - 5558675309", "option": "ALERT_HUNT_GROUP_ONLY" }, "callParkSettings": { "ringPattern": "NORMAL", "recallTime": 45, "huntWaitTime": 45 } } } } }, "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 Call Park Settings", "operationId": "Get Call Park Settings", "description": "Retrieve Call Park Settings from call parks for a given location.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nRetrieving settings from call parks requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the call park settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Return the call park settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Park settings", "operationId": "Update Call Park settings", "description": "Update Call Park settings for the designated location.\n\nCall Park allows call recipients to place a call on hold so that it can be retrieved from another device.\n\nUpdating call park settings requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location for which call park settings will be updated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call park settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callParkRecall": { "huntGroupId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "huntGroupName": "Technical Support Group - 5558675309", "option": "ALERT_HUNT_GROUP_ONLY" }, "callParkSettings": { "ringPattern": "NORMAL", "recallTime": 45, "huntWaitTime": 45 } }, "schema": { "$ref": "#/components/schemas/ModifyCallParkSettingsObject" } } } } } }, "/telephony/config/callParkExtensions": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "callParkExtensions" ], "properties": { "callParkExtensions": { "type": "array", "items": { "$ref": "#/components/schemas/ListCallParkExtensionObject" }, "description": "Array of call park extensions." } } }, "example": { "callParkExtensions": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMGYzZTkwNGItYzliNC00ODNmLWI4MWItZmI0ZjkyMWcxNDUzCg", "extension": "1415", "routingPrefix": "1234", "esn": "12341415", "name": "14159265", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "locationName": "WXCSIVDKCPAPIC4S1" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMGYzZTkwNGItYzliNC00ODNmLWI4MWItZmI0ZjkyMWcxNDUyCg", "extension": "7182", "routingPrefix": "1234", "esn": "12347182", "name": "71828182", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "locationName": "WXCSIVDKCPAPIC4S1" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Call Park Extensions", "operationId": "Read the List of Call Park Extensions", "description": "List all Call Park Extensions for the organization.\n\nThe Call Park service, enabled for all users by default, allows a user to park a call against an available user's extension or to a Call Park Extension. Call Park Extensions are extensions defined within the Call Park service for holding parked calls.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List call park extensions for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Only return call park extensions with matching location ID.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "extension", "in": "query", "description": "Only return call park extensions with the matching extension.", "example": "1415", "schema": { "type": "string" } }, { "name": "locationName", "in": "query", "description": "Only return call park extensions with the matching extension.", "example": "Customer Support", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Only return call park extensions with the matching name.", "example": "14159265", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the available agents according to the designated fields. Available sort fields: `groupName`, `callParkExtension`, `callParkExtensionName`, `callParkExtensionExternalId`.", "example": "groupName|callParkExtension|callParkExtensionName|callParkExtensionExternalId", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callParkExtensions/{callParkExtensionId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallParkExtensionObject" }, "example": { "extension": "1415", "routingPrefix": "1234", "esn": "12341415", "name": "14159265" } } } }, "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 Details for a Call Park Extension", "operationId": "Get Details for a Call Park Extension", "description": "Retrieve Call Park Extension details.\n\nThe Call Park service, enabled for all users by default, allows a user to park a call against an available user's extension or to a Call Park Extension. Call Park Extensions are extensions defined within the Call Park service for holding parked calls.\n\nRetrieving call park extension details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve details for a call park extension in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "callParkExtensionId", "in": "path", "description": "Retrieve details for a call park extension with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMGYzZTkwNGItYzliNC00ODNmLWI4MWItZmI0ZjkyMWcxNDUzCg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call park extension details from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "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 Call Park Extension", "operationId": "Delete a Call Park Extension", "description": "Delete the designated Call Park Extension.\n\nCall Park Extension enables a call recipient to park a call to an extension, so someone else within the same Organization can retrieve the parked call by dialing that extension. Call Park Extensions can be added as monitored lines by users' Cisco phones, so users can park and retrieve calls by pressing the associated phone line key.\n\nDeleting a call park extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a call park extension.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "callParkExtensionId", "in": "path", "description": "Delete the call park extension with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNmFlNjI4ZGEtOTg5My00ODYyLWE0YTItM2VmZDIwNDJmODEy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the call park extension from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Park Extension", "operationId": "Update a Call Park Extension", "description": "Update the designated Call Park Extension.\n\nCall Park Extension enables a call recipient to park a call to an extension, so someone else within the same Organization can retrieve the parked call by dialing that extension. Call Park Extensions can be added as monitored lines by users' Cisco phones, so users can park and retrieve calls by pressing the associated phone line key.\n\nUpdating a call park extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call park extension exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "callParkExtensionId", "in": "path", "description": "Update a call park extension with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNmFlNjI4ZGEtOTg5My00ODYyLWE0YTItM2VmZDIwNDJmODEy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update a call park extension from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Illinois, Call Park Extension", "extension": "407721" }, "schema": { "$ref": "#/components/schemas/ModifyCallExtensionParkObject" } } } } } }, "/telephony/config/locations/{locationId}/callParkExtensions": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created call park extension." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMzI4YjZlOGMtYjM0OC00ZDI1LWJlZjctZTZiMjRiN2Q0NGU5" } } } }, "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 Call Park Extension", "operationId": "Create a Call Park Extension", "description": "Create new Call Park Extensions for the given location.\n\nCall Park Extension enables a call recipient to park a call to an extension, so someone else within the same Organization can retrieve the parked call by dialing that extension. Call Park Extensions can be added as monitored lines by users' Cisco phones, so users can park and retrieve calls by pressing the associated phone line key.\n\nCreating a call park extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Park" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the call park extension for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the call park extension for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Illinois, Call Park Extension", "extension": "407721" }, "schema": { "$ref": "#/components/schemas/PostCallParkExtensionObject" } } } } } }, "/telephony/config/locations/{locationId}/callPickups": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "callPickups" ], "properties": { "callPickups": { "type": "array", "items": { "$ref": "#/components/schemas/ListCallPickupObject" }, "description": "Array of call pickups." } } }, "example": { "callPickups": [ { "name": "North Alaska-Group", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1" }, { "name": "South Alaska-Group", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Call Pickups", "operationId": "Read the List of Call Pickups", "description": "List all Call Pickups for the organization.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Pickup ID will change upon modification of the Call Pickup name.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of call pickups for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List call pickups for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of call pickups returned to this maximum count. Default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching call pickups. Default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list of call pickups by name, either ASC or DSC. Default is ASC.", "example": "ASC", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return the list of call pickups that contains the given name. The maximum length is 80.", "example": "Alaska-Group", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created call pickup." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0" } } } }, "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 Call Pickup", "operationId": "Create a Call Pickup", "description": "Create new Call Pickups for the given location.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nCreating a call pickup requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Pickup ID will change upon modification of the Call Pickup name.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the call pickup for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the call pickup for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "South Alaska-Group", "notificationType": "AUDIO_ONLY", "notificationDelayTimerSeconds": 20, "agents": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "Y2lzY29zcGFyazovL3VzL1BMQUNFLzU1YjUyZThhLWZmOWYtMTFlYi05ZjRhLTAzZDY1NzdhYzg1Yg", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85ODFlNTQ0Yy0xOGI0LTQ2MzItYmFkZi1iYWMwZjFkOGJkYWY=" ] }, "schema": { "$ref": "#/components/schemas/PostCallPickupObject" } } } } } }, "/telephony/config/locations/{locationId}/callPickups/{callPickupId}": { "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 Call Pickup", "operationId": "Delete a Call Pickup", "description": "Delete the designated Call Pickup.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nDeleting a call pickup requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Pickup ID will change upon modification of the Call Pickup name.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a call pickup.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "callPickupId", "in": "path", "description": "Delete the call pickup with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the call pickup from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallPickupObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0", "name": "South Alaska-Group", "notificationType": "AUDIO_ONLY", "notificationDelayTimerSeconds": 20, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "firstName": "John", "lastName": "Brown", "displayName": "johnBrown", "type": "PEOPLE", "email": "john.brown@example.com", "numbers": [ { "external": "+19075552859", "extension": "8080", "routingPrefix": "1234", "esn": "12348080", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ", "firstName": "Christian", "lastName": "Smith", "displayName": "ChristianS", "type": "PEOPLE", "email": "christians@example.com", "numbers": [ { "external": "+19075553859", "extension": "8081", "routingPrefix": "1234", "esn": "12348080", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "firstName": "Alice", "lastName": "Smith", "displayName": "AliceSmith", "type": "VIRTUAL_LINE", "numbers": [ { "external": "+19075552859", "extension": "8083", "routingPrefix": "1234", "esn": "12348080", "primary": "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 Details for a Call Pickup", "operationId": "Get Details for a Call Pickup", "description": "Retrieve the designated Call Pickup details.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nRetrieving call pickup details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Pickup ID will change upon modification of the Call Pickup name.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call pickup in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "callPickupId", "in": "path", "description": "Retrieve settings for a call pickup with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call pickup settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the target call pickup." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0" } } } }, "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 Call Pickup", "operationId": "Update a Call Pickup", "description": "Update the designated Call Pickup.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nUpdating a call pickup requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Pickup ID will change upon modification of the Call Pickup name.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call pickup exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "callPickupId", "in": "path", "description": "Update settings for a call pickup with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNEST0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call pickup settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "South Alaska-Group", "notificationType": "AUDIO_ONLY", "notificationDelayTimerSeconds": 20, "agents": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YTUwMDk1YS1mZjlmLTExZWItODA2NS04ZjhkOWIxNmIzOTQ", "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85ODFlNTQ0Yy0xOGI0LTQ2MzItYmFkZi1iYWMwZjFkOGJkYWY=" ] }, "schema": { "$ref": "#/components/schemas/ModifyCallPickupObject" } } } } } }, "/telephony/config/locations/{locationId}/callPickups/availableUsers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineCallPickupObject" }, "description": "Array of agents." } } }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ", "lastName": "Ronnie", "firstName": "Coleman", "displayName": "RColeman", "type": "PEOPLE", "email": "r.coleman@mailinator.com", "numbers": [ { "external": "+19075552334", "extension": "8083", "routingPrefix": "1234", "esn": "12348083", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "lastName": "Owen", "firstName": "Wilson", "displayName": "OWilson", "type": "PEOPLE", "email": "o.wilson@mailinator.com", "numbers": [ { "external": "+19075555859", "extension": "8084", "routingPrefix": "1234", "esn": "12348084", "primary": "true" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "firstName": "Alice", "lastName": "Smith", "displayName": "AliceSmith", "type": "VIRTUAL_LINE", "numbers": [ { "external": "+19075552859", "extension": "8086", "routingPrefix": "1234", "esn": "12348086", "primary": "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 available agents from Call Pickups", "operationId": "Get available agents from Call Pickups", "description": "Retrieve available agents from call pickups for a given location.\n\nCall Pickup enables a user (agent) to answer any ringing line within their pickup group.\n\nRetrieving available agents from call pickups requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Pickup" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the available agents for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Return the available agents for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "callPickupName", "in": "query", "description": "Only return available agents from call pickups with the matching name.", "example": "North Alaska-Pickup", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of available agents returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching available agents.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return available agents with the matching name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return available agents with the matching primary number.", "example": "9075552334", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the available agents according to the designated fields. Up to three vertical bar (|) separated sort order fields may be specified. Available sort fields: `fname`, `lname`, `extension`, `number`.", "example": "lname|fname|number", "schema": { "type": "string" } } ] } }, "/telephony/config/queues": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "queues" ], "properties": { "queues": { "type": "array", "items": { "$ref": "#/components/schemas/ListCallQueueEssentialsObject" }, "description": "Array of call queues." } } }, "example": { "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTg0Y2Y0Y2QtZWVhNy00YzhjLTgzZWUtNjdkODhmYzZlYWE1", "name": "5714328359", "hasCxEssentials": "true", "locationName": "WXCSIVDKCPAPIC4S1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "enabled": true, "extension": "8000", "department": { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "name": "HR" } }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc0", "name": "bram", "hasCxEssentials": "true", "locationName": "Brampton", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzQwMjgw", "phoneNumber": "+15558675309", "enabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Call Queues with Customer Assist", "operationId": "listCallQueues", "description": "List all Call Queues for the organization.\n\nCall queues temporarily hold calls in the cloud, when all agents\nassigned to receive calls from the queue are unavailable. Queued calls are routed to \nan available agent, when not on an active call. Each call queue is assigned a lead number, which is a telephone\nnumber that external callers can dial to reach the users assigned to the call queue.\nCall queues are also assigned an internal extension, which can be dialed\ninternally to reach the users assigned to the call queue.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Returns the list of call queues in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Returns the list of call queues in this location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Returns only the call queues matching the given name.", "example": "Customer Support", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Returns only the call queues matching the given primary phone number or extension.", "example": "+15558675309", "schema": { "type": "string" } }, { "name": "departmentId", "in": "query", "description": "Returns only call queues matching the given department ID.", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "schema": { "type": "string" } }, { "name": "departmentName", "in": "query", "description": "Returns only call queues matching the given department name.", "example": "HR", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of call queues with Customer Assist license when `true`, otherwise returns the list of Customer Experience Basic call queues.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/locations/{locationId}/queues": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created call queue." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Call Queue with Customer Assist", "operationId": "createCallQueue", "description": "Create new Call Queues for the given location.\n\nCall queues temporarily hold calls in the cloud, when all agents assigned to receive calls from the queue are unavailable.\nQueued calls are routed to an available agent, when not on an active call. Each call queue is assigned a lead number, which is a telephone\nnumber that external callers can dial to reach the users assigned to the call queue. Call queues are also assigned an internal extension,\nwhich can be dialed internally to reach the users assigned to the call queue.\n\nCreating a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "The location ID where the call queue needs to be created.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization ID where the call queue needs to be created.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Creates a Customer Assist call queue, when `true`. This requires Customer Assist licensed agents.", "example": "true", "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "CallQueue-1", "phoneNumber": "+12225555309", "extension": "5309", "firstName": "Hakim", "lastName": "Smith", "callPolicies": { "policy": "CIRCULAR", "routingType": "SKILL_BASED", "waitingEnabled": false, "noAnswer": { "nextAgentEnabled": false, "nextAgentRings": 5, "forwardEnabled": false, "numberOfRings": 0, "destinationVoicemailEnabled": false }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": false } }, "queueSettings": { "queueSize": 10, "callOfferToneEnabled": true, "resetCallStatisticsEnabled": true, "overflow": { "action": "PERFORM_BUSY_TREATMENT", "overflowAfterWaitEnabled": false, "overflowAfterWaitTime": 30, "playOverflowGreetingEnabled": false, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] }, "welcomeMessage": { "enabled": true, "alwaysEnabled": false, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] }, "waitMessage": { "enabled": true, "waitMode": "POSITION", "handlingTime": 100, "defaultHandlingTime": 100, "queuePosition": 100, "highVolumeMessageEnabled": false, "estimatedWaitingTime": 600, "playUpdatedEstimatedWaitMessage": true }, "comfortMessage": { "enabled": true, "timeBetweenMessages": 10, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] }, "mohMessage": { "normalSource": { "enabled": true, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] }, "alternateSource": { "enabled": true, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] } }, "comfortMessageBypass": { "enabled": true, "callWaitingAgeThreshold": 30, "greeting": "CUSTOM", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] }, "whisperMessage": { "enabled": true, "greeting": "DEFAULT", "audioAnnouncementFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "announcement.wav", "mediaFileType": "WAV", "level": "LOCATION" } ] } }, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MGU3MjYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc1MWQ", "skillLevel": 7 }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzgzYjQ0OTIyLWZlOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "skillLevel": 1 } ], "enabled": true, "phoneNumberForOutgoingCallsEnabled": true, "callingLineIdPolicy": "DIRECT_LINE", "callingLineIdPhoneNumber": "+12072342368", "allowAgentJoinEnabled": true, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/CreateCallQueueEssentialsObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}": { "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 Call Queue", "operationId": "deleteCallQueue", "description": "Delete the designated Call Queue.\n\nCall queues temporarily hold calls in the cloud when all agents, which\ncan be users or agents, assigned to receive calls from the queue are\nunavailable. Queued calls are routed to an available agent when not on an\nactive call. Each call queue is assigned a Lead Number, which is a telephone\nnumber outside callers can dial to reach users assigned to the call queue.\nCall queues are also assigned an internal extension, which can be dialed\ninternally to reach users assigned to the call queue.\n\nDeleting a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Delete the call queue with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the call queue from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueEssentialsObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTU1MzY4Y2QtZDg5Mi00YzFlLTk0YjYtNzdjNjRiYWQ3NWMx", "name": "CallQueue-1", "hasCxEssentials": true, "enabled": true, "language": "English", "languageCode": "en-US", "firstName": "Hakim", "lastName": "Smith", "timeZone": "Central/Chicago", "alternateNumberSettings": { "distinctiveRingEnabled": true, "alternateNumbers": [ { "phoneNumber": "9725554726", "ringPattern": "NORMAL" }, { "phoneNumber": "9725554729", "ringPattern": "NORMAL" } ] }, "callPolicies": { "policy": "REGULAR", "callBounce": { "callBounceEnabled": true, "callBounceMaxRings": 8, "agentUnavailableEnabled": false, "alertAgentEnabled": false, "alertAgentMaxSeconds": 30, "callBounceOnHoldEnabled": false, "callBounceOnHoldMaxSeconds": 60 }, "distinctiveRing": { "enabled": false, "ringPattern": "NORMAL" } }, "queueSettings": { "queueSize": 10, "callOfferToneEnabled": false, "resetCallStatisticsEnabled": false, "overflow": { "action": "PERFORM_BUSY_TREATMENT", "sendToVoicemail": false, "overflowAfterWaitEnabled": false, "overflowAfterWaitTime": 30, "playOverflowGreetingEnabled": false, "greeting": "DEFAULT", "isTransferNumberSet": false }, "waitMessage": { "enabled": false, "waitMode": "TIME", "handlingTime": 100, "queuePosition": 100, "highVolumeMessageEnabled": true, "defaultHandlingTime": 5 }, "welcomeMessage": { "enabled": true, "alwaysEnabled": false, "greeting": "DEFAULT" }, "comfortMessage": { "enabled": true, "timeBetweenMessages": 10, "greeting": "DEFAULT" }, "mohMessage": { "normalSource": { "enabled": false, "greeting": "DEFAULT" }, "alternateSource": { "enabled": false, "greeting": "DEFAULT" } } }, "allowCallWaitingForAgentsEnabled": false, "agents": [], "department": { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "name": "HR" }, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "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 Details for a Call Queue with Customer Assist", "operationId": "getCallQueueWithCustomerAssist", "description": "Retrieve Call Queue details.\n\nCall queues temporarily hold calls in the cloud, when all agents assigned to receive calls from the queue are unavailable.\nQueued calls are routed to an available agent, when not on an active call. Each call queue is assigned a lead number, which is a telephone\nnumber that external callers can dial to reach the users assigned to the call queue. Call queues are also assigned an internal extension,\nwhich can be dialed internally to reach the users assigned to the call queue.\n\nRetrieving call queue details requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieves the details of a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieves the details of call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTU1MzY4Y2QtZDg5Mi00YzFlLTk0YjYtNzdjNjRiYWQ3NWMx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieves the details of a call queue in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Must be set to `true`, to view the details of a call queue with Customer Assist license. This can otherwise be ommited or set to `false`.", "example": "true", "schema": { "type": "boolean" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Queue", "operationId": "updateCallQueue", "description": "Update the designated Call Queue.\n\nCall queues temporarily hold calls in the cloud when all agents, which\ncan be users or agents, assigned to receive calls from the queue are\nunavailable. Queued calls are routed to an available agent when not on an\nactive call. Each call queue is assigned a Lead Number, which is a telephone\nnumber outside callers can dial to reach users assigned to the call queue.\nCall queues are also assigned an internal extension, which can be dialed\ninternally to reach users assigned to the call queue.\n\nUpdating a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update setting for the call queue with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModifyCallQueueObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/announcements": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "announcements" ], "properties": { "announcements": { "type": "array", "items": { "$ref": "#/components/schemas/GetAnnouncementFileInfo" }, "description": "Array of announcements for this call queue." } } }, "example": { "announcements": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9kODc5YWZlZC1jNTRhLTQyOTctOGY0Mi02ZmEyMDJjN2E1M2E", "fileName": "Greeting-1.wav", "fileSize": "33456", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "Greeting-2.wav", "fileSize": "32356", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "Greeting-3.wav", "fileSize": "31237", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": 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": "Read the List of Call Queue Announcement Files", "operationId": "listCallQueueAnnouncementFiles", "description": "List file info for all Call Queue announcement files associated with this Call Queue.\n\nCall Queue announcement files contain messages and music that callers hear while waiting in the queue. A call queue can be configured to play whatever subset of these announcement files is desired.\n\nRetrieving this list of files requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\nNote that uploading of announcement files via API is not currently supported, but is available via Webex Control Hub.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve anouncement files for the call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve announcement files for a call queue from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/queues/{queueId}/announcements/{fileName}": { "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 Call Queue Announcement File", "operationId": "deleteCallQueueAnnouncementFile", "description": "Delete an announcement file for the designated Call Queue.\n\nCall Queue announcement files contain messages and music that callers hear while waiting in the queue. A call queue can be configured to play whatever subset of these announcement files is desired.\n\nDeleting an announcement file for a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete an announcement for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Delete an announcement for the call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "fileName", "in": "path", "description": "", "required": true, "example": "Greeting-2.wav", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete call queue announcement from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/queues/{queueId}/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardSettingsGet" } } } }, "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 Call Forwarding Settings for a Call Queue", "operationId": "getCallQueueCallForwardingSettings", "description": "Retrieve Call Forwarding settings for the specified Call Queue, including the list of call forwarding rules.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nRetrieving call forwarding settings for a call queue requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve the call forwarding settings for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNDI0OTlmZjUtYWI1ZC00NzU4LTliMWItZjg3MTVhM2UwNmVh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Forwarding Settings for a Call Queue", "operationId": "updateCallQueueCallForwardingSettings", "description": "Update Call Forwarding settings for the designated Call Queue.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nUpdating call forwarding settings for a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update call forwarding settings for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNDI0OTlmZjUtYWI1ZC00NzU4LTliMWItZjg3MTVhM2UwNmVh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "" }, "selective": { "enabled": true, "destination": "35556", "destinationVoicemailEnabled": true }, "rules": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlpVW1WdVlXMWw", "enabled": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WMmhsYmxSdg", "enabled": false } ], "operatingModes": { "enabled": true, "modes": [ { "normalOperationEnabled": true, "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "forwardTo": { "selection": "FORWARD_TO_SPECIFIED_NUMBER", "destination": "00000", "destinationVoicemailEnabled": false } } ] } } }, "schema": { "$ref": "#/components/schemas/ModifyCallForwardingObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/callForwarding/selectiveRules": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created call queue." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Selective Call Forwarding Rule for a Call Queue", "operationId": "createCallQueueSelectiveCallForwardingRule", "description": "Create a Selective Call Forwarding Rule for the designated Call Queue.\n\nA selective call forwarding rule for a call queue allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the call queue's call forwarding settings.\n\nCreating a selective call forwarding rule for a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which the call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Create the rule for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the call queue rule for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "New Selective Rule", "holidaySchedule": "HolidayScheduleOne", "businessSchedule": "BusinessScheduleTwo", "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] }, "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "enabled": true }, "schema": { "$ref": "#/components/schemas/CreateForwardingRuleObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/callForwarding/selectiveRules/{ruleId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetForwardingRuleObject" }, "example": { "name": "My Rule", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WMmhsYmxSdg", "enabled": true, "businessSchedule": "BusiSched1", "holidaySchedule": "HolSched1", "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] } } } } }, "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 Selective Call Forwarding Rule for a Call Queue", "operationId": "getCallQueueSelectiveCallForwardingRule", "description": "Retrieve a Selective Call Forwarding Rule's settings for the designated Call Queue.\n\nA selective call forwarding rule for a call queue allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the call queue's call forwarding settings.\n\nRetrieving a selective call forwarding rule's settings for a call queue requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which to call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve setting for a rule for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Call queue rule you are retrieving settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "New ID for the modified rule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Selective Call Forwarding Rule for a Call Queue", "operationId": "updateCallQueueSelectiveCallForwardingRule", "description": "Update a Selective Call Forwarding Rule's settings for the designated Call Queue.\n\nA selective call forwarding rule for a call queue allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the call queue's call forwarding settings.\n\nUpdating a selective call forwarding rule's settings for a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update settings for a rule for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Call queue rule you are updating settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "My Rule", "enabled": true, "businessSchedule": "BusiSched1", "holidaySchedule": "HolSched1", "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] } }, "schema": { "$ref": "#/components/schemas/ModifyForwardingRuleObject" } } } } }, "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 Selective Call Forwarding Rule for a Call Queue", "operationId": "deleteCallQueueSelectiveCallForwardingRule", "description": "Delete a Selective Call Forwarding Rule for the designated Call Queue.\n\nA selective call forwarding rule for a call queue allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the call queue's call forwarding settings.\n\nDeleting a selective call forwarding rule for a call queue requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Delete the rule for this call queue.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Call queue rule you are deleting.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete call queue rule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/queues/{queueId}/holidayService": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueHolidayObject" }, "example": { "holidayServiceEnabled": true, "action": "BUSY", "holidayScheduleLevel": "LOCATION", "holidayScheduleName": "2022 Holidays Period", "transferPhoneNumber": "1234", "playAnnouncementBeforeEnabled": true, "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false } ], "holidaySchedules": [ { "scheduleName": "2022 All Holidays", "scheduleLevel": "LOCATION" }, { "scheduleName": "2022 Holiday Schedule", "scheduleLevel": "LOCATION" }, { "scheduleName": "2022 Holidays Period", "scheduleLevel": "LOCATION" } ] } } } }, "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 Details for a Call Queue Holiday Service", "operationId": "getCallQueueHolidayService", "description": "Retrieve Call Queue Holiday Service details.\n\nConfigure the call queue to route calls differently during the holidays.\n\nRetrieving call queue holiday service details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve settings for the call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Queue Holiday Service", "operationId": "updateCallQueueHolidayService", "description": "Update the designated Call Queue Holiday Service.\n\nConfigure the call queue to route calls differently during the holidays.\n\nUpdating a call queue holiday service requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update setting for the call queue with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "holidayServiceEnabled": true, "action": "BUSY", "holidayScheduleLevel": "LOCATION", "holidayScheduleName": "2022 Holidays Period", "transferPhoneNumber": "1234", "playAnnouncementBeforeEnabled": true, "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } ] }, "schema": { "$ref": "#/components/schemas/ModifyCallQueueHolidayObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/nightService": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueNightServiceObject" }, "example": { "nightServiceEnabled": true, "action": "TRANSFER", "transferPhoneNumber": "1234", "playAnnouncementBeforeEnabled": true, "announcementMode": "NORMAL", "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false } ], "businessHourSchedules": [ { "scheduleName": "Working Hour", "scheduleLevel": "LOCATION" } ], "businessHoursLevel": "LOCATION", "businessHoursName": "Working Hour", "forceNightServiceEnabled": true, "manualAudioMessageSelection": "DEFAULT", "manualAudioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": 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 Details for a Call Queue Night Service", "operationId": "getCallQueueNightService", "description": "Retrieve Call Queue Night service details.\n\nConfigure the call queue to route calls differently during the hours when the queue is not in service. This is\ndetermined by a schedule that defines the business hours of the queue.\n\nRetrieving call queue details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve settings for the call queue night service with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue night service settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Queue Night Service", "operationId": "updateCallQueueNightService", "description": "Update Call Queue Night Service details.\n\nConfigure the call queue to route calls differently during the hours when the queue is not in service. This is\ndetermined by a schedule that defines the business hours of the queue.\n\nUpdating call queue night service details requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update settings for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update settings for the call queue night service with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue night service settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "nightServiceEnabled": true, "action": "TRANSFER", "transferPhoneNumber": "1234", "playAnnouncementBeforeEnabled": true, "announcementMode": "NORMAL", "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } ], "businessHourSchedules": [ { "scheduleName": "Working Hour", "scheduleLevel": "LOCATION" } ], "businessHoursLevel": "LOCATION", "businessHoursName": "Working Hour", "forceNightServiceEnabled": true, "manualAudioMessageSelection": "DEFAULT", "manualAudioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } ] }, "schema": { "$ref": "#/components/schemas/PatchCallQueueNightServiceObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/forcedForward": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueForcedForwardObject" }, "example": { "forcedForwardEnabled": true, "transferPhoneNumber": "+911235557890", "playAnnouncementBeforeEnabled": true, "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": 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 Details for a Call Queue Forced Forward", "operationId": "getCallQueueForcedForward", "description": "Retrieve Call Queue policy Forced Forward details.\n\nThis policy allows calls to be temporarily diverted to a configured destination.\n\nRetrieving call queue Forced Forward details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve settings for the call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Queue Forced Forward Service", "operationId": "updateCallQueueForcedForward", "description": "Update the designated Forced Forward Service.\n\nIf the option is enabled, then incoming calls to the queue are forwarded to the configured destination. Calls that are already in the queue remain queued.\nThe policy can be configured to play an announcement prior to proceeding with the forward.\n\nUpdating a call queue Forced Forward service requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update setting for the call queue with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "forcedForwardEnabled": true, "transferPhoneNumber": "+911235557890", "playAnnouncementBeforeEnabled": true, "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } ] }, "schema": { "$ref": "#/components/schemas/ModifyCallQueueForcedForwardObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/strandedCalls": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueStrandedCallsObject" }, "example": { "action": "NONE", "transferPhoneNumber": "+911235557890", "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION", "isTextToSpeech": false }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION", "isTextToSpeech": 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 Details for a Call Queue Stranded Calls", "operationId": "getCallQueueStrandedCalls", "description": "Allow admin to view default/configured Stranded Calls settings.\n\nStranded-All agents logoff Policy: If the last agent staffing a queue “unjoins” the queue or signs out, then all calls in the queue become stranded.\nStranded-Unavailable Policy: This policy allows for the configuration of the processing of calls that are in a staffed queue when all agents are unavailable.\n\nRetrieving call queue Stranded Calls details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a call queue in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Retrieve settings for the call queue with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Queue Stranded Calls Service", "operationId": "updateCallQueueStrandedCalls", "description": "Update the designated Call Stranded Calls Service.\n\nAllow admin to modify configured Stranded Calls settings.\n\nUpdating a call queue stranded calls requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this call queue exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Update setting for the call queue with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call queue settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "action": "NONE", "transferPhoneNumber": "+911235557890", "audioMessageSelection": "DEFAULT", "audioFiles": [ { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFoNmc", "fileName": "AUDIO_FILE_1.wav", "mediaFileType": "WAV", "level": "LOCATION" }, { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFrMWY", "fileName": "AUDIO_FILE_3.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } ] }, "schema": { "$ref": "#/components/schemas/ModifyCallQueueStrandedCallsObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallQueuePrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Call Queue Primary Available Phone Numbers", "operationId": "getCallQueuePrimaryAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the call queue's primary phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/queues/alternate/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallQueueAlternateAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Call Queue Alternate Available Phone Numbers", "operationId": "getCallQueueAlternateAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the call queue's alternate phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/queues/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallQueueCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Call Queue Call Forward Available Phone Numbers", "operationId": "getCallQueueCallForwardAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the call queue's call forward number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/queues/agents/availableAgents": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableAgentListGetObject" }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "lastName": "Brown", "firstName": "John", "displayName": "John Brown", "type": "PEOPLE", "email": "john.brown@example.com", "hasCxEssentials": false, "phoneNumbers": [ { "external": "+19075552859", "extension": "8080" } ] } ] } } } }, "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 Call Queue Available Agents", "operationId": "getCallQueueAvailableAgents", "description": "List all available users, workspaces, or virtual lines that can be assigned as call queue agents.\n\nAvailable agents are users (excluding users with Webex Calling Standard license), workspaces, or virtual lines that can be assigned to a call queue. \nCalls from the call queue are routed to assigned agents based on configuration. \nAn agent can be assigned to one or more call queues and can be managed by supervisors.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "query", "description": "The location ID of the call queue. Temporary mandatory query parameter, used for performance reasons only and not a filter.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List available agents for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Search based on name (user first and last name combination).", "example": "Customer Support", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search based on number or extension.", "example": "+15558675309", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Order the available agents according to the designated fields. Up to three comma-separated sort order fields may be specified. Available sort fields are: `userId`, `fname`, `firstname`, `lname`, `lastname`, `dn`, and `extension`. Sort order can be added together with each field using a hyphen, `-`. Available sort orders are: `asc`, and `desc`.", "example": "lname-asc,fname-desc,extension", "schema": { "type": "string" } } ] } }, "/telephony/config/supervisors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "supervisors" ], "properties": { "supervisors": { "type": "array", "items": { "$ref": "#/components/schemas/ListSupervisorObject" }, "description": "Array of supervisors." } } }, "example": { "supervisors": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81OGVkZTIwNi0yNTM5LTQ1ZjQtODg4Ny05M2E3ZWIwZWI3ZDI", "firstName": "John", "lastName": "Smith", "phoneNumber": "+19845550186", "extension": "12554", "routingPrefix": "34", "esn": "3412554", "agentCount": 2, "hasCxEssentials": true }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mOWUyZjE5Zi1mMDYwLTQ1MjktYTA4OC05YmUzM2RiOTU3MDE", "firstName": "Tom", "lastName": "Addison", "phoneNumber": "+19845550185", "extension": "5160", "routingPrefix": "34543", "esn": "345435160", "agentCount": 1, "hasCxEssentials": 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 List of Supervisors with Customer Assist", "operationId": "listCallQueueSupervisors", "description": "Get list of supervisors for an organization.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nRequires a full, location, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List the supervisors in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return the supervisors that match the given name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return the supervisors that match the given phone number, extension, or ESN.", "example": "+19845550186", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort results alphabetically by supervisor name, in ascending or descending order.", "example": "firstName|lastName|firstName-desc|lastName-desc", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of supervisors with Customer Assist license, when `true`. Otherwise returns the list of supervisors with Customer Experience Basic license.", "example": "true", "schema": { "type": "boolean" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": {} }, "206": { "description": "Partial Content", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "supervisorAgentStatus" ], "properties": { "supervisorAgentStatus": { "type": "array", "items": { "$ref": "#/components/schemas/ListSupervisorAgentStatusObject" }, "description": "Array of supervisor agents status." } } }, "example": { "supervisorAgentStatus": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "status": "NOT_AVAILABLE", "message": "[Error 6612] Agent 9508978d-9bad-4faa-a9c4-09d85d8fdce6 is not 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": "Create a Supervisor with Customer Assist", "operationId": "createCallQueueSupervisor", "description": "Create a new supervisor. The supervisor must be created with at least one agent.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nThis operation requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "The organization ID where the supervisor needs to be created.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Creates a Customer Assist queue supervisor, when `true`. Customer Assist queue supervisors must have a Customer Assist license.", "example": "true", "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTFlNWQ5NS0zODQyLTRmOGItOGZjNy00NGY5YjA0N2MyZTc", "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzE3NzczMWRiLWE1YzEtNGI2MC05ZTMwLTNhM2MxMGFiM2IxMQ" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9hM2NjOTVhNC0zNzBjLTQyZmQtYWYzOS00MDE0MmE1YjMzMWU" } ] }, "schema": { "$ref": "#/components/schemas/CreateSupervisorObject" } } } } }, "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 Bulk Supervisors", "operationId": "deleteBulkCallQueueSupervisors", "description": "Deletes supervisors in bulk from an organization.\n\nSupervisors are users who manage agents and who perform functions including monitoring, coaching, and more.\n\nRequires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Delete supervisors in bulk for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "supervisorIds": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80Y2I1M2ZmMy01NWViLTQ2MzYtYTE4ZC05NWVjZmFhM2E4NmY", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNzY2ZDNjNC0xZTg1LTQ4YzgtYTFkZi1mMWUzYTAyMDg1MWE" ], "deleteAll": false }, "schema": { "$ref": "#/components/schemas/BulkSupervisorsDelete" } } } } } }, "/telephony/config/supervisors/{supervisorId}": { "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 Supervisor", "operationId": "deleteCallQueueSupervisor", "description": "Deletes the supervisor from an organization.\n\nSupervisors are users who manage agents and who perform functions including monitoring, coaching, and more.\n\nRequires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "supervisorId", "in": "path", "description": "Delete the specified supervisor.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lNWI2NjIyMi1jZTE2LTQ0ZTAtOGY1MS05NzU2ZGE0MDhiZWU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the supervisor in the specified organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "id": { "type": "string", "description": "unique identifier of the supervisor" }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/ListSupervisorAgentObject" }, "description": "Array of agents assigned to a specific supervisor." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JlNTgxNi01YTIyLTQ5MzgtOWNmMy0wODIwODhiNDkxOGU", "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNzViMGE4Mi1jNzM5LTRlMDktYWQ5NC0zNTc2YTBlMjYwZDA", "lastName": ".", "firstName": "Barn61", "extension": "1060", "esn": "1060" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "lastName": "user", "firstName": "test", "extension": "892827", "esn": "892827" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iZjE5YWQzMC00NzAyLTQ3NWMtOTg0Ni1lM2M0M2Y1NGFlYzk", "lastName": ".", "firstName": "Test9", "routingPrefix": "34543", "phoneNumber": "+19729989982" } ] } } } }, "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 Supervisor Detail with Customer Assist", "operationId": "getCallQueueSupervisor", "description": "Get details of a specific supervisor, which includes the agents associated agents with the supervisor, in an organization.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nThis operation requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "supervisorId", "in": "path", "description": "List the agents assigned to this supervisor.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lNWI2NjIyMi1jZTE2LTQ0ZTAtOGY1MS05NzU2ZGE0MDhiZWU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List the agents assigned to a supervisor in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return the agents that match the given name.", "example": "John", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return agents that match the given phone number, extension, or ESN.", "example": "+19845550186", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort results alphabetically by supervisor name, in ascending or descending order.", "example": "firstName\\lastName\\firstName-desc\\lastName-desc", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Must be set to `true`, to view the details of a supervisor with Customer Assist license. This can otherwise be ommited or set to `false`.", "example": "true", "schema": { "type": "boolean" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "206": { "description": "Partial Content", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "supervisorAgentStatus" ], "properties": { "supervisorAgentStatus": { "type": "array", "items": { "$ref": "#/components/schemas/ListSupervisorAgentStatusObject" }, "description": "Array of supervisor agents status." } } }, "example": { "supervisorAgentStatus": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "status": "DUPLICATE", "message": "[Error 6612] Agent 9508978d-9bad-4faa-a9c4-09d85d8fdce6 is already assigned to the supervisor." } ] } } } }, "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": "Assign or Unassign Agents to Supervisor with Customer Assist", "operationId": "updateCallQueueSupervisorAgents", "description": "Assign or unassign agents to the supervisor for an organization.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nThis operation requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "supervisorId", "in": "path", "description": "Identifier of the supervisor to be updated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lNWI2NjIyMi1jZTE2LTQ0ZTAtOGY1MS05NzU2ZGE0MDhiZWU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Assign or unassign agents to a supervisor in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Must be set to `true` to modify a supervisor with Customer Assist license. This can otherwise be ommited or set to `false`.", "example": "true", "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "action": "ADD" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYzIyMTRlNi0zYzdlLTRkZDAtOTc3Yy0zNzRlOWE2ZDk4MWM", "action": "ADD" } ] }, "schema": { "$ref": "#/components/schemas/CreateAgentObject" } } } } } }, "/telephony/config/supervisors/availableSupervisors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "supervisors" ], "properties": { "supervisors": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableSupervisorsListObject" }, "description": "Array of available supervisors." } } }, "example": { "supervisors": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YzVlODRhMS0wZmEwLTQzNDAtODVkZC1mMzM1ZGQ4MTkxMmI", "lastName": "Adam", "firstName": "Sandler", "displayName": "Adam Sandler", "extension": "0200", "routingPrefix": "34543", "esn": "345430200", "phoneNumber": "+19845550200", "hasCxEssentials": true }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZmYyYTkxNi1hYWRhLTQwZTYtOTkzMC0xZmFmYmNiMzQwODU", "lastName": "Steven", "firstName": "Robert", "displayName": "Steven Robert", "extension": "9906", "routingPrefix": "34", "esn": "349906", "hasCxEssentials": 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 Available Supervisors with Customer Assist", "operationId": "listAvailableCallQueueSupervisors", "description": "Get list of available supervisors for an organization.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nThis operation requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List the available supervisors in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return the supervisors that match the given name.", "example": "Adam", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return the supervisors that match the given phone number, extension, or ESN.", "example": "+19845550186", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort results alphabetically by supervisor name, in ascending or descending order.", "example": "firstName|lastName|firstName-desc|lastName-desc", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of available supervisors with Customer Assist license, when `true`. When ommited or set to 'false', will return the list of available supervisors with Customer Experience Basic license.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/supervisors/availableAgents": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableAgentListObject" }, "description": "Array of agents assigned to a specific supervisor." } } }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jZGUzZWU0YS02ZDI5LTQ3OGItOGU5MC00MmE3YWFlNWIzNTE", "lastName": "CP-WS", "firstName": "CP-WS-1", "displayName": "CP-WS-1 .", "extension": "1248", "esn": "1248", "type": "PLACE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hZWRlNmE0OS00NmNkLTQ4NWQtODQyZC1kY2ZmNTg4ZmQyMTU", "lastName": "CP-WS", "firstName": "CP-WS-6", "displayName": "CP-WS-6 .", "extension": "7539", "esn": "7539", "routingPrefix": "34543", "phoneNumber": "+19729989982", "type": "PEOPLE" } ] } } } }, "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 Available Agents with Customer Assist", "operationId": "listAvailableCallQueueAgents", "description": "Get list of available agents for an organization.\n\nAgents in a call queue can be associated with a supervisor who can silently monitor, coach, barge in or to take over calls that their assigned agents are currently handling.\n\nThis operation requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List of available agents in a supervisor's list for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Returns only the agents that match the given name.", "example": "Adam", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Returns only the agents that match the phone number, extension, or ESN.", "example": "+19845550186", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort results alphabetically by supervisor name, in ascending or descending order.", "example": "firstName|lastName|firstName-desc|lastName-desc", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of available agents with Customer Assist license, when `true`. When ommited or set to `false`, will return the list of available agents with Customer Experience Basic license.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/queues/agents": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/ListCallQueueAgentObject" }, "description": "Array of call queue agents." } } }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81NzJjNWMwZS1jMDY4LTQ0NmItOWM0Ny04MjYwYTIzZTY0NmI", "firstName": "Lobby", "lastName": ".", "phoneNumber": "+19458880334", "routingPrefix": "8002", "queueCount": 1, "locationCount": 1, "joinCount": 1, "unjoinCount": 0, "location": { "name": "Location1", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU5OWM3ZGFkLTEyMGQtNDgyNy05ZmMyLTk4OTUxYTQzNzIzOA" }, "type": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWYxNTg1YS03MWM2LTQyZGEtYmRkNC1iMzYzYzlhYzQwZGI", "firstName": "Quiet Room", "lastName": ".", "phoneNumber": "+19458880338", "routingPrefix": "8003", "queueCount": 1, "locationCount": 1, "joinCount": 1, "unjoinCount": 0, "location": { "name": "Location1", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU5OWM3ZGFkLTEyMGQtNDgyNy05ZmMyLTk4OTUxYTQzNzIzOA" }, "type": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zYjY4Yjg2YS1hMTZiLTRmNzItOTlmZi01ZDlhZjgyZWNmNTE", "firstName": "test_301_person_phone_extnsion", "lastName": "last_name", "phoneNumber": "+14084279811", "extension": "4498", "routingPrefix": "8004", "esn": "4498", "queueCount": 1, "locationCount": 1, "joinCount": 1, "unjoinCount": 0, "location": { "name": "Location2", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVmMDI3OGZlLWU4OGMtNDMzNy04MGViLWRjY2NiM2VlMDU1MA" }, "type": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YjBmMWY2OS0wNWE3LTRkZDUtYTg2OS03Mzg5NjdjNTI2YWI", "firstName": "test_essentials", "lastName": "ES", "extension": "23234", "routingPrefix": "8005", "esn": "23234", "queueCount": 1, "locationCount": 1, "joinCount": 1, "unjoinCount": 0, "location": { "name": "Location1", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU5OWM3ZGFkLTEyMGQtNDgyNy05ZmMyLTk4OTUxYTQzNzIzOA" }, "type": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS84OTEyYTUwNi02ZDU2LTRiMjUtOTNiMC1lZGM5ZDFiYmQwNTU", "firstName": "vl_t401cbn", "lastName": "ecbn_01cbn", "phoneNumber": "+14084269811", "routingPrefix": "8007", "queueCount": 2, "locationCount": 2, "joinCount": 2, "unjoinCount": 0, "location": { "name": "Location1", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU5OWM3ZGFkLTEyMGQtNDgyNy05ZmMyLTk4OTUxYTQzNzIzOA" }, "type": "PEOPLE" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Call Queue Agents with Customer Assist", "operationId": "listCallQueueAgents", "description": "List all Call Queues Agents for the organization.\n\nAgents can be users, workplace or virtual lines assigned to a call queue. Calls from the call queue are routed to agents based on configuration. \nAn agent can be assigned to one or more call queues and can be managed by supervisors.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**Note**: The decoded value of the agent's `id`, and the `type` returned in the response, are always returned as `PEOPLE`, even when the agent is a workspace or virtual line. This will be addressed in a future release.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List call queues agents in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return only the call queue agents in this location.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "queueId", "in": "query", "description": "Only return call queue agents with the matching queue ID.", "example": "``", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Returns only the list of call queue agents that match the given name.", "example": "Customer Support", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Returns only the list of call queue agents that match the given phone number or extension.", "example": "+15558675309", "schema": { "type": "string" } }, { "name": "joinEnabled", "in": "query", "description": "Returns only the list of call queue agents that match the given `joinEnabled` value.", "example": "true", "schema": { "type": "boolean" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of call queues with Customer Assist license when `true`, otherwise returns the list of Customer Experience Basic call queues.", "example": "true", "schema": { "type": "boolean" } }, { "name": "order", "in": "query", "description": "Sort results alphabetically by call queue agent's name, in ascending or descending order.", "example": "firstName|lastName|firstName-desc|lastName-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/queues/agents/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallQueueAgentObject" }, "example": { "agent": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xZmNiMjczZS0wYzdmLTQ1ZGUtYmNlOC0yMWE3YzFlYjVjYmY", "firstName": "Arthur", "lastName": "Murray", "phoneNumber": "+19728881234", "extension": "180", "routingPrefix": "34543", "esn": "34543180", "location": { "name": "RCDN", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw" }, "type": "PEOPLE" }, "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvZjM4NDIxZGYtN2MxOC00NGI1LThlNmQtNDFmZTEyMTFlZDFk", "name": "YU7", "phoneNumber": "+12144184002", "routingPrefix": "34543", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "locationName": "RCDN", "joinEnabled": 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 Details for a Call Queue Agent with Customer Assist", "operationId": "getCallQueueAgent", "description": "Retrieve details of a particular Call queue agent based on the agent ID.\n\nAgents can be users, workplace or virtual lines assigned to a call queue. Calls from the call queue are routed to agents based on configuration. \nAn agent can be assigned to one or more call queues and can be managed by supervisors.\n\nRetrieving a call queue agent's details require a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**Note**: The agent's `type` returned in the response and in the decoded value of the agent's `id`, is always of type `PEOPLE`, even if the agent is a workspace or virtual line. This` will be corrected in a future release.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "id", "in": "path", "description": "Retrieve call queue agents with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTU1MzY4Y2QtZDg5Mi00YzFlLTk0YjYtNzdjNjRiYWQ3NWMx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call queue agents from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Must be set to `true` to view the details of an agent with Customer Assist license. This can otherwise be ommited or set to `false`.", "example": "true", "schema": { "type": "boolean" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "required": true, "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "required": true, "example": "0", "schema": { "type": "number" } } ] } }, "/telephony/config/queues/agents/{id}/settings": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 an Agent's Settings of One or More Call Queues with Customer Assist", "operationId": "updateAgentCallQueueSettings", "description": "Modify an agent's call queue settings for an organization.\n\nCalls from the call queue are routed to agents based on configuration. \nAn agent can be assigned to one or more call queues and can be managed by supervisors.\n\nThis operation requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "id", "in": "path", "description": "Identifier of the agent to be updated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9lNWI2NjIyMi1jZTE2LTQ0ZTAtOGY1MS05NzU2ZGE0MDhiZWU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the settings of an agent in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Must be set to `true` to modify an agent that has Customer Assist license. This can otherwise be ommited or set to `false`.", "example": "true", "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "example": { "settings": [ { "queueId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "joinEnabled": true }, { "queueId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYzIyMTRlNi0zYzdlLTRkZDAtOTc3Yy0zNzRlOWE2ZDk4MWM", "joinEnabled": false } ] }, "schema": { "$ref": "#/components/schemas/ModifyAgentsForCallQueueObject" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/callForwarding/actions/switchMode/invoke": { "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": "Switch Mode for Call Forwarding Settings for a Call Queue", "operationId": "switchCallQueueCallForwardingMode", "description": "Switches the current operating mode of the `Call Queue` to the mode as per normal operations.\n\nOperating modes allow call forwarding to be configured based on predefined schedules, enabling different routing behaviors during business hours, after hours, or holidays.\n\nSwitching operating mode for a `call queue` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Queue" ], "parameters": [ { "name": "locationId", "in": "path", "description": "`Location` in which this `call queue` exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "Switch operating mode to normal operations for this `call queue`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNDI0OTlmZjUtYWI1ZC00NzU4LTliMWItZjg3MTVhM2UwNmVh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Switch operating mode as per normal operations for the `call queue` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": {}, "schema": { "type": "object", "properties": {} } } } } } }, "/telephony/config/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallRecordingObject" }, "example": { "enabled": true, "organization": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "name": "Alaska Cisco Organization" }, "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "vendorName": "Dubber", "termsOfServiceUrl": "https://www.dubber.net/terms" } } } }, "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 Call Recording Settings", "operationId": "Get Call Recording Settings", "description": "Retrieve call recording settings for the organization.\n\nThe Call Recording feature enables authorized agents to record any active call that Webex Contact Center manages.\n\nRetrieving call recording settings requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve call recording settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Recording Settings", "operationId": "Update Call Recording Settings", "description": "Update call recording settings for the organization.\n\nThe Call Recording feature enables authorized agents to record any active call that Webex Contact Center manages.\n\nUpdating call recording settings requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: This API is for Cisco partners only.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve call recording settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true }, "schema": { "$ref": "#/components/schemas/ModifyCallRecordingSettingsObject" } } } } } }, "/telephony/config/callRecording/vendors/{vendorId}/termsOfService": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallRecordingTermsOfServiceObject" }, "example": { "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "vendorName": "Dubber", "termsOfServiceEnabled": true, "termsOfServiceUrl": "https://www.dubber.net/terms" } } } }, "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 Call Recording Terms Of Service Settings", "operationId": "Get Call Recording Terms Of Service Settings", "description": "Retrieve call recording terms of service settings for the organization.\n\nThe Call Recording feature enables authorized agents to record any active call that Webex Contact Center manages.\n\nRetrieving call recording terms of service settings requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "vendorId", "in": "path", "description": "Retrieve call recording terms of service details for the given vendor.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve call recording terms of service details from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Recording Terms Of Service Settings", "operationId": "Update Call Recording Terms Of Service Settings", "description": "Update call recording terms of service settings for the given vendor.\n\nThe Call Recording feature enables authorized agents to record any active call that Webex Contact Center manages.\n\nUpdating call recording terms of service settings requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "vendorId", "in": "path", "description": "Update call recording terms of service settings for the given vendor.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update call recording terms of service settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "termsOfServiceEnabled": true }, "schema": { "$ref": "#/components/schemas/ModifyCallRecordingTermsOfServiceObject" } } } } } }, "/telephony/config/callRecording/complianceAnnouncement": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetOrgComplianceAnnouncementObject" }, "example": { "inboundPSTNCallsEnabled": true, "outboundPSTNCallsEnabled": false, "outboundPSTNCallsDelayEnabled": false, "delayInSeconds": 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 details for the organization Compliance Announcement Setting", "operationId": "Get details for the organization Compliance Announcement Setting", "description": "Retrieve the organization compliance announcement settings.\n\nThe Compliance Announcement feature interacts with the Call Recording feature, specifically with the playback of the start/stop announcement. When the compliance announcement is played to the PSTN party, and the PSTN party is connected to a party with call recording enabled, then the start/stop announcement is inhibited.\n\nRetrieving organization compliance announcement setting requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve compliance announcement setting from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the organization Compliance Announcement", "operationId": "Update the organization Compliance Announcement", "description": "Update the organization compliance announcement.\n\nThe Compliance Announcement feature interacts with the Call Recording feature, specifically with the playback of the start/stop announcement. When the compliance announcement is played to the PSTN party, and the PSTN party is connected to a party with call recording enabled, then the start/stop announcement is inhibited.\n\nUpdating the organization compliance announcement requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Update the compliance announcement setting from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "inboundPSTNCallsEnabled": false, "outboundPSTNCallsEnabled": false, "outboundPSTNCallsDelayEnabled": false, "delayInSeconds": 10 }, "schema": { "$ref": "#/components/schemas/ModifyOrgComplianceAnnouncementObject" } } } } } }, "/telephony/config/locations/{locationId}/callRecording/complianceAnnouncement": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetComplianceAnnouncementObject" }, "example": { "inboundPSTNCallsEnabled": true, "useOrgSettingsEnabled": true, "outboundPSTNCallsEnabled": false, "outboundPSTNCallsDelayEnabled": false, "delayInSeconds": 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 details for the Location Compliance Announcement Setting", "operationId": "Get details for the Location Compliance Announcement Setting", "description": "Retrieve the location compliance announcement settings.\n\nThe Compliance Announcement feature interacts with the Call Recording feature, specifically with the playback of the start/stop announcement. When the compliance announcement is played to the PSTN party, and the PSTN party is connected to a party with call recording enabled, then the start/stop announcement is inhibited.\n\nRetrieving location compliance announcement setting requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve compliance announcement settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve compliance announcement setting from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the Location Compliance Announcement", "operationId": "Update the Location Compliance Announcement", "description": "Update the location compliance announcement.\n\nThe Compliance Announcement feature interacts with the Call Recording feature, specifically with the playback of the start/stop announcement. When the compliance announcement is played to the PSTN party, and the PSTN party is connected to a party with call recording enabled, then the start/stop announcement is inhibited.\n\nUpdating the location compliance announcement requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the compliance announcement settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the compliance announcement setting from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "inboundPSTNCallsEnabled": true, "useOrgSettingsEnabled": true, "outboundPSTNCallsEnabled": false, "outboundPSTNCallsDelayEnabled": false, "delayInSeconds": 10 }, "schema": { "$ref": "#/components/schemas/ModifyComplianceAnnouncementObject" } } } } } }, "/telephony/config/callRecording/regions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingRegionsResponse" }, "example": { "regions": [ { "code": "AU", "name": "Australia", "defaultEnabled": false }, { "code": "CA", "name": "Canada", "defaultEnabled": 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 Call Recording Regions", "operationId": "Get Call Recording Regions", "description": "Retrieve all the call recording regions that are available for an organization.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve call recording regions for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/callRecording/vendorUsers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingVendorUsersResponse" }, "example": { "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "members": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL1BMQUNFL2U2OTczZDgyLWM1NTUtNDMwOC05NGU3LWI3ZWU2MjczY2YyMg", "lastName": ".", "firstName": "HQ-Shared-Device", "type": "PLACE", "licenseType": "WORKSPACE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MzE1ZTcxMy1hNGMzLTRmN2UtYmE2YS1hNjIyNTA3YjhmNzk", "lastName": "G", "firstName": "Viktor", "type": "PEOPLE", "licenseType": "PROFESSIONAL_USER" } ] } } } }, "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 Call Recording Vendor Users", "operationId": "Get Call Recording Vendor Users", "description": "Retrieve call recording vendor users of an organization. This API is used to get the list of users who are assigned to the default call-recording vendor of the organization.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve call recording vendor users for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of vendor users returned to this maximum count. The default is 2000.", "example": "10", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "standardUserOnly", "in": "query", "description": "If true, results only include Webex Calling standard users.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/locations/{locationId}/callRecording/vendor": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingVendorPatchResponse" }, "example": { "jobId": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8yOTQ5ZmRiOC1kODg1LTQxMzAtYjhiNy1jNmJiYmM5ZWQzOTE" } } } }, "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": "Set Call Recording Vendor for a Location", "operationId": "Set Call Recording Vendor for a Location", "description": "Assign a call recording vendor to a location of an organization. Response will be `204` if the changes can be applied immediatley otherwise `200` with a job ID is returned.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the call recording vendor for this location", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the call recording vendor for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "orgDefaultEnabled": false, "storageRegion": "US", "orgStorageRegionEnabled": true, "failureBehavior": "PROCEED_CALL_WITH_ANNOUNCEMENT", "orgFailureBehaviorEnabled": true }, "schema": { "$ref": "#/components/schemas/CallRecordingVendorsPatchRequest" } } } } } }, "/telephony/config/locations/{locationId}/callRecording/vendors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingLocationVendorsResponse" }, "example": { "orgDefaultEnabled": false, "orgDefaultVendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "orgDefaultVendorName": "Webex", "defaultVendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "defaultVendorName": "Webex", "vendors": [ { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "name": "Dubber", "description": "This is the Dubber instance for the US region.", "migrateUserCreationEnabled": true, "loginUrl": "https://wxc-us.dubber.net/login?sso=webex", "termsOfServiceUrl": "https://www.dubber.net/terms" } ], "orgStorageRegionEnabled": true, "orgStorageRegion": "US", "storageRegion": "US", "orgFailureBehaviorEnabled": true, "orgFailureBehavior": "PROCEED_WITH_CALL_NO_ANNOUNCEMENT", "failureBehavior": "PROCEED_WITH_CALL_NO_ANNOUNCEMENT" } } } }, "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 Location Call Recording Vendors", "operationId": "Get Location Call Recording Vendors", "description": "Retrieve details of the call recording vendor that the location is assigned and also a list of vendors.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve vendor details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve vendor details for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callRecording/vendorUsers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingVendorUsersResponse" }, "example": { "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "members": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL1BMQUNFL2U2OTczZDgyLWM1NTUtNDMwOC05NGU3LWI3ZWU2MjczY2YyMg", "lastName": ".", "firstName": "HQ-Shared-Device", "type": "PLACE", "licenseType": "WORKSPACE" }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYzQ1Y2U0OC1hZWFmLTRmOGUtYmVlOS0zMjg5NDI2ZmYxZTY", "lastName": "Miller", "firstName": "Gary", "type": "PEOPLE", "licenseType": "PROFESSIONAL_USER" } ] } } } }, "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 Call Recording Vendor Users for a Location", "operationId": "Get Call Recording Vendor Users for a Location", "description": "Retrieve call recording vendor users of a location. This API is used to get the list of users assigned to the call recording vendor of the location.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve vendor users for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve vendor users for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of vendor users returned to this maximum count. The default is 2000.", "example": "10", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "standardUserOnly", "in": "query", "description": "If true, results only include Webex Calling standard users.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/jobs/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingJobList" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8yOTQ5ZmRiOC1kODg1LTQxMzAtYjhiNy1jNmJiYmM5ZWQzOTE", "trackingId": "ADMINBATCHCLIENT_926cde91-bbbd-4288-80d6-8ec19738f3bd_0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODA2NzZhZC0yNjRlLTRmMWMtYmIwYS1jMWZiNmQ0ODlmZTI", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "instanceId": 637238, "jobExecutionStatus": [ { "id": 660912, "startTime": "2024-05-08T14:12:28.371Z", "endTime": "2024-05-08T14:12:39.848Z", "lastUpdated": "2024-05-08T14:12:39.983Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2024-05-08T14:12:27.997Z", "stepExecutionStatuses": [ { "id": 1909985, "startTime": "2024-05-08T14:12:28.746Z", "endTime": "2024-05-08T14:12:29.145Z", "lastUpdated": "2024-05-08T14:12:29.145Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managecallrecordingproviderGetUserThatNeedCallRecProviderUpdate", "timeElapsed": "PT0.399S" }, { "id": 1909986, "startTime": "2024-05-08T14:12:29.156Z", "endTime": "2024-05-08T14:12:39.843Z", "lastUpdated": "2024-05-08T14:12:39.843Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managecallrecordingproviderUpdateCallRecordingProviderForUsers", "timeElapsed": "PT10.687S" } ], "timeElapsed": "PT11.086S" } ], "latestExecutionStatus": "COMPLETED", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzlmZTFmZDllLTlkM2QtNDUxZi04MDEwLTMwY2U1ZjRlNTYyNQ", "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "counts": { "totalNumberOfLocations": 0, "totalNumberOfUsers": 6, "failedUsers": 0, "updatedUsers": 6 } } ] } } } }, "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 Call Recording Jobs", "operationId": "List Call Recording Jobs", "description": "Get the list of all call recording jobs in an organization.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List call recording jobs in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of jobs returned to this maximum count. The default is 50.", "example": "10", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects. The default is 0.", "example": "0", "schema": { "type": "number" } } ] } }, "/telephony/config/jobs/callRecording/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingJobStatus" }, "example": { "name": "managecallrecordingprovider", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC80ZDA4MDZhYy1hN2M3LTRjM2MtYmVlNy01NDM3MDk4MmYzMWI", "trackingId": "ADMINBATCHCLIENT_a02c7b0c-4d28-4e98-b47b-0a135a4b287f_0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODA2NzZhZC0yNjRlLTRmMWMtYmIwYS1jMWZiNmQ0ODlmZTI", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "instanceId": 637210, "jobExecutionStatus": [ { "id": 660884, "startTime": "2024-05-08T13:51:47.275Z", "endTime": "2024-05-08T13:51:57.873Z", "lastUpdated": "2024-05-08T13:51:57.978Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2024-05-08T13:51:47.018Z", "stepExecutionStatuses": [ { "id": 1909908, "startTime": "2024-05-08T13:51:47.550Z", "endTime": "2024-05-08T13:51:47.978Z", "lastUpdated": "2024-05-08T13:51:47.978Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managecallrecordingproviderGetUserThatNeedCallRecProviderUpdate", "timeElapsed": "PT0.428S" }, { "id": 1909909, "startTime": "2024-05-08T13:51:47.994Z", "endTime": "2024-05-08T13:51:57.866Z", "lastUpdated": "2024-05-08T13:51:57.866Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managecallrecordingproviderUpdateCallRecordingProviderForUsers", "timeElapsed": "PT9.872S" } ], "timeElapsed": "PT10.3S" } ], "latestExecutionStatus": "COMPLETED", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzlmZTFmZDllLTlkM2QtNDUxZi04MDEwLTMwY2U1ZjRlNTYyNQ", "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmYzNzMzOTYtMGVmMC00N2NiLTk5NzEtNzg0MDI5YzZjMTQ3", "counts": { "totalNumberOfLocations": 0, "totalNumberOfUsers": 6, "failedUsers": 0, "updatedUsers": 6 } } } } }, "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 the Job Status of a Call Recording Job", "operationId": "Get the Job Status of a Call Recording Job", "description": "Get the details of a call recording job by its job ID.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job status for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve job status in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/callRecording/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 0, "item": "5d320be1-e28c-420a-8935-1a54c7826eb4", "error": { "key": "500", "message": [ { "description": "POST failed: HTTP/1.1 404 Not Found", "code": null, "locationId": null } ] }, "trackingId": "ADMINBATCHCLIENT_2830be24-766e-4a2a-be36-d289eb890322_0_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": "Get Job Errors for a Call Recording Job", "operationId": "Get Job Errors for a Call Recording Job", "description": "Get errors for a call recording job in an organization.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job errors for this job.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve job errors for a call recording job in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of errors returned to this maximum count. The default is 50.", "example": "10", "schema": { "type": "number" } } ] } }, "/telephony/config/callRecording/vendors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingVendorsList" }, "example": { "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "vendorName": "Webex", "vendors": [ { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "name": "Dubber", "description": "Dubber Call Recording Provider", "migrateUserCreationEnabled": true, "loginUrl": "https://wxc-sandbox.dubber.net/login?sso=webex", "termsOfServiceUrl": "https://www.dubber.net/terms" }, { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "name": "Webex", "description": "Webex CRP", "migrateUserCreationEnabled": false, "loginUrl": "", "termsOfServiceUrl": "" } ], "storageRegion": "US", "failureBehavior": "PROCEED_WITH_CALL_NO_ANNOUNCEMENT" } } } }, "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 Organization Call Recording Vendors", "operationId": "Get Organization Call Recording Vendors", "description": "Returns what the current vendor is as well as a list of all the available vendors.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve call recording settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ] } }, "/telephony/config/callRecording/vendor": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingVendorPatchResponse" }, "example": { "jobId": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mYjg1ZDAzNC01NDc0LTQ5YjMtOGM3Ny0zZDZlZDQ1MzA3MGY" } } } }, "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": "Set Organization Call Recording Vendor", "operationId": "Set Organization Call Recording Vendor", "description": "Returns a Job ID that you can use to get the status of the job.\n\nThe Call Recording feature supports multiple third-party call recording providers, or vendors, to capture and manage call recordings. An organization is configured with an overall provider, but locations can be configured to use a different vendor than the overall organization default.\n\nRequires a full administrator auth token with a scope of `spark-admin:telephony_config_write`, `spark-admin:telephony_config_read`, and `spark-admin:people_write`.", "tags": [ "Features: Call Recording" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Modify call recording settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "vendorId": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "storageRegion": "US", "failureBehavior": "PROCEED_WITH_CALL_NO_ANNOUNCEMENT" }, "schema": { "$ref": "#/components/schemas/CallRecordingVendorPatch" } } } } } }, "/telephony/config/cxEssentials/wrapup/reasons": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "wrapupReasons" ], "properties": { "wrapupReasons": { "type": "array", "items": { "$ref": "#/components/schemas/WrapUpReasonObject" }, "description": "List of wrap-up reasons." } } }, "example": { "wrapupReasons": [ { "id": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "name": "Test Wrapup Reason 1", "description": "This is a description for wrap-up reason 1", "numberOfQueuesAssigned": 5 }, { "id": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvYjY2ZGY0ZjItYTc3Yy00MWNmLTkyYzAtOTA3MGUzZDA4M2Ex", "name": "Test Wrapup Reason 2", "description": "This is a description for wrap-up reason 2", "numberOfQueuesAssigned": 13 } ] } } } }, "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 Wrap Up Reasons", "operationId": "List Wrap Up Reasons", "description": "Return the list of wrap-up reasons configured for a customer.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues. Upon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue. Admins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nRetrieving the list of wrap-up reasons requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "description": "Unique wrap-up identifier." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2" } } } }, "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 Wrap Up Reason", "operationId": "Create Wrap Up Reason", "description": "Create a wrap-up reason.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nCreating a wrap-up reason requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "name": "Wrap up reason 1", "description": "This is a description for wrap-up reason 1", "queues": [ "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi" ], "assignAllQueuesEnabled": false }, "schema": { "$ref": "#/components/schemas/CreateWrapUpReasonPayload" } } } } } }, "/telephony/config/cxEssentials/wrapup/reasons/{wrapupReasonId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WrapUpReasonDetailsObject", "description": "Wrap-up reason object." }, "example": { "name": "Wrap up reason 1", "description": "This is a description for wrap-up reason 1", "defaultWrapupQueuesCount": 1, "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "name": "Queue 1", "locationName": "Location 1", "phoneNumber": "+1234567890", "extension": "1234", "defaultWrapupEnabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Wrap Up Reason", "operationId": "Read Wrap Up Reason", "description": "Return the wrap-up reason by ID.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nRetrieving the wrap-up reason by ID requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "wrapupReasonId", "in": "path", "description": "Wrap-up reason ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Wrap Up Reason", "operationId": "Update Wrap Up Reason", "description": "Modify a wrap-up reason.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nModifying a wrap-up reason requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "wrapupReasonId", "in": "path", "description": "Wrap-up reason ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Wrap up reason 1", "description": "This is a description for wrap-up reason 1", "queuesToAssign": [ "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi" ], "queuesToUnassign": [ "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYmI0MDc4NWMtZGZmMi00ODA3LTkwZTYtNGRlMzEwZmI1YTA5" ], "assignAllQueuesEnabled": false, "unassignAllQueuesEnabled": false }, "schema": { "$ref": "#/components/schemas/UpdateWrapUpReasonPayload" } } } } }, "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 Wrap Up Reason", "operationId": "Delete Wrap Up Reason", "description": "Delete a wrap-up reason.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nDeleting the wrap-up reason requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "wrapupReasonId", "in": "path", "description": "Wrap-up reason ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "schema": { "type": "string" } } ] } }, "/telephony/config/cxEssentials/wrapup/reasons/actions/validateName/invoke": { "post": { "responses": { "200": { "description": "OK", "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": "Validate Wrap Up Reason", "operationId": "Validate Wrap Up Reason", "description": "Validate the wrap-up reason name.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nValidating the wrap-up reason name requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "name": "Wrap up reason 1" }, "schema": { "$ref": "#/components/schemas/ValidateWrapUpReasonPayload" } } } } } }, "/telephony/config/cxEssentials/wrapup/reasons/{wrapupReasonId}/availableQueues": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "queues" ], "properties": { "queues": { "type": "array", "items": { "$ref": "#/components/schemas/QueueObject" }, "description": "List of queues." } } }, "example": { "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "name": "Queue 1", "locationName": "Location 1", "extension": "1234" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMTM1NDg0YTMtN2Y0Yi00MTlhLWI2ZGQtMTk4NmY5MmQwYWQ1", "name": "Queue 2", "locationName": "Location 2", "extension": "12345" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Available Queues", "operationId": "Read Available Queues", "description": "Return the available queues for a wrap-up reason.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nRetrieving the available queues for a wrap-up reason requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "wrapupReasonId", "in": "path", "description": "Wrap-up reason ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "schema": { "type": "string" } } ] } }, "/telephony/config/cxEssentials/locations/{locationId}/queues/{queueId}/wrapup/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "wrapupReasons" ], "properties": { "wrapupTimerEnabled": { "type": "boolean", "example": true, "description": "Denotes whether the wrap-up timer is enabled." }, "wrapupTimer": { "type": "number", "example": 60, "description": "Wrap up timer value in seconds." }, "wrapupReasons": { "type": "array", "items": { "$ref": "#/components/schemas/QueueWrapUpReasonObject" }, "description": "List of wrap-up reasons." } } }, "example": { "wrapupTimerEnabled": true, "wrapupTimer": 60, "wrapupReasons": [ { "id": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "name": "Wrap up reason 1", "description": "This is a description for wrap-up reason 1", "isDefaultEnabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Wrap Up Reason Settings", "operationId": "Read Wrap Up Reason Settings", "description": "Return a wrap-up reason by location ID and queue ID.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nRetrieving the wrap-up reason by location ID and queue ID requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "locationId", "in": "path", "description": "The location ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2ZkZDA1MzYyLTdlZjctNDYzYS1hMjg5LTY5NzgxMzc5Y2NhNg==", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "The queue ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Wrap Up Reason Settings", "operationId": "Update Wrap Up Reason Settings", "description": "Modify a wrap-up reason by location ID and queue ID.\n\nAgents handling calls use wrap-up reasons to categorize the outcome after a call ends. The control hub admin can configure these reasons for customers and assign them to queues.\nUpon call completion, agents select a wrap-up reason from the queue's assigned list. Each wrap-up reason includes a name and description, and can be set as the default for a queue.\nAdmins can also configure a timer, which dictates the time agents have to select a reason post-call, with a default of 60 seconds. This timer can be disabled if necessary.\n\nModifying a wrap-up reason by location ID and queue ID requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "locationId", "in": "path", "description": "The location ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2ZkZDA1MzYyLTdlZjctNDYzYS1hMjg5LTY5NzgxMzc5Y2NhNg==", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "description": "The queue ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "wrapupReasons": [ "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2" ], "defaultWrapupReasonId": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "wrapupTimerEnabled": true, "wrapupTimer": 60 }, "schema": { "$ref": "#/components/schemas/UpdateWrapUpReasonByLocationQueuePayload" } } } } } }, "/telephony/config/locations/{locationId}/queues/{queueId}/cxEssentials/screenPop": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetScreenPopConfigurationObject" }, "example": { "enabled": true, "screenPopUrl": "http://localhost:8086/screenpop", "desktopLabel": "example screen pop", "queryParams": { "example-param": "example-value" } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Screen Pop Configuration", "operationId": "Read Screen Pop Configuration", "description": "Returns the screen pop configuration for a call queue in a location.\n\nScreen pop lets agents view customer-related info in a pop-up window.\n\nRetrieving the screen pop configuration requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "locationId", "in": "path", "description": "The location ID where the call queue resides.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "required": true, "description": "The call queue ID for which screen pop configuration is modified.", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization ID of the customer or partner's organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Screen Pop Configuration", "operationId": "Update Screen Pop Configuration", "description": "Modifies the screen pop configuration for a call queue in a location.\n\nScreen pop lets agents view customer-related info in a pop-up window.\n\nModifying the screen pop configuration requires a full or device administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "locationId", "in": "path", "description": "The location ID where the call queue resides.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "schema": { "type": "string" } }, { "name": "queueId", "in": "path", "required": true, "description": "The call queue ID for which screen pop configuration is modified.", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization ID of the customer or partner's organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "screenPopUrl": "http://localhost:8086/screenpop", "desktopLabel": "example screen pop", "queryParams": { "example-parameter-1": "example-value-1", "example-parameter-2": "example-value-2" } }, "schema": { "$ref": "#/components/schemas/ModifyScreenPopConfigurationPayload" } } } } } }, "/telephony/config/locations/{locationId}/cxEssentials/agents/availableAgents": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetAvailableAgentsCallQueueObject" }, "description": "List of available agents in the given location." } } }, "example": { "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YzFjOWE2YS1jYjZiLTRjYjItOWJkYi02YjkyZTA1ZTI4ZmY", "lastName": "Smith", "firstName": "John", "displayName": "John_Smith", "type": "PEOPLE", "email": "JohnSmith@gmail.com", "hasCxEssentials": true, "phoneNumber": [ { "external": "+12165553518", "extension": "5024" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNGZkMGJkZS03MmM5LTRkMTktYmUxNS03YTdjMTM0YzExZmQ", "lastName": "Will", "firstName": "David", "displayName": "David Will", "type": "PEOPLE", "email": "davidWill@test.com", "hasCxEssentials": true, "phoneNumber": [ { "external": "+19458880340", "extension": "5024" } ] } ] } } } }, "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 Available Agents", "operationId": "List Available Agents", "description": "Return a list of available agents with Customer Assist license in a location.\n\nRetrieving the list of available agents requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Customer Assist" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve the list of avaiilable agents in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "The organization ID of the customer or partner's organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "hasCxEssentials", "in": "query", "description": "Returns only the list of available agents with Customer Assist license when `true`, otherwise returns the list of available agents with Customer Experience Basic license.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/locations/{locationId}/features/hotDesking": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "voicePortalHotDeskSignInEnabled": { "type": "boolean", "example": true, "description": "If `true`, hot desking sign in via the Voice Portal is enabled." } } }, "example": { "voicePortalHotDeskSignInEnabled": 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": "Voice Portal Hot desking sign in details for a location", "operationId": "Voice Portal Hot desking sign in details for a location", "description": "Get the Hot desking sign in details for a location.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hot Desking Sign-in via Voice Portal" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which the hot desking sign in resides.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzM2ZTFlM2Y1LWJhODEtNDRiNC05ZGQ1LWIyMmVlNGY1MDIyZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Voice Portal Hot desking sign in details for a location", "operationId": "Update Voice Portal Hot desking sign in details for a location", "description": "Update the Hot desking sign in details for a location.\n\nThis requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hot Desking Sign-in via Voice Portal" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which the hot desking sign in resides.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzM2ZTFlM2Y1LWJhODEtNDRiNC05ZGQ1LWIyMmVlNGY1MDIyZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "voicePortalHotDeskSignInEnabled": true }, "schema": { "type": "object", "properties": { "voicePortalHotDeskSignInEnabled": { "type": "boolean", "example": true, "description": "If `true`, hot desking sign in via the Voice Portal is enabled." } } } } } } } }, "/telephony/config/people/{personId}/features/hotDesking/guest": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "voicePortalHotDeskSignInEnabled": { "type": "boolean", "example": true, "description": "If `true`, hot desking sign in via the Voice Portal is enabled." } } }, "example": { "voicePortalHotDeskSignInEnabled": 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": "Voice Portal Hot desking sign in details for a user", "operationId": "Voice Portal Hot desking sign in details for a user", "description": "Get the Hot desking sign in details for a user.\n\nThis requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hot Desking Sign-in via Voice Portal" ], "parameters": [ { "name": "personId", "in": "path", "description": "ID of the person associated with the hot desking details.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Voice Portal Hot desking sign in details for a user", "operationId": "Update Voice Portal Hot desking sign in details for a user", "description": "Update the Hot desking sign in details for a user.\n\nThis requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hot Desking Sign-in via Voice Portal" ], "parameters": [ { "name": "personId", "in": "path", "description": "ID of the person associated with the hot desking details.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "voicePortalHotDeskSignInEnabled": true }, "schema": { "type": "object", "properties": { "voicePortalHotDeskSignInEnabled": { "type": "boolean", "example": true, "description": "If `true`, hot desking sign in via the Voice Portal is enabled." } } } } } } } }, "/telephony/config/huntGroups": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "huntGroups" ], "properties": { "huntGroups": { "type": "array", "items": { "$ref": "#/components/schemas/ListHuntGroupObject" }, "description": "Array of hunt groups." } } }, "example": { "huntGroups": [ { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "name": "5714328359", "locationName": "WXCSIVDKCPAPIC4S1", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "routingPrefix": "123", "esn": "1239097", "enabled": true }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYVhZd2QySTJNbmM1YWtBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "name": "bram", "locationName": "Brampton", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzQwMjgw", "phoneNumber": "+15558675309", "routingPrefix": "123", "esn": "1239097", "enabled": true } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Hunt Groups", "operationId": "listHuntGroups", "description": "List all calling Hunt Groups for the organization.\n\nHunt groups can route incoming calls to a group of people or workspaces. You can even configure a pattern to route to a whole group.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List hunt groups for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Only return hunt groups with matching location ID.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return hunt groups with the matching name.", "example": "Customer Support", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return hunt groups with the matching primary phone number or extension.", "example": "+15558675309", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/huntGroups": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created hunt group." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Hunt Group", "operationId": "createHuntGroup", "description": "Create new Hunt Groups for the given location.\n\nHunt groups can route incoming calls to a group of people, workspaces or virtual lines. You can even configure a pattern to route to a whole group.\n\nCreating a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the hunt group for the given location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the hunt group for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "5714328359", "phoneNumber": "+15558675309", "extension": "7781", "firstName": "Hakim", "lastName": "Smith", "callPolicies": { "policy": "UNIFORM", "waitingEnabled": false, "groupBusyEnabled": true, "allowMembersToControlGroupBusyEnabled": true, "noAnswer": { "nextAgentEnabled": false, "nextAgentRings": 5, "forwardEnabled": false, "numberOfRings": 0, "destinationVoicemailEnabled": false }, "busyRedirect": { "enabled": true, "destination": "7037344404", "destinationVoicemailEnabled": true }, "businessContinuityRedirect": { "enabled": true, "destination": "7037344405", "destinationVoicemailEnabled": false } }, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzU1YjUyZThhLWZmOWYtMTFlYi05ZjRhLTAzZDY1NzdhYzg1Yg" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9kZXRhMXZqeTBsQDY0OTQxMjk3LmludDEwLmJjbGQud2ViZXguY29t" } ], "enabled": true, "huntGroupCallerIdForOutgoingCallsEnabled": true, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/CreateHuntGroupObject" } } } } } }, "/telephony/config/locations/{locationId}/huntGroups/{huntGroupId}": { "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 Hunt Group", "operationId": "deleteHuntGroup", "description": "Delete the designated Hunt Group.\n\nHunt groups can route incoming calls to a group of people or workspaces. You can even configure a pattern to route to a whole group.\n\nDeleting a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Delete the hunt group with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the hunt group from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHuntGroupObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "name": "hgnME3", "enabled": true, "extension": "079999", "distinctiveRing": true, "alternateNumbers": [], "language": "English", "languageCode": "en-US", "callingFirstName": ".", "callingLastName": "hgnME3", "timeZone": "America/Los_Angeles", "callPolicies": { "policy": "UNIFORM", "waitingEnabled": false, "groupBusyEnabled": true, "allowMembersToControlGroupBusyEnabled": true, "noAnswer": { "nextAgentEnabled": false, "nextAgentRings": 5, "forwardEnabled": false, "numberOfRings": 0, "systemMaxNumberOfRing": 20, "destinationVoicemailEnabled": false }, "busyRedirect": { "enabled": true, "destination": "7037344404", "destinationVoicemailEnabled": true }, "businessContinuityRedirect": { "enabled": true, "destination": "7037344405", "destinationVoicemailEnabled": false } }, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "firstName": "John", "lastName": "Doe", "type": "PEOPLE", "phoneNumber": "+15558675310", "extension": "7781", "routingPrefix": "123", "esn": "1237781" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "firstName": "Alaska Office", "lastName": "Second Floor", "type": "PLACE", "phoneNumber": "+15558675311", "extension": "7781", "routingPrefix": "123", "esn": "1237781" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "firstName": "Alice", "lastName": "Smith", "type": "VIRTUAL_LINE", "phoneNumber": "+15558675311", "extension": "7782", "routingPrefix": "123", "esn": "1237781" } ], "huntGroupCallerIdForOutgoingCallsEnabled": true, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "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 Details for a Hunt Group", "operationId": "getHuntGroup", "description": "Retrieve Hunt Group details.\n\nHunt groups can route incoming calls to a group of people, workspaces or virtual lines. You can even configure a pattern to route to a whole group.\n\nRetrieving hunt group details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a hunt group in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Retrieve settings for the hunt group with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve hunt group settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Hunt Group", "operationId": "updateHuntGroup", "description": "Update the designated Hunt Group.\n\nHunt groups can route incoming calls to a group of people, workspaces or virtual lines. You can even configure a pattern to route to a whole group.\n\nUpdating a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the hunt group for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Update settings for the hunt group with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update hunt group settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "5714328359", "phoneNumber": "+15558675309", "extension": "7781", "firstName": "Hakim", "lastName": "Smith", "callPolicies": { "policy": "UNIFORM", "waitingEnabled": false, "groupBusyEnabled": true, "allowMembersToControlGroupBusyEnabled": true, "noAnswer": { "nextAgentEnabled": false, "nextAgentRings": 5, "forwardEnabled": false, "numberOfRings": 0, "destinationVoicemailEnabled": false }, "busyRedirect": { "enabled": true, "destination": "7037344404", "destinationVoicemailEnabled": false }, "businessContinuityRedirect": { "enabled": true, "destination": "7037344405", "destinationVoicemailEnabled": false } }, "agents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YTUwMDk1YS1mZjlmLTExZWItODA2NS04ZjhkOWIxNmIzOTQ" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ" } ], "enabled": true, "huntGroupCallerIdForOutgoingCallsEnabled": true, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/ModifyHuntGroupObject" } } } } } }, "/telephony/config/locations/{locationId}/huntGroups/{huntGroupId}/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardSettingsGet" } } } }, "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 Call Forwarding Settings for a Hunt Group", "operationId": "getHuntGroupCallForwardingSettings", "description": "Retrieve Call Forwarding settings for the specified Hunt Group including the list of call forwarding rules.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nRetrieving call forwarding settings for a hunt group requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Read the call forwarding settings for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvMzk1ODc4ZGEtZmZmZS00YTI2LWJlOTctMjdhZmZmOTgxYTIy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve hunt group forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Call Forwarding Settings for a Hunt Group", "operationId": "updateHuntGroupCallForwardingSettings", "description": "Update Call Forwarding settings for the specified Hunt Group.\n\nThe call forwarding feature allows you to direct all incoming calls based on specific criteria that you define.\nBelow are the available options for configuring your call forwarding:\n1. Always forward calls to a designated number.\n2. Forward calls to a designated number based on certain criteria.\n3. Forward calls using different modes.\n\nUpdating call forwarding settings for a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Update call forwarding settings for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvMzk1ODc4ZGEtZmZmZS00YTI2LWJlOTctMjdhZmZmOTgxYTIy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update hunt group forwarding settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "" }, "selective": { "enabled": true, "destination": "35556", "destinationVoicemailEnabled": true }, "rules": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlpVW1WdVlXMWw", "enabled": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WMmhsYmxSdg", "enabled": false } ], "operatingModes": { "enabled": true, "modes": [ { "normalOperationEnabled": true, "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "forwardTo": { "selection": "FORWARD_TO_SPECIFIED_NUMBER", "destination": "00000", "destinationVoicemailEnabled": false } } ] } } }, "schema": { "$ref": "#/components/schemas/ModifyCallForwardingObject" } } } } } }, "/telephony/config/locations/{locationId}/huntGroups/{huntGroupId}/callForwarding/selectiveRules": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created hunt group." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Selective Call Forwarding Rule for a Hunt Group", "operationId": "createHuntGroupSelectiveCallForwardingRule", "description": "Create a Selective Call Forwarding Rule for the designated Hunt Group.\n\nA selective call forwarding rule for a hunt group allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the hunt group's call forwarding settings.\n\nCreating a selective call forwarding rule for a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Create the rule for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the hunt group rule for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "New Selective Rule", "holidaySchedule": "HolidayScheduleOne", "businessSchedule": "BusinessScheduleTwo", "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] }, "forwardTo": { "selection": "FORWARD_TO_SPECIFIED_NUMBER", "phoneNumber": "+12056350001" }, "enabled": true }, "schema": { "$ref": "#/components/schemas/CreateForwardingRuleObject" } } } } } }, "/telephony/config/locations/{locationId}/huntGroups/{huntGroupId}/callForwarding/selectiveRules/{ruleId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetForwardingRuleObject" }, "example": { "name": "My Rule", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WMmhsYmxSdg", "enabled": true, "businessSchedule": "BusiSched1", "holidaySchedule": "HolSched1", "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] } } } } }, "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 Selective Call Forwarding Rule for a Hunt Group", "operationId": "getHuntGroupSelectiveCallForwardingRule", "description": "Retrieve a Selective Call Forwarding Rule's settings for the designated Hunt Group.\n\nA selective call forwarding rule for a hunt group allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the hunt group's call forwarding settings.\n\nRetrieving a selective call forwarding rule's settings for a hunt group requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Retrieve settings for a rule for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Hunt group rule you are retrieving settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve hunt group rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "New ID for the modified rule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0" } } } }, "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 Selective Call Forwarding Rule for a Hunt Group", "operationId": "updateHuntGroupSelectiveCallForwardingRule", "description": "Update a Selective Call Forwarding Rule's settings for the designated Hunt Group.\n\nA selective call forwarding rule for a hunt group allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the hunt group's call forwarding settings.\n\nUpdating a selective call forwarding rule's settings for a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Update settings for a rule for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Hunt group rule you are updating settings for.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update hunt group rule settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "My Rule", "enabled": true, "businessSchedule": "BusiSched1", "holidaySchedule": "HolSched1", "forwardTo": { "selection": "FORWARD_TO_DEFAULT_NUMBER" }, "callsFrom": { "selection": "CUSTOM", "customNumbers": { "privateNumberEnabled": true, "unavailableNumberEnabled": true, "numbers": [ "2025551212" ] } }, "callsTo": { "numbers": [] } }, "schema": { "$ref": "#/components/schemas/ModifyForwardingRuleObject" } } } } }, "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 Selective Call Forwarding Rule for a Hunt Group", "operationId": "deleteHuntGroupSelectiveCallForwardingRule", "description": "Delete a Selective Call Forwarding Rule for the designated Hunt Group.\n\nA selective call forwarding rule for a hunt group allows calls to be forwarded or not forwarded to the designated number, based on the defined criteria.\n\nNote that the list of existing call forward rules is available in the hunt group's call forwarding settings.\n\nDeleting a selective call forwarding rule for a hunt group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Call Forwarding Rule ID will change upon modification of the Call Forwarding Rule name.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this hunt group exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Delete the rule for this hunt group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "schema": { "type": "string" } }, { "name": "ruleId", "in": "path", "description": "Hunt group rule you are deleting.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9RbTlp", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete hunt group rule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/huntGroups/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HuntGroupPrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Hunt Group Primary Available Phone Numbers", "operationId": "getHuntGroupPrimaryAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the hunt group's primary phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/huntGroups/alternate/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HuntGroupAlternateAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Hunt Group Alternate Available Phone Numbers", "operationId": "getHuntGroupAlternateAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the hunt group's alternate phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/huntGroups/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HuntGroupCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Hunt Group Call Forward Available Phone Numbers", "operationId": "getHuntGroupCallForwardAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the hunt group's call forward number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/huntGroups/{huntGroupId}/callForwarding/actions/switchMode/invoke": { "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": "Switch Mode for Call Forwarding Settings for a Hunt Group", "operationId": "switchHuntGroupCallForwardingMode", "description": "Switches the current operating mode of the `Hunt Group` to the mode as per normal operations.\n\nOperating modes allow call forwarding to be configured based on predefined schedules, enabling different routing behaviors during business hours, after hours, or holidays.\n\nSwitching operating mode for a `hunt group` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Hunt Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "`Location` in which this `hunt group` exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "huntGroupId", "in": "path", "description": "Switch operating mode to normal operations for this `hunt group`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvMzk1ODc4ZGEtZmZmZS00YTI2LWJlOTctMjdhZmZmOTgxYTIy", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Switch operating mode as per normal operations for the `hunt group` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": {}, "schema": { "type": "object", "properties": {} } } } } } }, "/telephony/config/operatingModes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "operatingModes" ], "properties": { "operatingModes": { "type": "array", "items": { "$ref": "#/components/schemas/OperatingModeListGetObject" }, "description": "Array of `operating modes`." } } }, "example": { "operatingModes": [ { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "name": "Day Operating Mode", "type": "SAME_HOURS_DAILY", "level": "LOCATION", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Cisco-HQ" }, "callForwarding": { "enabled": true, "destination": "+19705550006", "destinationVoicemailEnabled": false } }, { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzcxYzNjYjA2LWE5YjMtNDc1MS1hZGI1LTdiZDc2MWY5MTAwYg", "name": "Outage Operating Mode", "type": "NONE", "level": "ORGANIZATION", "callForwarding": { "enabled": true, "destination": "+19705550007", "destinationVoicemailEnabled": true } } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Operating Modes", "operationId": "Read the List of Operating Modes", "description": "Retrieve `Operating Modes` list defined at location, or organization level. Use query parameters to filter the result set by location or level. The list returned is sorted in ascending order by operating mode name. Long result sets are split into [pages](/docs/basics#pagination).\n\n`Operating modes` help manage calls more efficiently by routing them based on predefined settings.\n\nRetrieving this list requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "name", "in": "query", "description": "List `operating modes` whose name contains this string.", "example": "Day", "schema": { "type": "string" } }, { "name": "limitToLocationId", "in": "query", "description": "Location query parameter to filter the `operating modes` from that location only.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "limitToOrgLevelEnabled", "in": "query", "description": "If true, only return `operating modes` defined at the organization level.", "example": "true", "schema": { "type": "boolean" } }, { "name": "max", "in": "query", "description": "Maximum number of `operating modes` 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": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list of `operating modes` based on `name`, either asc, or desc.", "example": "name-asc", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve `operating modes` list from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/operatingModes/{modeId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperatingModeGetObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "name": "Day Operating Mode", "type": "HOLIDAY", "level": "LOCATION", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Cisco-HQ" }, "callForwarding": { "enabled": true, "destination": "+19705550006", "destinationVoicemailEnabled": false }, "holidays": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "name": "Christmas", "allDayEnabled": true, "startDate": "2024-12-25", "endDate": "2024-12-26", "recurrence": { "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } } ] } } } }, "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 Details for an Operating Mode", "operationId": "Get Details for an Operating Mode", "description": "Retrieve an `Operating Mode` by `Operating Mode ID`.\n\n`Operating modes` can be used to define call routing rules for different scenarios like business hours, after hours, holidays, etc.\n\nRetrieving an `operating mode` requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Get the `operating mode` with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify an Operating Mode", "operationId": "Modify an Operating Mode", "description": "Modify the designated `Operating Mode's` configuration.\n\n`Operating modes` can be used to define call routing rules for different scenarios like business hours, after hours, holidays, etc.\n\nModifying an `Operating Mode` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Modify the `operating mode` with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Day Operating Mode Updated", "sameHoursDaily": { "mondayToFriday": { "enabled": true, "allDayEnabled": true }, "saturdayToSunday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" } }, "callForwarding": { "enabled": true, "destination": "+19705550008", "destinationVoicemailEnabled": true } }, "schema": { "$ref": "#/components/schemas/OperatingModePatchObject" } } } } }, "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 an Operating Mode", "operationId": "Delete an Operating Mode", "description": "Delete the designated `Operating Mode`.\n\nDeleting an `Operating Mode` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Delete the `operating mode` with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/operatingModes/": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created `operating mode`." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg" } } } }, "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 an Operating Mode", "operationId": "Create an Operating Mode", "description": "Create an `Operating Mode` at an organization, or a location level.\n\n`Operating modes` can be used to define call routing rules for different scenarios like business hours, after hours, holidays, etc.\n\nCreating an `Operating Mode` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create the `operating mode` for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Day Operating Mode", "type": "SAME_HOURS_DAILY", "level": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "sameHoursDaily": { "mondayToFriday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" }, "saturdayToSunday": { "enabled": true, "allDayEnabled": true } }, "callForwarding": { "enabled": true, "destination": "+19705550006", "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/OperatingModePostObject" } } } } } }, "/telephony/config/operatingModes/{modeId}/holidays/{holidayId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperatingModeHolidayGetObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "name": "Christmas", "allDayEnabled": true, "startDate": "2024-12-25", "endDate": "2024-12-26", "startTime": "09:00", "endTime": "17:00", "recurrence": { "recurYearlyByDay": { "day": "TUESDAY", "week": "FIRST", "month": "JANUARY" } } } } } }, "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 details for an Operating Mode Holiday", "operationId": "Get details for an Operating Mode Holiday", "description": "Retrieve an `Operating Mode Holiday` by ID.\n\nHolidays define a recurring schedule for the `Operating Modes`.\n\nRetrieving an `Operating Mode Holiday` requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Get the holiday from this `operating mode` matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "holidayId", "in": "path", "required": true, "description": "Get the `operating mode Holiday` with the matching ID.", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify an Operating Mode Holiday", "operationId": "Modify an Operating Mode Holiday", "description": "Modify the designated `Operating Mode Holiday's` configuration.\n\nModifying an `Operating Mode Holiday` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Modify the holiday from this `operating mode` matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "holidayId", "in": "path", "required": true, "description": "Modify the `Holiday` with the matching ID.", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Christmas", "allDayEnabled": true, "startDate": "2024-12-25", "endDate": "2024-12-26", "startTime": "09:00", "endTime": "17:00", "recurrence": { "recurYearlyByDay": { "day": "TUESDAY", "week": "FIRST", "month": "JANUARY" } } }, "schema": { "$ref": "#/components/schemas/OperatingModeHolidayPatchObject" } } } } }, "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 an Operating Mode Holiday", "operationId": "Delete an Operating Mode Holiday", "description": "Delete the designated `Operating Mode Holiday`.\n\nDeleting an `Operating Mode Holiday` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Delete the holiday from this `operating mode` matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "holidayId", "in": "path", "required": true, "description": "Delete the holiday with the matching ID.", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the `operating mode` from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/operatingModes/{modeId}/holidays": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created holiday." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ" } } } }, "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 an Operating Mode Holiday", "operationId": "Create an Operating Mode Holiday", "description": "Create a holiday schedule event for the designated `Operating Mode`.\n\nHolidays define a recurring schedule for the `Operating Modes`. An `Operating Mode` can have a max of 150 holidays.\n\nCreating an `Operating Mode Holiday` requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "modeId", "in": "path", "description": "Create the holiday for this `operating mode`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the `operating mode holiday` for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Christmas", "allDayEnabled": true, "startDate": "2024-12-25", "endDate": "2024-12-26", "startTime": "09:00", "endTime": "17:00", "recurrence": { "recurYearlyByDay": { "day": "TUESDAY", "week": "FIRST", "month": "JANUARY" } } }, "schema": { "$ref": "#/components/schemas/OperatingModeHolidayPostRequestObject" } } } } } }, "/telephony/config/locations/{locationId}/operatingModes/availableOperatingModes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "operatingModes": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableOperatingModesObject" }, "description": "Array of `operating modes`." } } }, "example": { "operatingModes": [ { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "name": "Day Operating Mode" }, { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzcxYzNjYjA2LWE5YjMtNDc1MS1hZGI1LTdiZDc2MWY5MTAwYg", "name": "Outage Operating Mode" } ] } } } }, "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": "Retrieve the List of Available Operating Modes in a Location", "operationId": "Retrieve the List of Available Operating Modes in a Location", "description": "Retrieve list of `Operating Modes` which are available to be assigned to a location level feature (`Auto Attendant`, `Call Queue`, or `Hunt Group`). Since each location and an org can have a max of 100 `Operating Modes` defined. The max number of `operating modes` that can be returned is 200.\n\n`Operating modes` can be used to define call routing rules for different scenarios like business hours, after hours, holidays, etc. for the `Auto Attendant`, `Call Queue`, and `Hunt Group` features.\n\nRetrieving this list requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve `operating modes` list from this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve `operating modes` list from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/operatingModes/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperatingModeCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Operating Mode Call Forward Available Phone Numbers", "operationId": "Get Operating Mode Call Forward Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a operating mode's call forward number.\n\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Operating Modes" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/paging": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "locationPaging" ], "properties": { "locationPaging": { "type": "array", "items": { "$ref": "#/components/schemas/ListPagingGroupObject" }, "description": "Array of paging groups." } } }, "example": { "locationPaging": [ { "id": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "name": "PagingGroup-1", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "phoneNumber": "+15558675309", "extension": "7781", "routingPrefix": "567", "esn": "5677781", "tollFreeNumber": false }, { "id": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFp6WkdaelpHWXliMEEyTkRJME1qTTBNamszTG1sdWRERXdMbUpqYkdRdWQyVmlaWGd1WTI5dA", "name": "PagingGroup-2", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "phoneNumber": "+15558675310", "extension": "7781", "routingPrefix": "567", "esn": "5677781", "tollFreeNumber": 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": "Read the List of Paging Groups", "operationId": "Read the List of Paging Groups", "description": "List all Paging Groups for the organization.\n\nGroup Paging allows a person to place a one-way call or group page to up to 75 people and/or workspaces by\ndialing a number or extension assigned to a specific paging group. The Group Paging service makes a simultaneous call to all the assigned targets.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List paging groups for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count. Default is 2000", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects. Default is 0", "example": "0", "schema": { "type": "number" } }, { "name": "locationId", "in": "query", "description": "Return only paging groups with matching location ID. Default is all locations", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Return only paging groups with the matching name.", "example": "PagingGroup", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Return only paging groups with matching primary phone number or extension.", "example": "+15558675309", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/paging": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created paging group." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE" } } } }, "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 new Paging Group", "operationId": "Create a new Paging Group", "description": "Create a new Paging Group for the given location.\n\nGroup Paging allows a one-way call or group page to up to 75 people, workspaces and virtual lines by\ndialing a number or extension assigned to a specific paging group. The Group Paging service makes a simultaneous call to all the assigned targets.\n\nCreating a paging group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the paging group for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the paging group for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "PagingGroup-1", "phoneNumber": "+15558675309", "extension": "7781", "languageCode": "en_us", "firstName": "John", "lastName": "Doe", "originatorCallerIdEnabled": false, "originators": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "Y2lzY29zcGFyazovL3VzL1BMQUNFLzU1YjUyZThhLWZmOWYtMTFlYi05ZjRhLTAzZDY1NzdhYzg1Yg", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=" ], "targets": [ "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=" ], "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/PostPagingGroupObject" } } } } } }, "/telephony/config/locations/{locationId}/paging/{pagingId}": { "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 Paging Group", "operationId": "Delete a Paging Group", "description": "Delete the designated Paging Group.\n\nGroup Paging allows a person to place a one-way call or group page to up to 75 people and/or workspaces by\ndialing a number or extension assigned to a specific paging group. The Group Paging service makes a simultaneous call to all the assigned targets.\n\nDeleting a paging group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a paging group.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "pagingId", "in": "path", "description": "Delete the paging group with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the paging group from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPagingGroupObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "enabled": true, "name": "PagingGroup-1", "phoneNumber": "+15558675309", "extension": "7781", "language": "English", "languageCode": "en_us", "firstName": "John", "lastName": "Doe", "originatorCallerIdEnabled": true, "originators": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "firstName": "John", "lastName": "Doe", "type": "PEOPLE", "phoneNumber": "+15558675310", "extension": "7781", "routingPrefix": "567", "esn": "5677781" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "firstName": "Alice", "lastName": "Smith", "type": "VIRTUAL_LINE", "phoneNumber": "+15558675311", "extension": "7782", "routingPrefix": "567", "esn": "5677781" } ], "targets": [ { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "firstName": "Alaska Office", "lastName": "Second Floor", "type": "PLACE", "phoneNumber": "+15558675311", "extension": "7781", "routingPrefix": "567", "esn": "5677781" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "firstName": "Alice", "lastName": "Smith", "type": "VIRTUAL_LINE", "phoneNumber": "+15558675311", "extension": "7782", "routingPrefix": "567", "esn": "5677781" } ], "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "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 Details for a Paging Group", "operationId": "Get Details for a Paging Group", "description": "Retrieve Paging Group details.\n\nGroup Paging allows a person, place or virtual line a one-way call or group page to up to 75 people and/or workspaces and/or virtual line by\ndialing a number or extension assigned to a specific paging group. The Group Paging service makes a simultaneous call to all the assigned targets.\n\nRetrieving paging group details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve settings for a paging group in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "pagingId", "in": "path", "description": "Retrieve settings for the paging group with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve paging group settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Paging Group", "operationId": "Update a Paging Group", "description": "Update the designated Paging Group.\n\nGroup Paging allows a person to place a one-way call or group page to up to 75 people, workspaces and virtual lines by\ndialing a number or extension assigned to a specific paging group. The Group Paging service makes a simultaneous call to all the assigned targets.\n\nUpdating a paging group requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update settings for a paging group in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "string" } }, { "name": "pagingId", "in": "path", "description": "Update settings for the paging group with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update paging group settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "PagingGroup-1", "phoneNumber": "+15558675309", "extension": "7781", "languageCode": "en_us", "firstName": "John", "lastName": "Doe", "originatorCallerIdEnabled": false, "originators": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "Y2lzY29zcGFyazovL3VzL1BMQUNFLzU1YjUyZThhLWZmOWYtMTFlYi05ZjRhLTAzZDY1NzdhYzg1Yg", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=" ], "targets": [ "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0YjQ1OTIyLWZmOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=" ], "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/UpdatePagingGroupObject" } } } } } }, "/telephony/config/locations/{locationId}/paging/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PagingGroupPrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Paging Group Primary Available Phone Numbers", "operationId": "Get Paging Group Primary Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the paging group's primary phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Paging Group" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/singleNumberReach/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SingleNumberReachPrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Single Number Reach Primary Available Phone Numbers", "operationId": "Get Single Number Reach Primary Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the single number reach's primary phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/people/{personId}/singleNumberReach/numbers": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created single number reach." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvT1RnNU56WTNPRGMyTlE9PQ" } } } }, "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 Single Number Reach For a Person", "operationId": "Create Single Number Reach For a Person", "description": "Create a single number reach for a person in an organization.\n\nSingle number reach allows you to setup your work calls ring any phone number. This means that your office phone, mobile phone, or any other designated devices can ring at the same time, ensuring you don't miss important calls.\n\nCreating a single number reach for a person requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumber": "+17011558169", "enabled": true, "name": "myNumber", "doNotForwardCallsEnabled": false, "answerConfirmationEnabled": false }, "schema": { "$ref": "#/components/schemas/PostSingleNumberReachObject" } } } } } }, "/telephony/config/people/{personId}/singleNumberReach": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSingleNumberReachObject" }, "example": { "enabled": true, "alertAllNumbersForClickToDialCallsEnabled": false, "numbers": [ { "id": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvS3pFM01ERXhOVFU0TVRZNQ", "phoneNumber": "+17011558169", "enabled": true, "name": "myNumber", "doNotForwardCallsEnabled": false, "answerConfirmationEnabled": 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 Single Number Reach Settings For A Person", "operationId": "Get Single Number Reach Settings For A Person", "description": "Retrieve Single Number Reach settings for the given person.\n\nSingle number reach allows you to setup your work calls ring any phone number. This means that your office phone, mobile phone, or any other designated devices can ring at the same time, ensuring you don't miss important calls.\n\nRetrieving Single number reach settings requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Single Number Reach Settings For A Person", "operationId": "Update Single Number Reach Settings For A Person", "description": "Update Single number reach settings for a person.\n\nSingle number reach allows you to setup your work calls ring any phone number. This means that your office phone, mobile phone, or any other designated devices can ring at the same time, ensuring you don't miss important calls.\n\nUpdating a single number reach settings for a person requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "alertAllNumbersForClickToDialCallsEnabled": false }, "schema": { "$ref": "#/components/schemas/SingleNumberReachPatchRequestObject" } } } } } }, "/telephony/config/people/{personId}/singleNumberReach/numbers/{id}": { "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the updated single number reach. Note that this ID can change if the phone number is changed, as the ID contains base64 encoded phone number data." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvS3pFM01ERXhOVFU0TVRZNQ" } } } }, "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 Single Number Reach Settings For A Number", "operationId": "Update Single Number Reach Settings For A Number", "description": "Update Single number reach settings for a number.\n\nSingle number reach allows you to setup your work calls ring any phone number. This means that your office phone, mobile phone, or any other designated devices can ring at the same time, ensuring you don't miss important calls.\n\nThe response returns an ID that can change if the phoneNumber is modified, as the ID contains base64 encoded phone number data.\n\nUpdating a single number reach settings for a number requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for single number reach.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvT1RnNU56WTNPRGMyTlE9PQ", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumber": "+17011558169", "enabled": true, "name": "myNumber", "doNotForwardCallsEnabled": false, "answerConfirmationEnabled": false }, "schema": { "$ref": "#/components/schemas/SingleNumberReachNumberPatchRequestObject" } } } } }, "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 Single Number Reach Number", "operationId": "Delete A Single Number Reach Number", "description": "Delete Single number reach number for a person.\n\nSingle number reach allows you to setup your work calls ring any phone number. This means that your office phone, mobile phone, or any other designated devices can ring at the same time, ensuring you don't miss important calls.\n\nDeleting a Single number reach number requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Single Number Reach" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFUlNPTi8wMDAwNWUwMC01M2I0LTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for single number reach.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvT1RnNU56WTNPRGMyTlE9PQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualExtensions": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created virtual extension." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw" } } } }, "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 Virtual Extension", "operationId": "Create a Virtual Extension", "description": "Create new Virtual Extension for the given organization or location.\n\nYou can set up virtual extensions at the organization or location level. The organization level enables everyone across your organization to dial the same extension number to reach someone.\nYou can use the location level virtual extension like any other extension assigned to the specific location.\nUsers at the specific location can dial the extension. However, users at other locations can reach the virtual extension by dialing the ESN.\n\nCreating a virtual extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "firstName": "John", "lastName": "Smith", "displayName": "JohnSmith", "phoneNumber": "+17011558169", "extension": "9133", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" }, "schema": { "$ref": "#/components/schemas/PostVirtualExtensionObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualExtensionListObject" }, "example": { "virtualExtensions": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "extension": "5001", "routingPrefix": "4321", "esn": "43215001", "phoneNumber": "+16692515287", "firstName": "Bob", "level": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2QzYjA4MGMwLWU1MjctNDQ1Zi04NTk5LTU5OWJmNzQ2MjViNg", "locationName": "TestLocation", "displayName": "Bob Smith" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OL2JhNTE0MGExLWM0MjItNDRhMC05MmUyLTRkNDQ0ZTg1NDc5NQ", "extension": "5001", "esn": "5001", "phoneNumber": "+12135536387", "firstName": "John", "lastName": "Smith", "level": "ORGANIZATION", "displayName": "John Smith" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Virtual Extensions", "operationId": "Read the List of Virtual Extensions", "description": "Retrieve virtual extensions associated with a specific customer.\n\nThe GET Virtual Extensions API allows administrators to retrieve a list of virtual extensions configured within their organization. Virtual extensions enable users to dial extension numbers that route to external phone numbers, such as those of remote workers or frequently contacted clients.\nThis API returns key information including the extension, associated phone number (in E.164 format), display name, and the location to which the virtual extension belongs\nThe API supports filtering by various parameters, such as extension number, phone number, and location name. The results can be paginated using the `max` and `start` parameters, and the order of the results can be specified using the `order` parameter.\n\nRetrieving a Virtual Extension requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of virtual extensions returned to this maximum count. Default is 10.", "example": "10", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching virtual extensions. Default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the list of virtual extensions in ascending or descending order. Default is ascending.", "example": "ASC", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Filter the list of virtual extensions by extension number.", "example": "5001", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Filter the list of virtual extensions by phone number.", "example": "+17011558169", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Filter the list of virtual extensions by name. This can be either first name or last name.", "example": "John", "schema": { "type": "string" } }, { "name": "locationName", "in": "query", "description": "Filter the list of virtual extensions by location name.(Only one of the locationName, locationId, and OrgLevelOnly query parameters is allowed at the same time.)", "example": "Test1", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Filter the list of virtual extensions by location ID.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "orgLevelOnly", "in": "query", "description": "Filter the list of virtual extensions by organization level. If orgLevelOnly is true, return only the organization level virtual extensions.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/virtualExtensions/{extensionId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualExtensionObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "extension": "5001", "routingPrefix": "4321", "esn": "43215001", "phoneNumber": "+6692515287", "firstName": "John", "level": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2QzYjA4MGMwLWU1MjctNDQ1Zi04NTk5LTU5OWJmNzQ2MjViNg", "locationName": "Test1", "displayName": "JohnSmith" } } } }, "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 Virtual Extension", "operationId": "Get a Virtual Extension", "description": "Retrieve Virtual Extension details for the given extension ID.\n\nVirtual extensions integrate remote workers on separate telephony systems into Webex Calling, enabling users to reach them via extension dialing.\nThis endpoint allows administrators to retrieve configuration details for a specific virtual extension, ensuring visibility into the mapping between extensions and external phone numbers.\n\nRetrieving a Virtual Extension requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionId", "in": "path", "description": "ID of the virtual extension.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Virtual Extension", "operationId": "Update a Virtual Extension", "description": "Update Virtual Extension details for the given extension ID.\n\nThis API updates the configuration of an existing virtual extension identified by its unique extension ID. Administrators can modify fields such as the extension, associated phone number (in E.164 format), display name, and location etc.\n\nUpdating a Virtual Extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionId", "in": "path", "description": "ID of the virtual extension.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "firstName": "test", "lastName": "abc", "displayName": "abc test", "phoneNumber": "+1022997098", "extension": "1126" }, "schema": { "$ref": "#/components/schemas/VirtualExtensionPatchRequestObject" } } } } }, "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 Virtual Extension", "operationId": "Delete a Virtual Extension", "description": "Delete Virtual Extension using the extension ID.\n\nThis API permanently deletes a virtual extension from the organization. Once deleted, the extension will no longer route calls to the external phone number, and users won’t be able to reach it via the assigned extension.\n\nDeleting a Virtual Extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionId", "in": "path", "description": "ID of the virtual extension.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualExtensions/settings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualExtensionSettingsObject" }, "example": { "mode": "STANDARD" } } } }, "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 Virtual extension settings", "operationId": "Get Virtual extension settings", "description": "Retrieve Virtual Extension settings for the given Org.\n\nThis API retrieves the virtual extension mode settings configured for a given organization. Virtual extensions can operate in two modes: STANDARD and ENHANCED. The selected mode determines how the system handles routing and signaling for virtual extensions.\nBy default, the virtual extensions that you create use the Standard mode. Another mode, enhanced signaling mode, is available to all customers, however, virtual extensions won't function properly in this mode unless your PSTN provider supports special network signaling extensions and there aren't many PSTN providers that do.\n\nRetrieving a Virtual Extension settings requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Virtual Extension Settings", "operationId": "Modify Virtual Extension Settings", "description": "Update Virtual Extension details for the given extension ID.\n\nThis endpoint updates the virtual extension settings for an organization. It is primarily used to configure the operating mode for virtual extensions.\nModes determine how virtual extensions are assigned or managed within the system.\n\nUpdating a Virtual Extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "mode": "STANDARD" }, "schema": { "$ref": "#/components/schemas/VirtualExtensionSettingsPatchRequestObject" } } } } } }, "/telephony/config/virtualExtensions/actions/validateNumbers/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "string", "description": "status of external phone number." } } }, "example": { "status": "" } } } }, "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": "Validate an external phone number", "operationId": "Validate an external phone number", "description": "Validate external phone number for the given organization.\n\nThis API is designed to validate external phone numbers before they are assigned as virtual extensions for a customer.\nIt ensures that the provided numbers are properly formatted, eligible for use, and not already in use within the system.\nThis validation is typically part of a pre-check process during provisioning or number assignment workflows, helping administrators or systems prevent conflicts or errors related to number reuse or format issues.\n\nCreating a virtual extension requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumbers": [ "+1234567890", "+1987654321" ] }, "schema": { "$ref": "#/components/schemas/PostValidateExternalPhoneNumberObject" } } } } } }, "/telephony/config/virtualExtensionRanges": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created virtual extension range." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OX1JBTkdFLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw" } } } }, "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 Virtual Extension Range", "operationId": "Create a Virtual Extension Range", "description": "Create a new Virtual Extension Range for the given organization or location.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nVirtual extension range can be set up at the organization or location level.\n\nCreating a virtual extension range requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "SalesVirtualExtensionRange", "prefix": "+14089", "patterns": [ "12XXXX" ], "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" }, "schema": { "$ref": "#/components/schemas/PostVirtualExtensionRangeObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "virtualExtensionRanges": { "type": "array", "items": { "$ref": "#/components/schemas/GetVirtualExtensionRangeListObject" }, "description": "Array of virtual extension ranges." } } }, "example": { "virtualExtensionRanges": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OX1JBTkdFLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw", "name": "SalesVirtualExtensionRange", "prefix": "+12345", "level": "LOCATION", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "locationName": "Sales" } ] } } } }, "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 list of a Virtual Extension Range", "operationId": "Get a list of a Virtual Extension Range", "description": "Retrieves the list of Virtual Extension Ranges.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nRetrieving a virtual extension range requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Maximum number of results to return.", "example": "10", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "The starting index of the results to return.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Sort the list of virtual extension ranges by name or prefix, either ASC or DSC. Default sort order is ASC.", "example": "name", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Filter the list of virtual extension ranges by name.", "example": "SalesVirtualExtensionRange", "schema": { "type": "string" } }, { "name": "prefix", "in": "query", "description": "Filter the list of virtual extension ranges by prefix.", "example": "+1234", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Filter the list of virtual extension ranges by location ID. Only one of the `locationId` and `OrgLevelOnly` query parameters is allowed at the same time.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "orgLevelOnly", "in": "query", "description": "Filter the list of virtual extension ranges by organization level. If `orgLevelOnly` is true, return only the organization level virtual extension ranges.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/telephony/config/virtualExtensionRanges/{extensionRangeId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualExtensionRangeDetailsObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OX1JBTkdFLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw", "name": "SalesVirtualExtensionRange", "prefix": "+14089", "patterns": [ "12XXXX" ], "locationName": "Sales" } } } }, "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 details of a Virtual Extension Range", "operationId": "Get details of a Virtual Extension Range", "description": "Retrieve virtual extension range details for the given extension range ID.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nRetrieving a virtual extension range requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionRangeId", "in": "path", "description": "ID of the virtual extension range.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "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 Virtual Extension Range", "operationId": "Delete a Virtual Extension Range", "description": "Delete a virtual extension range for the given extension range ID.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nDeleting a virtual extension range requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionRangeId", "in": "path", "description": "ID of the virtual extension range.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA`", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualExtensionRanges/{extensionRangeId}/": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Virtual Extension Range", "operationId": "Modify Virtual Extension Range", "description": "Modify virtual extension range for the given extension range ID.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nModifying a virtual extension range requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "extensionRangeId", "in": "path", "description": "ID of the virtual extension range.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA`", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "SalesVirtualExtensionRange", "prefix": "+14089", "patterns": [ "12XXXX" ], "action": "ADD" }, "schema": { "$ref": "#/components/schemas/PutVirtualExtensionRangeObject" } } } } } }, "/telephony/config/virtualExtensionRanges/actions/validate/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateVirtualExtensionRangeResponseObject" }, "example": { "status": "OK" } } } }, "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": "Validate the prefix and extension pattern for a Virtual Extension Range", "operationId": "Validate the prefix and extension pattern for a Virtual Extension Range", "description": "Validate the prefix and extension pattern for a Virtual Extension Range.\n\nVirtual extension ranges integrate remote workers on a separate telephony system into Webex Calling and enable extension dialing. Using these ranges, you can define patterns that can be used to route calls at a location level or an organization level. You are allowed to define virtual extensions ranges in addition to individual virtual extensions.\nThis works in both Standard and Enhanced modes\n\nValidating a prefix and extension pattern for a Virtual Extension Range requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Features: Virtual Extensions" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "SalesVirtualExtensionRange", "prefix": "+14089", "patterns": [ "12XXXX" ], "rangeId": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA" }, "schema": { "$ref": "#/components/schemas/ValidateVirtualExtensionRangeRequestObject" } } } } } }, "/hotdesk/sessions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HotDeskSessionsResponse" }, "example": { "items": [ { "sessionId": "Y2lzY29...", "workspaceId": "YL34EmB...", "personId": "YL34EmA...", "bookingStartTime": "2024-08-29T12:00:00Z", "bookingEndTime": "2024-08-29T20: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 Sessions", "operationId": "List Sessions", "description": "List hot desk sessions.\n\nUse query parameters to filter the response.\nThe `orgId` parameter is for use by partner administrators acting on a managed organization.\nThe `personId` and `workspaceId` parameters are optional and are used to filter the response to only include sessions for a specific person or workspace.\nWhen used together they are used as an AND filter.", "tags": [ "Hot Desk" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List sessions in this organization. Only admin users of another organization (such as partners) may use this parameter.", "example": "Y2lzY29...", "schema": { "type": "string" } }, { "name": "personId", "in": "query", "description": "List sessions for this person.", "example": "YL34EmA...", "schema": { "type": "string" } }, { "name": "workspaceId", "in": "query", "description": "List sessions for this workspace.", "example": "YL34EmB...", "schema": { "type": "string" } } ] } }, "/hotdesk/sessions/{sessionId}": { "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 Session", "operationId": "Delete Session", "description": "Delete a hot desk session.", "tags": [ "Hot Desk" ], "parameters": [ { "name": "sessionId", "in": "path", "description": "The unique identifier for the hot desk session.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0hEU0VTU0lPTi9lZTY1NDQ5OC00OGU5LTQxMTItOWYxMi1lZmJiYTJkOTE4ZWV8MjAyNC0wNS0xMVQxMDowMDowMFo=", "schema": { "type": "string" } } ] } }, "/telephony/config/locations": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "locations" ], "properties": { "locations": { "type": "array", "items": { "$ref": "#/components/schemas/ListLocationObject" }, "description": "Array of locations." } } }, "example": { "locations": [ { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YyZmUzOGVkLTNmNGYtNGI1NC04M2YzLTk4MDg3MWQzMjM5Yw", "name": "Denver", "routingPrefix": "3", "outsideDialDigit": "1258", "callingLineId": { "phoneNumber": "+12145556985" }, "e911SetupRequired": false, "enforceOutsideDialDigit": true }, { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljYzc0NDgxLTk3ZjAtNDA1NS1iYTIxLWE0NDBkMjUzZTc3OA", "name": "Denver-2", "routingPrefix": "234", "outsideDialDigit": "12", "callingLineId": { "name": "Denver Incoming", "phoneNumber": null }, "e911SetupRequired": false, "enforceOutsideDialDigit": 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": "List Locations Webex Calling Details", "operationId": "List Locations Webex Calling Details", "description": "Lists Webex Calling locations for an organization with Webex Calling details.\n\nSearching and viewing locations with Webex Calling details in your\norganization require an administrator auth token with the\n`spark-admin:telephony_config_read` scope.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List locations for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of locations in the response.", "example": "100", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Specify the offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "List locations whose name contains this string.", "example": "Denver", "schema": { "type": "string" } }, { "name": "order", "in": "query", "description": "Sort the list of locations based on `name`, either asc or desc.", "example": "name-asc", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationCallingResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljYTNhZmQ3LTE5MjYtNGQ0ZS05ZDA3LTk5ZDJjMGU4OGFhMA" } } } }, "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": "Enable a Location for Webex Calling", "operationId": "Enable a Location for Webex Calling", "description": "Enable a location by adding it to Webex Calling. This add Webex Calling support to a\nlocation created created using the POST /v1/locations API.\n\nLocations are used to support calling features which can be defined at the location level.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "name": "Denver", "timeZone": "America/Chicago", "announcementLanguage": "fr_fr", "preferredLanguage": "en_us", "address": { "address1": "771 Alder Drive", "address2": "Cisco Site 5", "city": "Milpitas", "state": "CA", "postalCode": "95035", "country": "US" } }, "schema": { "$ref": "#/components/schemas/PostLocationCallingRequest" } } } } } }, "/telephony/config/locations/{locationId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetTelephonyLocationObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M5N2VlMDQ5LTM1OWItNGM3OC04NDU0LTA1OGMyZWRlMjU2Mw", "name": "Denver", "announcementLanguage": "fr_fr", "routingPrefix": "2", "callingLineId": { "name": "Denver Incoming", "phoneNumber": "+12145555698" }, "connection": { "type": "TRUNK", "id": "Y2lzY29zcGFyazovL3VzL1RSVU5LL2M1MGIxZjY2LTRjODMtNDAzNy04NjM1LTg2ZjlkM2VkZDQ5MQ" }, "subscriptionId": "trial", "externalCallerIdName": "Big Corp-Denver", "userLimit": 500000, "outsideDialDigit": "12", "pAccessNetworkInfo": "Richardson-TX", "defaultDomain": "98079822.int10.bcld.webex.com", "chargeNumber": "+14158952369", "enforceOutsideDialDigit": true, "useChargeNumberForPChargeInfo": 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 Location Webex Calling Details", "operationId": "Get Location Webex Calling Details", "description": "Shows Webex Calling details for a location, by ID.\n\nSpecifies the location ID in the locationId parameter in the URI.\n\nSearching and viewing locations in your organization requires an administrator auth token with the spark-admin:telephony_config_read scope.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve Webex Calling location attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve Webex Calling location attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationPUTResponse" }, "example": { "batchJobId": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wOThmNTg5MC05MTA4LTQ0YWMtODIxMy1lYmE4MGI4YzJkMjA" } } } }, "204": { "description": "No Content", "headers": {}, "content": {} }, "206": { "description": "Partial Content", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationPUTResponse" }, "example": { "failureReason": "UpdateRoutingPrefix batch job not triggered for Location: c7e4wasdfgjfec5c52. OldRoutingPrefix : 111. NewRoutingPrefix: 212." } } } }, "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.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationPUTResponse" }, "example": { "failureReason": "UpdateRoutingPrefixJob failed as another one is already in progress." } } } }, "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 Location Webex Calling Details", "operationId": "Update Location Webex Calling Details", "description": "Update Webex Calling details for a location, by ID.\n\nSpecifies the location ID in the `locationId` parameter in the URI.\n\nModifying the `connection` via API is only supported for the local PSTN types of `TRUNK` and `ROUTE_GROUP`.\n\nUpdating a location in your organization requires an administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Updating Webex Calling location attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Updating Webex Calling location attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "announcementLanguage": "fr_fr", "outsideDialDigit": "12", "routingPrefix": "212", "callingLineId": { "name": "Denver Incoming", "phoneNumber": "+12145555698" }, "connection": { "type": "TRUNK", "id": "Y2lzY29zcGFyazovL3VzL1RSVU5LL2M1MGIxZjY2LTRjODMtNDAzNy04NjM1LTg2ZjlkM2VkZDQ5MQ" }, "externalCallerIdName": "Big Corp-Denver", "pAccessNetworkInfo": "Richardson-TX", "chargeNumber": "+14158952369", "enforceOutsideDialDigit": true }, "schema": { "$ref": "#/components/schemas/PutTelephonyLocationObject" } } } } } }, "/telephony/config/jobs/updateRoutingPrefix": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/BatchResponse" } }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC81YWE1NWZjNC1lNTYwLTQ3MWQtOGZhZS0yNDc3NDM3MDNkNmI", "trackingId": "NA_e82bec92-7a6c-48e5-9511-bfe4da78396e", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "instanceId": 1, "jobExecutionStatus": [ { "id": 1, "startTime": "2023-08-16T18:30:20.901Z", "endTime": "2023-08-16T18:30:34.793Z", "lastUpdated": "2023-08-16T18:30:36.631Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-08-16T18:30:20.882Z", "stepExecutionStatuses": [ { "id": 2, "startTime": "2023-08-16T18:30:20.970Z", "endTime": "2023-08-16T18:30:22.801Z", "lastUpdated": "2023-08-16T18:30:22.801Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessMemberData", "timeElapsed": "PT1.831S" }, { "id": 3, "startTime": "2023-08-16T18:30:22.811Z", "endTime": "2023-08-16T18:30:26.022Z", "lastUpdated": "2023-08-16T18:30:26.022Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixGenerateUserReport", "timeElapsed": "PT3.211S" }, { "id": 4, "startTime": "2023-08-16T18:30:26.032Z", "endTime": "2023-08-16T18:30:26.538Z", "lastUpdated": "2023-08-16T18:30:26.538Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessCiUserData", "timeElapsed": "PT0.506S" }, { "id": 5, "startTime": "2023-08-16T18:30:26.549Z", "endTime": "2023-08-16T18:30:29.907Z", "lastUpdated": "2023-08-16T18:30:29.907Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixGenerateMachineAccountReport", "timeElapsed": "PT3.358S" }, { "id": 6, "startTime": "2023-08-16T18:30:29.916Z", "endTime": "2023-08-16T18:30:30.007Z", "lastUpdated": "2023-08-16T18:30:30.007Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessCiMachineAccountData", "timeElapsed": "PT0.091S" }, { "id": 7, "startTime": "2023-08-16T18:30:30.018Z", "endTime": "2023-08-16T18:30:34.447Z", "lastUpdated": "2023-08-16T18:30:34.447Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixFetchVONExtensions", "timeElapsed": "PT4.429S" }, { "id": 8, "startTime": "2023-08-16T18:30:34.466Z", "endTime": "2023-08-16T18:30:34.789Z", "lastUpdated": "2023-08-16T18:30:34.789Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixUpdateRoutingPrefix", "timeElapsed": "PT0.323S" } ], "timeElapsed": "PT13.749S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "routingPrefixFailed": 0, "routingPrefixUpdated": 7 } }, { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mZmU3MmVhMS1mMzBhLTQ4MDEtYjA1ZC1mNDQzM2IyZThiZDE", "trackingId": "NA_2688c70a-1887-443d-800b-7efe9cca346f", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-08-16T18:27:44.392Z", "endTime": "2023-08-16T18:28:00.474Z", "lastUpdated": "2023-08-16T18:28:02.621Z", "statusMessage": "FAILED", "exitCode": "FAILED", "createdTime": "2023-08-16T18:27:44.341Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-08-16T18:27:56.083Z", "endTime": "2023-08-16T18:27:58.294Z", "lastUpdated": "2023-08-16T18:27:58.294Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessMemberData", "timeElapsed": "PT2.211S" }, { "id": 1, "startTime": "2023-08-16T18:27:58.305Z", "endTime": "2023-08-16T18:28:00.469Z", "lastUpdated": "2023-08-16T18:28:00.469Z", "statusMessage": "FAILED", "exitCode": "FAILED", "name": "updateroutingprefixGenerateUserReport", "timeElapsed": "PT2.164S" } ], "timeElapsed": "PT4.375S" } ], "latestExecutionStatus": "FAILED", "latestExecutionExitCode": "FAILED", "counts": { "routingPrefixFailed": 0, "routingPrefixUpdated": 0 } } ] } } } }, "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 List of Update Routing Prefix jobs", "operationId": "Get a List of Update Routing Prefix jobs", "description": "Get the list of all update routing prefix jobs in an organization.\n\nThe routing prefix is associated with a location and is used to route calls belonging to that location.\nThis API allows users to retrieve all the update routing prefix jobs in an organization.\n\nRetrieving the list of update routing prefix jobs in an organization requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of update routing prefix jobs in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/updateRoutingPrefix/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BatchResponse" }, "example": { "name": "updateroutingprefix", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC81YWE1NWZjNC1lNTYwLTQ3MWQtOGZhZS0yNDc3NDM3MDNkNmI", "trackingId": "NA_e82bec92-7a6c-48e5-9511-bfe4da78396e", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "instanceId": 1, "jobExecutionStatus": [ { "id": 1, "startTime": "2023-08-16T18:30:20.901Z", "endTime": "2023-08-16T18:30:34.793Z", "lastUpdated": "2023-08-16T18:30:36.631Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-08-16T18:30:20.882Z", "stepExecutionStatuses": [ { "id": 2, "startTime": "2023-08-16T18:30:20.970Z", "endTime": "2023-08-16T18:30:22.801Z", "lastUpdated": "2023-08-16T18:30:22.801Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessMemberData", "timeElapsed": "PT1.831S" }, { "id": 3, "startTime": "2023-08-16T18:30:22.811Z", "endTime": "2023-08-16T18:30:26.022Z", "lastUpdated": "2023-08-16T18:30:26.022Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixGenerateUserReport", "timeElapsed": "PT3.211S" }, { "id": 4, "startTime": "2023-08-16T18:30:26.032Z", "endTime": "2023-08-16T18:30:26.538Z", "lastUpdated": "2023-08-16T18:30:26.538Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessCiUserData", "timeElapsed": "PT0.506S" }, { "id": 5, "startTime": "2023-08-16T18:30:26.549Z", "endTime": "2023-08-16T18:30:29.907Z", "lastUpdated": "2023-08-16T18:30:29.907Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixGenerateMachineAccountReport", "timeElapsed": "PT3.358S" }, { "id": 6, "startTime": "2023-08-16T18:30:29.916Z", "endTime": "2023-08-16T18:30:30.007Z", "lastUpdated": "2023-08-16T18:30:30.007Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixPreProcessCiMachineAccountData", "timeElapsed": "PT0.091S" }, { "id": 7, "startTime": "2023-08-16T18:30:30.018Z", "endTime": "2023-08-16T18:30:34.447Z", "lastUpdated": "2023-08-16T18:30:34.447Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixFetchVONExtensions", "timeElapsed": "PT4.429S" }, { "id": 8, "startTime": "2023-08-16T18:30:34.466Z", "endTime": "2023-08-16T18:30:34.789Z", "lastUpdated": "2023-08-16T18:30:34.789Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "updateroutingprefixUpdateRoutingPrefix", "timeElapsed": "PT0.323S" } ], "timeElapsed": "PT13.749S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "routingPrefixFailed": 0, "routingPrefixUpdated": 7 } } } } }, "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 the job status of Update Routing Prefix job", "operationId": "Get the job status of Update Routing Prefix job", "description": "Get the status of the update routing prefix job by its job ID.\n\nThe routing prefix is associated with a location and is used to route calls belonging to that location.\nThis API allows users to check the status of update routing prefix job by job ID in an organization.\n\nChecking the status of the update routing prefix job in an organization requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job status for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC81YWE1NWZjNC1lNTYwLTQ3MWQtOGZhZS0yNDc3NDM3MDNkNmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Check update routing prefix job status in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/updateRoutingPrefix/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BatchJobError" }, "example": { "items": [ { "itemNumber": 6, "error": { "key": "500", "message": [ { "description": "invalid number (id=c5b6ef12-070f-4752-be52-7ae62795ae7f, displayName=Test AutoAttendant, type=Machine, oldExtension=8000081234, newExtension=7000071234)", "code": null, "locationId": null } ] }, "trackingId": "NA_e82bec92-7a6c-48e5-9511-bfe4da78396e_6" }, { "itemNumber": 7, "error": { "key": "500", "message": [ { "description": "invalid number (id=296f10e8-ac6e-41d8-ae20-7371c4b6079b, displayName=PagingGroup01, type=Machine, oldExtension=80000855643, newExtension=70000755643)", "code": null, "locationId": null } ] }, "trackingId": "NA_e82bec92-7a6c-48e5-9511-bfe4da78396e_7" }, { "itemNumber": 8, "error": { "key": "500", "message": [ { "description": "invalid number (id=41a03fb9-86cd-42c1-a24b-396d9b8d5ac1, displayName=WSwithRP, type=Machine, oldExtension=80000823678, newExtension=70000723678)", "code": null, "locationId": null } ] }, "trackingId": "NA_e82bec92-7a6c-48e5-9511-bfe4da78396e_8" } ] } } } }, "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 job errors for update routing prefix job", "operationId": "Get job errors for update routing prefix job", "description": "GET job errors for the update routing prefix job in an organization.\n\nThe routing prefix is associated with a location and is used to route calls belonging to that location.\nThis API allows users to retrieve all the errors of the update routing prefix job by job ID in an organization.\n\nRetrieving all the errors of the update routing prefix job in an organization requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job errors for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC81YWE1NWZjNC1lNTYwLTQ3MWQtOGZhZS0yNDc3NDM3MDNkNmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve list of errors for update routing prefix job in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/actions/modifyAnnouncementLanguage/invoke": { "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": "Change Announcement Language", "operationId": "Change Announcement Language", "description": "Change announcement language for the given location.\n\nChange announcement language for current people/workspaces and/or existing feature configurations. This does not change the default announcement language which is applied to new users/workspaces and new feature configurations.\n\nChanging the announcement language for the given location requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Change announcement language for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Change announcement language for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "agentEnabled": true, "serviceEnabled": true, "announcementLanguageCode": "en_us" }, "schema": { "$ref": "#/components/schemas/PostLocationAnnouncementLanguageObject" } } } } } }, "/telephony/config/locations/{locationId}/features/emergencyCallbackNumber": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationCallBackNumberObject" }, "example": { "locationInfo": { "phoneNumber": "+12145551767", "name": "CPAPI_Dev_Test_Location_DND", "effectiveLevel": "LOCATION_NUMBER", "effectiveValue": "+12145551767", "quality": "RECOMMENDED" }, "locationMemberInfo": { "phoneNumber": "+12145551767", "firstName": "cpapiandhydra", "lastName": "cpapiandhydra@gmail.com", "memberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MmQ3YTY3MS00YmVlLTQ2MDItOGVkOC1jOTFmNjU5NjcxZGI", "memberType": "PEOPLE", "effectiveLevel": "LOCATION_MEMBER_NUMBER", "effectiveValue": "+12145551767", "quality": "RECOMMENDED" }, "selected": "LOCATION_MEMBER_NUMBER", "elinExpiryTimeMinutes": 60 } } } }, "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 Location Emergency callback number", "operationId": "Get a Location Emergency callback number", "description": "Get location emergency callback number.\n\n* To retrieve location callback number requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update location attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update location attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Location Emergency callback number", "operationId": "Update a Location Emergency callback number", "description": "Update details for a location emergency callback number.\n\n* Updating a location callback number requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update location attributes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update location attributes for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_MEMBER_NUMBER", "locationMemberId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hOTc0MzVjZi0zYTZmLTRmNGYtOWU1OC00OTI2OTQ5MDkwMWY", "elinExpiryTimeMinutes": 90 }, "schema": { "$ref": "#/components/schemas/PutLocationCallBackNumberObject" } } } } } }, "/telephony/config/actions/validateExtensions/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PostValidateExtensionResponse" }, "example": { "status": "OK | ERRORS", "extensionStatus": [ { "extension": "", "state": "VALID | DUPLICATE | DUPLICATE_IN_LIST | INVALID", "errorCode": "", "message": "" } ] } } } }, "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": "Validate the List of Extensions", "operationId": "Validate the List of Extensions", "description": "Validates the list of Extensions provided by the customer at the organization level. It checks the extension meets the current extension length limits and does not conflict with the extensions of organization-level entities and settings. To check for extension use across all locations, use the [Get Phone Numbers](/v1/telephony/config/numbers) API. To validate an extension and check for conflicts for a specific location, use the [Validate Extensions](/docs/api/v1/location-call-settings/validate-extensions) API.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Validate Extension for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "extensions": [ "1234", "3144" ] }, "schema": { "$ref": "#/components/schemas/PostValidateExtension" } } } } } }, "/telephony/config/locations/{locationId}/actions/validateExtensions/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusOfExtensionsObject" }, "example": { "status": "ERRORS", "extensionStatus": [ { "extension": "407721", "state": "DUPLICATE", "errorCode": 9495, "message": "[Error 9495] The extension is not available. It is already assigned as a Call Park Extension: 407721." }, { "extension": "507721", "state": "VALID" }, { "extension": "507721", "state": "DUPLICATE_IN_LIST", "errorCode": 9498 }, { "extension": "911", "state": "INVALID", "errorCode": 4911, "message": "[Error 4911] Invalid extension. The extension cannot be an emergency number." }, { "extension": "a234", "state": "INVALID", "errorCode": 4910, "message": "[Error 4910] Invalid extension. The extension can only contain characters 0-9." } ] } } } }, "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": "Validate Extensions", "operationId": "Validate Extensions", "description": "Validate extensions for a specific location.\n\nValidating extensions requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Validate extensions for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Validate extensions for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "extensions": [ "407721", "507721", "507721", "9111", "a234" ] }, "schema": { "$ref": "#/components/schemas/ArrayOfExtensionsObject" } } } } } }, "/telephony/config/locations/{locationId}/musicOnHold": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Music On Hold", "operationId": "Update Music On Hold", "description": "Update the location's music on hold settings.\n\nLocation music on hold settings allows you to play music when a call is placed on hold or parked.\n\nUpdating a location's music on hold settings requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update music on hold settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update music on hold settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callHoldEnabled": true, "callParkEnabled": true, "greeting": "SYSTEM", "audioFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "playlistId": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA" }, "schema": { "$ref": "#/components/schemas/PutMusicOnHoldObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMusicOnHoldObject" }, "example": { "callHoldEnabled": true, "callParkEnabled": true, "greeting": "SYSTEM", "audioFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" }, "playlist": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "name": "testingAnnouncementPlaylist" } } } } }, "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 Music On Hold", "operationId": "Get Music On Hold", "description": "Retrieve the location's music on hold settings.\n\nLocation music on hold settings allows you to play music when a call is placed on hold or parked.\n\nRetrieving a location's music on hold settings requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve music on hold settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0fetchcllrjjejgghbruudtlknjbcleukhihhgFUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve music on hold settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/privateNetworkConnect": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPrivateNetworkConnectObject" }, "example": { "networkConnectionType": "PUBLIC_INTERNET" } } } }, "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 Private Network Connect", "operationId": "Get Private Network Connect", "description": "Retrieve the location's network connection type.\n\nNetwork Connection Type determines if the location's network connection is public or private.\n\nRetrieving a location's network connection type requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve the network connection type for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve the network connection type for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Private Network Connect", "operationId": "Update Private Network Connect", "description": "Update the location's network connection type.\n\nNetwork Connection Type determines if the location's network connection is public or private.\n\nUpdating a location's network connection type requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the network connection type for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update network connection type for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "networkConnectionType": "PUBLIC_INTERNET" }, "schema": { "$ref": "#/components/schemas/PutPrivateNetworkConnectObject" } } } } } }, "/telephony/config/routeChoices": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "routeIdentities" ], "properties": { "routeIdentities": { "type": "array", "items": { "$ref": "#/components/schemas/RouteIdentity" }, "description": "Array of route identities." } } }, "example": { "routeIdentities": [ { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "name": "route_identity_name", "type": "ROUTE_GROUP" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Routing Choices", "operationId": "Read the List of Routing Choices", "description": "List all Routes for the organization.\n\nTrunk and Route Group qualify as Route. Trunks and Route Groups provide you the ability to configure Webex Calling to manage calls between Webex Calling hosted users and premises PBX users. This solution lets you configure users to use Cloud PSTN (CCP or Cisco PSTN) or Premises-based PSTN.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List route identities for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "routeGroupName", "in": "query", "description": "Return the list of route identities matching the Route group name.", "example": "routeGroupName", "schema": { "type": "string" } }, { "name": "trunkName", "in": "query", "description": "Return the list of route identities matching the Trunk name.", "example": "trunkName", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "order", "in": "query", "description": "Order the route identities according to the designated fields. Available sort fields: `routeName`, `routeType`.", "example": "my_test_trunk-asc|ROUTE_GROUP-desc", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/externalCallerId/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExternalCallerIdNumberListGet" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12036390542", "state": "ACTIVE", "isMainNumber": false, "tollFreeNumber": false, "isServiceNumber": true, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg", "name": "Bangalore" }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWkhabFpuQjVhblY2WjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "HUNT_GROUP", "displayName": "testingdemo" } }, { "phoneNumber": "+447975777966", "state": "ACTIVE", "isMainNumber": false, "tollFreeNumber": false, "isServiceNumber": false, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg", "name": "Bangalore" }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWW04MWMyNTVjWFZ6Y1VBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "HUNT_GROUP", "displayName": "CallertestingVeeresh9999te" } }, { "phoneNumber": "+447975777969", "state": "INACTIVE", "isMainNumber": true, "tollFreeNumber": false, "isServiceNumber": false, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg", "name": "Bangalore" }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82MGQxZGJlMC02MmNjLTQxZTEtOWE2MC1mZWQ1YmJkODUxZGQ", "type": "VIRTUAL_LINE", "firstName": "testingssss", "lastName": "dsdsd" } } ] } } } }, "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 the List of Phone Numbers Available for External Caller ID", "operationId": "Get the List of Phone Numbers Available for External Caller ID", "description": "Get the list of phone numbers available for external caller ID usage by a Webex Calling entity (such as a person, virtual line, or workspace) within the specified location.\nNumbers from the specified location are returned and cross location numbers are returned as well where the number's location has the same country, PSTN provider, and zone (only applicable for India locations) as the specified location.\nWhen `personId` is specified, and the person belongs to a cisco PSTN location, has a mobile number assigned as primary DN, and does not have a billing plan, only the assigned mobile number is returned as the available number for caller ID.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve available external caller ID numbers for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzZmQ1ZDMyLTRmYmItNGNjMS04ZTYxLTE0YTA1ZDhhMTIzMw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the provided list in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the provided list in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "personId", "in": "query", "description": "Retrieve available external caller ID numbers for this person. If `personId` is not provided it may result in the unsuccessful assignment of the returned number. This parameter has no effect when workspace or virtual line ID is used.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZmQ1ZDMyLTRmYmItNGNjMS04ZTYxLTE0YTA1ZDhhMTIzMw", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": 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 Available Phone Numbers for a Location with Given Criteria", "operationId": "Get Available Phone Numbers for a Location with Given Criteria", "description": "List the service and standard PSTN numbers that are available to be assigned as the location's main number.\nThese numbers are associated with the location specified in the request URL and can be active/inactive and assigned to an owning entity or unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/webexGo/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WebexGoAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Webex Go Available Phone Numbers", "operationId": "Get Webex Go Available Phone Numbers", "description": "List standard numbers that are available to be assigned as the webex go phone number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/locations/{locationId}/emergencyCallbackNumber/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationECBNAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NWQ3MmYwNS00NDYzLTQxYzktYjI0Ni01MDhkMDM2YzJhOTE", "type": "VIRTUAL_LINE", "displayName": "Test VL" } }, { "phoneNumber": "+12056350004", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWnpOcmEybHNkalV3ZDBCbWJHVjRNaTVqYVhOamJ5NWpiMjA9", "type": "HUNT_GROUP", "displayName": "Test HG" } } ] } } } }, "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 Location ECBN Available Phone Numbers", "operationId": "Get Location ECBN Available Phone Numbers", "description": "List standard numbers that are available to be assigned as the location's emergency callback number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/callIntercept/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationCallInterceptAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Location Call Intercept Available Phone Numbers", "operationId": "Get Location Call Intercept Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as the location's call intercept number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/receptionistContacts/directories": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Receptionist Contact Directory ID." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZEdWemRGOWthWEpsWTNSdmNuaz06OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh" } } } }, "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 Receptionist Contact Directory", "operationId": "Create a Receptionist Contact Directory", "description": "Create a new Receptionist Contact Directory for a location.\n\nReceptionist Contact Directories can be used to create named directories of users and/or location features (Auto Attendant, Call Queue, Hunt Group, Single Number Reach, and Paging Group).\n\nAdding a directory requires a full or write-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Add a Receptionist Contact Directory to this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Add a Receptionist Contact Directory to this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "test_directory", "contacts": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU" }, { "featureId": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "type": "AUTO_ATTENDANT" } ] }, "schema": { "$ref": "#/components/schemas/ContactPayload" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "directories" ], "properties": { "directories": { "type": "array", "items": { "$ref": "#/components/schemas/Directory" }, "description": "Array of Receptionist Contact Directories." } } }, "example": { "directories": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZEdWemRGOWthWEpsWTNSdmNuaz06OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "name": "test_directory" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read list of Receptionist Contact Directories", "operationId": "Read list of Receptionist Contact Directories", "description": "List all Receptionist Contact Directories for a location.\n\nReceptionist Contact Directories can be used to create named directories of users.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "List Receptionist Contact Directories for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List Receptionist Contact Directories for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/receptionistContacts/directories/{directoryId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "contacts" ], "properties": { "contacts": { "type": "array", "items": { "$ref": "#/components/schemas/ContactDetails" }, "description": "Array of Receptionist Contact Directories." } } }, "example": { "contacts": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81ZWI3MGUxNi1iYThmLTQzYzgtOWI5Yy1jZjNlNjQyNjEzN2Q", "firstName": "Alex_16", "lastName": "test_16", "phoneNumber": "+14234567895", "extension": "582", "mobile": "9725554729", "title": "Engineer", "featureId": null }, { "personId": null, "firstName": "Group Paging", "lastName": "Alex_pg_1", "phoneNumber": null, "extension": "676", "featureId": "Y2lzY29zcGFyazovL3VzL0dST1VQX1BBR0lORy8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU" } ] } } } }, "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 details for a Receptionist Contact Directory", "operationId": "Get details for a Receptionist Contact Directory", "description": "Get details for a specific Receptionist Contact Directory from a location.\n\nReceptionist Contact Directories are uniquely named per location and contain directories of Persons, Auto Attendants, Call Queues, Hunt Groups, Single Number Reaches, and Paging Groups.\n\nThis API is currently supported for Webex calling organizations with fewer than 2000 users or location-based calling features. For organizations with more than 2000 users or location features, the API will throw an error 25395.\n\nRetrieving details requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Get a Receptionist Contact Directory from this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "directoryId", "in": "path", "description": "Get details for the Receptionist Contact Directory with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFUEFSVE1FTlQvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Get a Receptionist Contact Directory from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "searchCriteriaModeOr", "in": "query", "description": "When `true`, results matching any one of the search criteria are included. The value can only be `true` or not included in the request. Specifying `searchCriteriaModeOr` without any search criteria, or setting it to `false` results in an `ErrorResponse`. If no search criteria is specified, all results are returned.", "example": "true", "schema": { "type": "boolean" } }, { "name": "firstName", "in": "query", "description": "Search for directories that contain people with the indicated first name.", "example": "John", "schema": { "type": "string" } }, { "name": "lastName", "in": "query", "description": "Search for directories that contain people with the indicated last name.", "example": "Doe", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search for directories that contain people with the indicated phone number.", "example": "+12225555309", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search for directories that contain people with the indicated extension.", "example": "5309", "schema": { "type": "string" } }, { "name": "personId", "in": "query", "description": "Search for directories that contain people with the indicated person ID.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "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 Receptionist Contact Directory", "operationId": "Delete a Receptionist Contact Directory", "description": "Delete a Receptionist Contact Directory from a location.\n\nReceptionist Contact Directories can be used to create named directories of users.\n\nDeleting a directory requires a full or write-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete a Receptionist Contact Directory from this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "directoryId", "in": "path", "description": "Delete the Receptionist Contact Directory ID with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvUkdseVpXTjBiM0o1VkdWemREY3lNRGMxOjJiOTQzMWIzLWMyYWUtNDhhYi1iMDQxLWE2ZThiMjY1NjJjOQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete a Receptionist Contact Directory from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created Receptionist directory name." } } }, "example": { "name": "test_directory", "contacts": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk" ] } } } }, "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": "Modify a Receptionist Contact Directory", "operationId": "Modify a Receptionist Contact Directory", "description": "Modify Receptionist Contact Directories attached to a location. This modification will replace the existing list of contacts with the new incoming contacts list from the request body. The API does not support incremental updates.\n\nReceptionist Contact Directories can be used to create named groups of Persons, Auto Attendants, Call Queues, Hunt Groups, Single Number Reaches, and Paging Groups.\n\nModifying a directory requires a full or write-only administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Modify list of Receptionist Contact Directories for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "schema": { "type": "string" } }, { "name": "directoryId", "in": "path", "description": "Get details for the Receptionist Contact Directory with this identifier.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0RFUEFSVE1FTlQvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify list of Receptionist Contact Directories for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "test_directory", "contacts": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk" ] }, "schema": { "$ref": "#/components/schemas/ContactPayloadForModify" } } } } } }, "/telephony/config/locations/{locationId}/chargeNumber/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationAvailableChargeNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056852221", "state": "ACTIVE", "isMainNumber": false, "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Alex", "lastName": "test_16", "displayName": "Alex test_16" } } ] } } } }, "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 Available Charge Numbers for a Location with Given Criteria", "operationId": "GetAvailableChargeNumbersList", "description": "List the numbers that are available to be assigned as the location's charge number.\n\nThese numbers are non-toll-free and non-mobile numbers assigned to the location specified in the request URL.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of available charge numbers for this location within the given organization. The maximum length is 36.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/locations/deleteCallingLocation": { "post": { "responses": { "202": { "description": "Accepted", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DisableCallingLocationJobStatus" }, "example": { "name": "deletecallinglocation", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8zZjczYTAyOS1lYWZkLTQ5NzUtYjcyYi1jNzlkYWE1ZTkyZmE", "trackingId": "ROUTERGW_882b1b3b-b247-4d4f-abe9-4ccec7f7e3b0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kMzg2MjhiYy0zYjk4LTRjMjMtODEwMy0wMzRhMjI0ZmRiNjE", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "instanceId": 1472955, "jobExecutionStatus": [ { "id": 1497186, "lastUpdated": "2025-07-27T13:19:39.702Z", "statusMessage": "STARTING", "exitCode": "UNKNOWN", "createdTime": "2025-07-27T13:19:39.702Z", "timeElapsed": "PT0S" } ], "latestExecutionStatus": "STARTING", "latestExecutionExitCode": "UNKNOWN", "locationName": "San Jose HQ" } } } }, "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." }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Disable a Location for Webex Calling", "operationId": "Disable Location For Webex Calling", "description": "Disable a Location for Webex Calling.\n\nInitiating a disable calling location job requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\nThe API returns a jobId that can be used with other job-related APIs to track the status and progress of the disable operation.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization ID for disabling the location for Webex Calling.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DisableCallingLocationPostRequest" }, "example": { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2Y1YjFlMWE3LTQ2MWQtNGUwZC1hYmNiLTQwM2IyMzViNDMzMQ", "locationName": "San Jose HQ", "forceDelete": true } } }, "required": true } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/DisableCallingLocationJobStatus" }, "description": "List of disable calling location jobs." } } }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC80NGNjYzRjMi00YmUxLTRhNjEtOGM5ZC03OTc3YjU4NTM0MWQ", "trackingId": "ROUTERGW_c4fc3b45-793e-4744-bb08-ee13032112c7", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kMzg2MjhiYy0zYjk4LTRjMjMtODEwMy0wMzRhMjI0ZmRiNjE", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "instanceId": 1488100, "jobExecutionStatus": [ { "id": 1512544, "startTime": "2025-07-29T13:37:20.098Z", "endTime": "2025-07-29T13:37:27.805Z", "lastUpdated": "2025-07-29T13:37:33.441Z", "statusMessage": "FAILED", "exitCode": "FAILED", "createdTime": "2025-07-29T13:37:19.995Z", "stepExecutionStatuses": [ { "id": 5572963, "startTime": "2025-07-29T13:37:25.555Z", "endTime": "2025-07-29T13:37:26.283Z", "lastUpdated": "2025-07-29T13:37:26.424Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationInitializer", "timeElapsed": "PT0.727654S" }, { "id": 5572964, "startTime": "2025-07-29T13:37:26.445Z", "endTime": "2025-07-29T13:37:27.603Z", "lastUpdated": "2025-07-29T13:37:27.795Z", "statusMessage": "FAILED", "exitCode": "FAILED", "name": "deletecallinglocationSafeDeleteCheck", "timeElapsed": "PT1.158801S" } ], "timeElapsed": "PT1.886455S" } ], "latestExecutionStatus": "FAILED", "latestExecutionExitCode": "FAILED", "locationName": "San Jose HQ" } ] } } } }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Get a List of Disable Calling Location Jobs", "operationId": "Get List Of Disable Calling Location Jobs", "description": "Get a List of Disable Calling Location Jobs for the organization.\n\nRetrieving the list of disable calling location jobs requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List disable calling location jobs for this organization.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" }, { "name": "max", "in": "query", "description": "Maximum number of jobs to return.", "schema": { "type": "integer", "default": 20 } }, { "name": "start", "in": "query", "description": "Offset to start returning records from.", "schema": { "type": "integer", "default": 0 } } ] } }, "/telephony/config/locations/{locationId}/actions/precheckForDeletion/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SafeDeleteCheckForDisableCallingLocationResponse" }, "example": { "locationDeleteStatus": "FORCE_REQUIRED", "blocking": { "lastLocation": false, "trunksInUseCount": 0, "usersInUseCount": 0, "workspacesInUseCount": 0, "virtualLineInUseCount": 0, "numbersOrderPending": false }, "nonBlocking": { "numbersPresent": true }, "blockingUnlessForced": { "nonUserEntitiesInUse": true, "trunksCount": 2 } } } } }, "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." }, "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." }, "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." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Safe Delete Check Before Disabling a Location for Webex Calling", "operationId": "Safe Delete Check Before Disabling Calling Location", "description": "Performs a safe delete check operation to identify any issues that would prevent the calling location from being disabled. This API helps identify resources that need to be addressed before a calling location can be successfully disabled.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location to be checked.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzk2ZjA0YjUwLTYxMWItNGViYy05ZGE0LTQwMzU4ODYxZTI4NQ" }, { "name": "orgId", "in": "query", "description": "Organization ID for which the safe delete check operation is being performed.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ] } }, "/telephony/config/jobs/locations/deleteCallingLocation/{jobId}/actions/pause/invoke": { "post": { "responses": { "202": { "description": "Accepted", "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." }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Pause a Disable Calling Location Job", "operationId": "Pause Disable Calling Location Job", "description": "Pause an in-progress disable calling location job. The job must be in the PROCESSING state to be paused.\n\nPausing a job requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Unique identifier for the job to pause.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0" }, { "name": "orgId", "in": "query", "description": "Organization ID for which to pause the job.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ] } }, "/telephony/config/jobs/locations/deleteCallingLocation/{jobId}/actions/resume/invoke": { "post": { "responses": { "202": { "description": "Accepted", "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." }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Resume a Paused Disable Calling Location Job", "operationId": "Resume Paused Disable Calling Location Job", "description": "Resume a previously paused disable calling location job. The job must be in the PAUSED state to be resumed.\n\nResuming a job requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Unique identifier for the job to resume.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0" }, { "name": "orgId", "in": "query", "description": "Organization ID for which to resume the job.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ] } }, "/telephony/config/jobs/locations/deleteCallingLocation/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedResult" }, "example": { "items": [ { "itemNumber": 1, "errorType": "ERROR", "error": { "key": "500", "message": [ { "description": "Safe delete checks failed.", "code": "BATCH-1012004", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzk2ZjA0YjUwLTYxMWItNGViYy05ZGE0LTQwMzU4ODYxZTI4NQ" } ] }, "trackingId": "ROUTERGW_c4fc3b45-793e-4744-bb08-ee13032112c7" }, { "itemNumber": 2, "errorType": "ERROR", "error": { "key": "400", "message": [ { "description": "Users associated with the location. Count: 5", "code": "BATCH-1012007", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzk2ZjA0YjUwLTYxMWItNGViYy05ZGE0LTQwMzU4ODYxZTI4NQ" } ] }, "trackingId": "ROUTERGW_c4fc3b45-793e-4744-bb08-ee13032112c7" } ] } } } }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Retrieve Errors for a Disable Calling Location Job", "operationId": "Retrieve Errors For Disable Calling Location Job", "description": "Retrieve detailed error information for a disable calling location job. This is particularly useful for jobs that have failed or encountered errors during processing.\n\nRetrieving job errors requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\nPossible error codes include:\n* `BATCH-1012002` - Unable to delete calling location from Broadworks.\n* `BATCH-1012004` - Safe delete checks failed.\n* `BATCH-1012005` - Failed to perform safe delete checks.\n* `BATCH-1012006` - Trunks in use in the location. Count: {0}\n* `BATCH-1012007` - Users associated with the location. Count: {0}\n* `BATCH-1012008` - Workspaces associated with the location. Count: {0}\n* `BATCH-1012009` - Virtual lines associated with the location. Count: {0}\n* `BATCH-1012010` - Number order is pending.\n* `BATCH-1012011` - Features associated with the location. This is a blocking error, use forceDelete to disable the calling location.\n* `BATCH-1012012` - Not allowed to delete the last calling location. Calling requires at least one active location in the organization, This is a blocking error.\n* `BATCH-1012013` - Local gateway's associated with the location. Count: {0}. This is a blocking error, use forceDelete to disable the calling location.\n* `BATCH-1012014` - Location not found.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Unique identifier for the job to get errors for.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0" }, { "name": "orgId", "in": "query", "description": "Organization ID for disable calling location job.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ] } }, "/telephony/config/jobs/locations/deleteCallingLocation/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DisableCallingLocationJobStatus" }, "example": { "name": "deletecallinglocation", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8zZjczYTAyOS1lYWZkLTQ5NzUtYjcyYi1jNzlkYWE1ZTkyZmE", "trackingId": "ROUTERGW_882b1b3b-b247-4d4f-abe9-4ccec7f7e3b0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kMzg2MjhiYy0zYjk4LTRjMjMtODEwMy0wMzRhMjI0ZmRiNjE", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "instanceId": 1472955, "jobExecutionStatus": [ { "id": 1497186, "startTime": "2025-07-27T13:19:39.875Z", "endTime": "2025-07-27T13:19:51.752Z", "lastUpdated": "2025-07-27T13:19:55.413Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2025-07-27T13:19:39.702Z", "stepExecutionStatuses": [ { "id": 5543084, "startTime": "2025-07-27T13:19:43.449Z", "endTime": "2025-07-27T13:19:44.328Z", "lastUpdated": "2025-07-27T13:19:44.523Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationInitializer", "timeElapsed": "PT0.878554S" }, { "id": 5543085, "startTime": "2025-07-27T13:19:44.534Z", "endTime": "2025-07-27T13:19:46.029Z", "lastUpdated": "2025-07-27T13:19:46.212Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationSafeDeleteCheck", "timeElapsed": "PT1.495006S" }, { "id": 5543086, "startTime": "2025-07-27T13:19:46.226Z", "endTime": "2025-07-27T13:19:46.554Z", "lastUpdated": "2025-07-27T13:19:46.753Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationGetLocationuUserDataFromCpApi", "timeElapsed": "PT0.327352S" }, { "id": 5543087, "startTime": "2025-07-27T13:19:46.229Z", "endTime": "2025-07-27T13:19:46.890Z", "lastUpdated": "2025-07-27T13:19:47.091Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationGetLocationMachineDataFromCpApi", "timeElapsed": "PT0.660953S" }, { "id": 5543088, "startTime": "2025-07-27T13:19:47.103Z", "endTime": "2025-07-27T13:19:49.752Z", "lastUpdated": "2025-07-27T13:19:49.936Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationDelLocFromBifrost", "timeElapsed": "PT2.648411S" }, { "id": 5543089, "startTime": "2025-07-27T13:19:49.947Z", "endTime": "2025-07-27T13:19:50.278Z", "lastUpdated": "2025-07-27T13:19:50.466Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationDelUserAsMachineAcctInCI", "timeElapsed": "PT0.330448S" }, { "id": 5543090, "startTime": "2025-07-27T13:19:49.950Z", "endTime": "2025-07-27T13:19:51.536Z", "lastUpdated": "2025-07-27T13:19:51.745Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "deletecallinglocationDelMachineAcctInCI", "timeElapsed": "PT1.586017S" } ], "timeElapsed": "PT7.926741S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "totalVirtualExtensionsAccount": 0, "virtualExtensionsDeleted": 0, "virtualExtensionsDeleteFailed": 0, "totalFeatureAccounts": 1, "featureAccountsDeleted": 1, "featureAccountsDeleteFailed": 0 }, "locationName": "San Jose HQ" } } } }, "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." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited." }, "500": { "description": "Internal Server Error: Something went wrong on the server." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Get Disable Calling Location Job Status", "operationId": "Get Disable Calling Location Job Status", "description": "Get the status and details of a specific disable calling location job.\n\nRetrieving job status requires a full administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Unique identifier for the job.", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0" }, { "name": "orgId", "in": "query", "description": "Organization ID for which to retrieve the job status.", "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE" } ] } }, "/telephony/config/locations/{locationId}/callCaptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationCallCaptionsObject" }, "example": { "locationClosedCaptionsEnabled": true, "locationTranscriptsEnabled": true, "orgClosedCaptionsEnabled": true, "orgTranscriptsEnabled": true, "useOrgSettingsEnabled": 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 the location call captions settings", "operationId": "Get the location call captions settings", "description": "Retrieve the location's call captions settings.\n\n**NOTE**: The call captions feature is not supported for locations in India.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the location call captions settings", "operationId": "Update the location call captions settings", "description": "Update the location's call captions settings.\n\n**NOTE**: The call captions feature is not supported for locations in India.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Unique identifier for the location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "locationClosedCaptionsEnabled": true, "locationTranscriptsEnabled": true, "useOrgSettingsEnabled": true }, "schema": { "$ref": "#/components/schemas/UpdateLocationCallCaptionsObject" } } } } } }, "/telephony/config/locations/{locationId}/actions/generatePassword/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GeneratePasswordPostResponse" }, "example": { "exampleSipPassword": "xyz123!" } } } }, "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": "Generate example password for Location", "operationId": "Generate example password for Location", "description": "Generates an example password using the effective password settings for the location. If you don't specify anything in the `generate` field or don't provide a request body, then you will receive a SIP password by default.\n\nUsed while creating a trunk and shouldn't be used anywhere else.\n\nGenerating an example password requires a full or write-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location for which example password has to be generated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the location belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "generate": [ "sip" ] }, "schema": { "type": "object", "properties": { "generate": { "type": "array", "items": { "$ref": "#/components/schemas/PasswordGenerate" }, "description": "password settings array." } } } } } } } }, "/telephony/config/locations/{locationId}/internalDialing": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalDialingGet" }, "example": { "enableUnknownExtensionRoutePolicy": true, "unknownExtensionRouteIdentity": { "id": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "name": "route_identity_name", "type": "ROUTE_GROUP" } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the Internal Dialing configuration for a location", "operationId": "Read the Internal Dialing configuration for a location", "description": "Get current configuration for routing unknown extensions to the Premises as internal calls\n\nIf some users in a location are registered to a PBX, retrieve the setting to route unknown extensions (digits that match the extension length) to the PBX.\n\nRetrieving the internal dialing configuration requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "location for which internal calling configuration is being requested", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List route identities for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify the Internal Dialing configuration for a location", "operationId": "Modify the Internal Dialing configuration for a location", "description": "Modify current configuration for routing unknown extensions to the premise as internal calls\n\nIf some users in a location are registered to a PBX, enable the setting to route unknown extensions (digits that match the extension length) to the PBX.\n\nEditing the internal dialing configuration requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "location for which internal calling configuration is being requested", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List route identities for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalDialingPut" } } } } } }, "/telephony/config/locations/{locationId}/intercept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationInterceptObject" }, "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "fileName": "audiofile.wav", "newNumber": { "enabled": true, "destination": "2147691003" }, "zeroTransfer": { "enabled": true, "destination": "2147691005" } } }, "outgoing": { "type": "ALLOW_LOCAL_ONLY", "transferEnabled": true, "destination": "2147691007" } } } } }, "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 Location Intercept", "operationId": "Get Location Intercept", "description": "Retrieve intercept location details for a customer location.\n\nIntercept incoming or outgoing calls for persons in your organization. If this is enabled, calls are either routed to a designated number the person chooses, or to the person's voicemail.\n\nRetrieving intercept location details requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve intercept details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve intercept location details for a customer location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Put Location Intercept", "operationId": "Put Location Intercept", "description": "Modifies the intercept location details for a customer location.\n\nIntercept incoming or outgoing calls for users in your organization. If this is enabled, calls are either routed to a designated number the user chooses, or to the user's voicemail.\n\nModifying the intercept location details requires a full, user administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Modifies the intercept details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modifies the intercept location details for a customer location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "fileName": "audiofile.wav", "newNumber": { "enabled": true, "destination": "2147691003" }, "zeroTransfer": { "enabled": true, "destination": "2147691005" } } }, "outgoing": { "type": "ALLOW_LOCAL_ONLY", "transferEnabled": true, "destination": "2147691007" } }, "schema": { "$ref": "#/components/schemas/PutLocationInterceptObject" } } } } } }, "/telephony/config/locations/{locationId}/outgoingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "callingPermissions": { "type": "array", "items": { "$ref": "#/components/schemas/CallingPermissionObject" }, "description": "Array of calling permissions." } } }, "example": { "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "TOLL_FREE", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "INTERNATIONAL", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": true }, { "callType": "OPERATOR_ASSISTED", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "CHARGEABLE_DIRECTORY_ASSISTED", "action": "BLOCK", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_I", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_II", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "PREMIUM_SERVICES_I", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": true }, { "callType": "PREMIUM_SERVICES_II", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": true }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": 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 Location Outgoing Permission", "operationId": "Get Location Outgoing Permission", "description": "Retrieve the location's outgoing call settings.\n\nA location's outgoing call settings allow you to determine the types of calls the people/workspaces at the location are allowed to make, as well as configure the default calling permission for each call type at the location.\n\nRetrieving a location's outgoing call settings requires a full, user or read-only administrator or location administrator auth token with a scope of spark-admin:telephony_config_read.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve outgoing call settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve outgoing call settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Location Outgoing Permission", "operationId": "Update Location Outgoing Permission", "description": "Update the location's outgoing call settings.\n\nLocation's outgoing call settings allows you to determine the types of calls the people/workspaces at this location are allowed to make and configure the default calling permission for each call type at a location.\n\nUpdating a location's outgoing call settings requires a full administrator or location administrator auth token with a scope of spark-admin:telephony_config_write.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update outgoing call settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update outgoing call settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true } ] }, "schema": { "type": "object", "properties": { "callingPermissions": { "type": "array", "items": { "$ref": "#/components/schemas/CallingPermissionPatchObject" }, "description": "Array specifying the subset of calling permissions to be updated." } } } } } } } }, "/telephony/config/locations/{locationId}/outgoingPermission/autoTransferNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAutoTransferNumberObject" }, "example": { "autoTransferNumber1": "1234456789", "autoTransferNumber2": "2234567891", "autoTransferNumber3": "3234567891" } } } }, "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 Outgoing Permission Auto Transfer Number", "operationId": "Get Outgoing Permission Auto Transfer Number", "description": "Get the transfer numbers for the outbound permission in a location.\n\nOutbound permissions can specify which transfer number an outbound call should transfer to via the `action` field.\n\nRetrieving an auto transfer number requires a full, user or read-only administrator or location administrator auth token with a scope of spark-admin:telephony_config_read.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve auto transfer number for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve auto transfer number for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Put Outgoing Permission Auto Transfer Number", "operationId": "Put Outgoing Permission Auto Transfer Number", "description": "Modifies the transfer numbers for the outbound permission in a location.\n\nOutbound permissions can specify which transfer number an outbound call should transfer to via the `action` field.\n\nUpdating auto transfer number requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Updating auto transfer number for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Updating auto transfer number for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "autoTransferNumber1": "1234456789", "autoTransferNumber2": "2234567891", "autoTransferNumber3": "3234567891" }, "schema": { "$ref": "#/components/schemas/PutAutoTransferNumberObject" } } } } } }, "/telephony/config/locations/{locationId}/outgoingPermission/accessCodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationAccessCodeObject" }, "example": { "accessCodes": [ { "code": "123", "description": "Main Access Code" }, { "code": "456", "description": "Alternate Access Code" } ] } } } }, "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 Outgoing Permission Location Access Code", "operationId": "Get Outgoing Permission Location Access Code", "description": "Retrieve access codes details for a customer location.\n\nUse Access Codes to bypass the set permissions for all persons/workspaces at this location.\n\nRetrieving access codes details requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve access codes details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve access codes details for a customer location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "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": "Create Outgoing Permission a new access code for a customer location", "operationId": "Create Outgoing Permission a new access code for a customer location", "description": "Add a new access code for the given location for a customer.\n\nUse Access Codes to bypass the set permissions for all persons/workspaces at this location.\n\nCreating an access code for the given location requires a full or user administrator or location administrator auth token with a scope of spark-admin:telephony_config_write.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Add new access code for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Add new access code for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "accessCodes": [ { "code": "1357", "description": "Main Access Code" }, { "code": "2468", "description": "Alternate Access Code" } ] }, "schema": { "$ref": "#/components/schemas/PostLocationAccessCodeObject" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Outgoing Permission Access Code Location", "operationId": "Delete Outgoing Permission Access Code Location", "description": "Deletes the access code details for a particular location for a customer.\n\nUse Access Codes to bypass the set permissions for all persons/workspaces at this location.\n\nModifying the access code location details requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Deletes the access code details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Deletes the access code details for a customer location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "deleteCodes": [ "1234", "5637" ] }, "schema": { "$ref": "#/components/schemas/PutAccessCodeLocationObject" } } } } }, "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 all Outgoing Permission Access Code for a Location", "operationId": "Delete all Outgoing Permission Access Code for a Location", "description": "Deletes all the access codes for a particular location for a customer.\n\nUse Access Codes to bypass the set permissions for all persons/workspaces at this location.\n\nDeleting the access codes requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Deletes all the access codes for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Deletes the access codes for a customer location.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/outgoingPermission/digitPatterns": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationOutgoingPermissionDigitPatternGetListObject" }, "example": { "digitPatterns": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern1", "pattern": "2XXXX", "action": "ALLOW", "transferEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V5", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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 Outgoing Permission Digit Pattern for a Location", "operationId": "Get Outgoing Permission Digit Pattern for a Location", "description": "Get the digit patterns for the outbound permission in a location.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nRetrieving digit patterns requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve the digit patterns for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve the digit patterns for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created digit pattern." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Outgoing Permission a new Digit Pattern for a location", "operationId": "Create Outgoing Permission a new Digit Pattern for a location", "description": "Add a new digit pattern for the given location for a customer.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nCreating a digit pattern requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Add a new digit pattern for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Add a new digit pattern for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern3", "pattern": "3XXX", "action": "ALLOW", "transferEnabled": false }, "schema": { "$ref": "#/components/schemas/LocationOutgoingPermissionDigitPatternPostObject" } } } } }, "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 all Outgoing Permission Digit Patterns for a Location", "operationId": "Delete all Outgoing Permission Digit Patterns for a Location", "description": "Deletes all the digit patterns for a particular location for a customer.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nDeleting the digit patterns requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete the digit patterns for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the digit patterns for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/outgoingPermission/digitPatterns/{digitPatternId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationDigitPatternObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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 Details for a Outgoing Permission Digit Pattern for a Location", "operationId": "Get Details for a Outgoing Permission Digit Pattern for a Location", "description": "Get the digit pattern details.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nRetrieving digit pattern details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve the digit pattern details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Retrieve the digit pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve the digit pattern details for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Outgoing Permission Digit Pattern for a Location", "operationId": "Update a Outgoing Permission Digit Pattern for a Location", "description": "Update the designated digit pattern.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nUpdating a digit pattern requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update the digit pattern for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Update the digit pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the digit pattern for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern4", "pattern": "3XXX2" }, "schema": { "$ref": "#/components/schemas/LocationOutgoingPermissionDigitPatternPatchObject" } } } } }, "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 Outgoing Permission Digit Pattern for a Location", "operationId": "Delete a Outgoing Permission Digit Pattern for a Location", "description": "Delete the designated digit pattern.\n\nUse Digit Patterns to bypass the set permissions for all persons/workspaces at this location.\n\nDeleting a digit pattern requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Call Handling" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Delete the digit pattern for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Delete the digit pattern with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the digit pattern for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/schedules": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "schedules" ], "properties": { "schedules": { "type": "array", "items": { "$ref": "#/components/schemas/ListScheduleObject" }, "description": "Array of schedules." } } }, "example": { "schedules": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "AUTOATTENDANT-BUSINESS-HOURS", "type": "businessHours", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx" }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "name": "AUTOATTENDANT-HOLIDAY", "type": "holidays", "locationName": "Alaska", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Schedules", "operationId": "Read the List of Schedules", "description": "List all schedules for the given location of the organization.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of schedules for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List schedules for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return schedules with the matching name.", "example": "AUTOATTENDANT-BUSINESS-HOURS", "schema": { "type": "string" } }, { "name": "type", "in": "query", "description": "Type of the schedule.", "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created schedule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Schedule", "operationId": "Create a Schedule", "description": "Create new Schedule for the given location.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nCreating a schedule requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the schedule for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the schedule for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "AUTOATTENDANT-BUSINESS-HOURS", "type": "businessHours", "events": [ { "name": "Monday 1", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "09:00", "endTime": "11:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": true, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Monday 2", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "12:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": true, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Tuesday 1", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "09:00", "endTime": "11:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": true, "wednesday": false, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Tuesday 2", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "12:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": true, "wednesday": false, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Wednesday 1", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "09:00", "endTime": "11:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Wednesday 2", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "12:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } }, { "name": "Thursday 1", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "09:00", "endTime": "11:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": true, "friday": false, "saturday": false } } }, { "name": "Thursday 2", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "12:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": true, "friday": false, "saturday": false } } }, { "name": "Friday 1", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "09:00", "endTime": "11:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } }, { "name": "Friday 2", "startDate": "2021-11-03", "endDate": "2021-11-03", "startTime": "12:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] }, "schema": { "$ref": "#/components/schemas/PostScheduleObject" } } } } } }, "/telephony/config/locations/{locationId}/schedules/{type}/{scheduleId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetScheduleObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "name": "AUTOATTENDANT-HOLIDAY", "type": "holidays", "events": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN5QkVZWGs", "name": "New Year's Day", "startDate": "2022-01-01", "endDate": "2022-01-01", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } } ] } } } }, "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 Details for a Schedule", "operationId": "Get Details for a Schedule", "description": "Retrieve Schedule details.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nRetrieving schedule details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve schedule details in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of the schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Retrieve the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve schedule details from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the target schedule." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1RrVlhMVmxGUVZJdFNFOU1TVVJCV1E" } } } }, "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 Schedule", "operationId": "Update a Schedule", "description": "Update the designated schedule.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nUpdating a schedule requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The Schedule ID will change upon modification of the Schedule name.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this schedule exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Update schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update schedule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "NEW-YEAR-HOLIDAY", "events": [ { "name": "New Year", "newName": "New Year's Day", "startDate": "2022-01-01", "endDate": "2022-01-01", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } } ] }, "schema": { "$ref": "#/components/schemas/ModifyScheduleObject" } } } } }, "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 Schedule", "operationId": "Delete a Schedule", "description": "Delete the designated Schedule.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nDeleting a schedule requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of the schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Delete the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the schedule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/schedules/{type}/{scheduleId}/events/{eventId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetScheduleEventObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN3", "name": "New Year's", "startDate": "2022-01-01", "endDate": "2022-01-01", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } } } } }, "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 Details for a Schedule Event", "operationId": "Get Details for a Schedule Event", "description": "Retrieve Schedule Event details.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nRetrieving a schedule event's details requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve schedule event details in this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Retrieve the schedule event with the matching schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Retrieve the schedule event with the matching schedule event ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve schedule event details from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the target schedule event." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN5QkVZWGs" } } } }, "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 Schedule Event", "operationId": "Update a Schedule Event", "description": "Update the designated Schedule Event.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nUpdating a schedule event requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: The schedule event ID will change upon modification of the schedule event name.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location in which this schedule event exists.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of schedule.\n\n+ `businessHours` - Business hours schedule type.\n\n+ `holidays` - Holidays schedule type.", "required": true, "example": "businessHours", "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Update schedule event with the matching schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Update the schedule event with the matching schedule event ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN5QkVZWGs", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update schedule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "New Year's Day", "startDate": "2022-01-01", "endDate": "2022-01-01", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } }, "schema": { "$ref": "#/components/schemas/ModifyScheduleEventObject" } } } } }, "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 Schedule Event", "operationId": "Delete a Schedule Event", "description": "Delete the designated Schedule Event.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nDeleting a schedule event requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location from which to delete a schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Delete the schedule with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Delete the schedule event with the matching schedule event ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN5QkVZWGs", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the schedule from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/locations/{locationId}/schedules/{type}/{scheduleId}/events": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created schedule event." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RtVjNJRmxsWVhJbmN5QkVZWGs" } } } }, "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 Schedule Event", "operationId": "Create a Schedule Event", "description": "Create new Event for the given location Schedule.\n\nA time schedule establishes a set of times during the day or holidays in the year in which a feature, for example auto attendants, can perform a specific action.\n\nCreating a schedule event requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Schedules" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Create the schedule for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "type", "in": "path", "description": "Type of schedule.", "required": true, "example": "businessHours", "schema": { "type": "string", "enum": [ "businessHours", "holidays" ] } }, { "name": "scheduleId", "in": "path", "description": "Create event for a given schedule ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFJVDB4SlJFRlo", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Create the schedule for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "New Year's Day", "startDate": "2022-01-01", "endDate": "2022-01-01", "allDayEnabled": true, "recurrence": { "recurYearlyByDate": { "dayOfMonth": 1, "month": "JANUARY" } } }, "schema": { "$ref": "#/components/schemas/PostScheduleEventObject" } } } } } }, "/telephony/config/locations/{locationId}/voicemail": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationVoicemailObject" }, "example": { "voicemailTranscriptionEnabled": 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 Location Voicemail", "operationId": "Get Location Voicemail", "description": "Retrieve voicemail settings for a specific location.\n\nLocation voicemail settings allows you to enable voicemail transcription for a specific location.\n\nRetrieving a location's voicemail settings requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve voicemail settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve voicemail settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Location Voicemail", "operationId": "Update Location Voicemail", "description": "Update the voicemail settings for a specific location.\n\nLocation voicemail settings allows you to enable voicemail transcription for a specific location.\n\nUpdating a location's voicemail settings requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Update voicemail settings for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update voicemail settings for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "voicemailTranscriptionEnabled": true }, "schema": { "$ref": "#/components/schemas/PutLocationVoicemailObject" } } } } } }, "/telephony/config/locations/{locationId}/voicePortal": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVoicePortalObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC8yZmQzZGMwMy0yZWRhLTQ4NmUtODdhYS0xODY1ZDI5YWExZWI", "name": "test voicePortal", "language": "English", "languageCode": "en_us", "extension": "0007", "phoneNumber": "+1345325235", "firstName": "firstName", "lastName": "lastName", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "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 VoicePortal", "operationId": "Get VoicePortal", "description": "Retrieve Voice portal information for the location.\n\nVoice portals provide an interactive voice response (IVR)\nsystem so administrators can manage auto attendant announcements.\n\nRetrieving voice portal information for an organization requires a full read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location to which the voice portal belongs.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization to which the voice portal belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 VoicePortal", "operationId": "Update VoicePortal", "description": "Update Voice portal information for the location.\n\nVoice portals provide an interactive voice response (IVR)\nsystem so administrators can manage auto attendant anouncements.\n\nUpdating voice portal information for an organization and/or rules requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location to which the voice portal belongs.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update voicemail rules for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Voice Portal Name", "languageCode": "en_us", "extension": 5678, "firstName": "John", "lastName": "Brown", "passcode": { "newPasscode": "135668", "confirmPasscode": "135668" }, "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/PutVoicePortalObject" } } } } } }, "/telephony/config/locations/{locationId}/voicePortal/passcodeRules": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVoicePortalPasscodeRuleObject" }, "example": { "expirePasscode": { "enabled": true, "numberOfDays": 180 }, "failedAttempts": { "enabled": true, "attempts": 3 }, "blockPreviousPasscodes": { "enabled": true, "numberOfPasscodes": 10 }, "blockRepeatedDigits": { "enabled": true, "max": 3 }, "blockContiguousSequences": { "enabled": true, "numberOfAscendingDigits": 3, "numberOfDescendingDigits": 3 }, "length": { "min": 3, "max": 3 }, "blockRepeatedPatternsEnabled": true, "blockUserNumberEnabled": true, "blockReversedUserNumberEnabled": true, "blockReversedOldPasscodeEnabled": 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 VoicePortal Passcode Rule", "operationId": "Get VoicePortal Passcode Rule", "description": "Retrieve the voice portal passcode rule for a location.\n\nVoice portals provide an interactive voice response (IVR) system so administrators can manage auto attendant anouncements\n\nRetrieving the voice portal passcode rule requires a full read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve voice portal passcode rules for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0fetchcllrjjejgghbruudtlknjbcleukhihhgFUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve voice portal passcode rules for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/voicemailGroups": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "voicemailGroups" ], "properties": { "voicemailGroups": { "type": "array", "items": { "$ref": "#/components/schemas/GetVoicemailGroupObject" }, "description": "Array of VoicemailGroups." } } }, "example": { "voicemailGroups": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC9hN2RkNGQzOS00YTc4LTQ1MTYtOTU1Zi03ODEwZGJlMzc5Y2Y", "name": "RCDN-VM", "locationName": "Dallas", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljZmRhNzg5LWUwNjItNDU2MC05MzhiLTFmNDYxNmVmNzNmMg", "phoneNumber": "+16066412147", "extension": "5896", "routingPrefix": "123", "esn": "1235896", "enabled": true, "tollFreeNumber": false }, { "id": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC8yZmQzZGMwMy0yZWRhLTQ4NmUtODdhYS0xODY1ZDI5YWExZWI", "name": "VG1", "locationName": "Boston", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2EwYjk2ZWJhLTdiYjAtNDEwNy05NzVmLTBmMzkwZTBlNzc4OA", "phoneNumber": null, "extension": "1125", "routingPrefix": "123", "esn": "1235896", "enabled": true }, { "id": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC8yZTY4ZjJmNC1lYTI2LTQyNjgtOWJmMy03YjNlNmJjMjE5YzE", "name": "VG2", "locationName": "RCDN", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "phoneNumber": null, "extension": "4567", "routingPrefix": "123", "esn": "1235896", "enabled": 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 VoicemailGroup", "operationId": "List VoicemailGroup", "description": "List the voicemail group information for the organization.\n\nYou can create a shared voicemail box and inbound FAX box to\nassign to users or call routing features like an auto attendant, call queue, or hunt group.\n\nRetrieving a voicemail group for the organization requires a full read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Location Call Settings: Voicemail" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization to which the voicemail group belongs.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Location to which the voicemail group belongs.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "schema": { "type": "string" } }, { "name": "name", "in": "query", "description": "Search (Contains) based on voicemail group name", "example": "voicemail", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search (Contains) based on number or extension", "example": "+19828282867", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of events in the response. The maximum value is `200`.", "example": "100", "schema": { "type": "number", "default": 100 } }, { "name": "start", "in": "query", "description": "Offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } } ] } }, "/telephony/config/locations/{locationId}/voicemailGroups/{voicemailGroupId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetLocationVoicemailGroupObject" }, "example": { "id": "a7dd4d39-4a78-4516-955f-7810dbe379cf", "name": "Voicemail Group Name", "phoneNumber": "+16066412147", "extension": "1273", "routingPrefix": "123", "esn": "1231273", "tollFreeNumber": "false", "firstName": "rcdnfTest", "lastName": "rcdnlTest", "enabled": true, "languageCode": "en_us", "greeting": "DEFAULT", "greetingUploaded": true, "greetingDescription": "greetings.wav", "messageStorage": { "storageType": "EXTERNAL", "externalEmail": "user@flex2.cisco.com" }, "notifications": { "enabled": true, "destination": "user@flex2.cisco.com" }, "faxMessage": { "enabled": true, "phoneNumber": "+1234234324", "extension": "23455" }, "transferToNumber": { "enabled": true, "destination": "+12147691003" }, "emailCopyOfMessage": { "enabled": true, "emailId": "\n\n
This API is only supported for adding DID and Toll-free numbers to non-integrated PSTN connection types such as Local Gateway (LGW) and Non-integrated CPP. It should never be used for locations with integrated PSTN connection types like Cisco Calling Plans or Integrated CCP because backend data issues may occur.\n
\n
Mobile numbers can be added to any location that has PSTN connection setup. Only 20 mobile numbers can be added per request.\n
", "tags": [ "Numbers" ], "parameters": [ { "name": "locationId", "in": "path", "description": "LocationId to which numbers should be added.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzM2ZTFlM2Y1LWJhODEtNDRiNC05ZGQ1LWIyMmVlNGY1MDIyZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumbers": [ "+19136748203", "+19136748204", "+19136748205" ], "numberType": "TOLLFREE", "numberUsageType": "NONE", "state": "INACTIVE", "carrierId": "123e4567-e89b-12d3-a456-426614174000" }, "schema": { "$ref": "#/components/schemas/NumbersPost" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Manage Number State in a location", "operationId": "Manage Number State in a location", "description": "Activate or deactivate the specified set of phone numbers in a location for an organization.\n\nEach location has a set of phone numbers that can be assigned to people, workspaces, or features. Phone numbers must follow the E.164 format.\n\nActive phone numbers are in service. A mobile number is activated when assigned to a user. This API will not activate or deactivate mobile numbers.\n\nManaging phone number state in a location requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n
\n\n
This API is only supported for non-integrated PSTN connection types of Local Gateway (LGW) and Non-integrated CCP.
", "tags": [ "Numbers" ], "parameters": [ { "name": "locationId", "in": "path", "description": "`LocationId` to which numbers should be added.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzM2ZTFlM2Y1LWJhODEtNDRiNC05ZGQ1LWIyMmVlNGY1MDIyZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumbers": [ "+12145557861", "+12145551321" ], "action": "DEACTIVATE" }, "schema": { "$ref": "#/components/schemas/NumbersRequest" } } } } }, "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": "Remove phone numbers from a location", "operationId": "Remove phone numbers from a location", "description": "Remove the specified set of phone numbers from a location for an organization.\n\nPhone numbers must follow the E.164 format.\n\nRemoving a mobile number may require more time depending on mobile carrier capabilities.\n\nRemoving a phone number from a location requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\nA location's main number cannot be removed.\n\n
\n\n
This API is only supported for non-integrated PSTN connection types of Local Gateway (LGW) and Non-integrated CPP. It should never be used for locations with integrated PSTN connection types like Cisco Calling Plans or Integrated CCP because backend data issues may occur.
", "tags": [ "Numbers" ], "parameters": [ { "name": "locationId", "in": "path", "description": "`LocationId` to which numbers should be added.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzM2ZTFlM2Y1LWJhODEtNDRiNC05ZGQ1LWIyMmVlNGY1MDIyZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "phoneNumbers": [ "+12145557861", "+12145551321" ] }, "schema": { "$ref": "#/components/schemas/NumbersDelete" } } } } } }, "/telephony/config/actions/validateNumbers/invoke": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateNumbersResponse" }, "examples": { "example1": { "value": { "status": "OK", "numbers": [ { "number": "+12145557861", "state": "Available", "tollFreeNumber": false } ] } }, "example2": { "value": { "status": "ERRORS", "numbers": [ { "number": "+12145559000", "state": "Unavailable", "tollFreeNumber": false, "detail": [ "[Error 8361] DN is unavailable : +12145559000" ] }, { "number": "+12145553567", "state": "Available", "tollFreeNumber": 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": "Validate phone numbers", "operationId": "Validate phone numbers", "description": "Validate the list of phone numbers in an organization. Each phone number's availability is indicated in the response.\n\nEach location has a set of phone numbers that can be assigned to people, workspaces, or features. Phone numbers must follow the E.164 format for all countries, except for the United States, which can also follow the National format. Active phone numbers are in service.\n\nValidating a phone number in an organization requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Numbers" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "examples": { "example1": { "value": { "phoneNumbers": [ "+12145557861" ] } }, "example2": { "value": { "phoneNumbers": [ "+12145559000", "+12145553567" ] } } }, "schema": { "$ref": "#/components/schemas/ValidateNumbersPostRequest" } } } } } }, "/telephony/config/numbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NumberListGetObject" }, "example": { "count": { "assigned": 33, "unAssigned": 114, "inActive": 12, "extensionOnly": 692, "tollFreeNumbers": 1, "total": 839, "mobileNumber": 6, "serviceNumber": 1 }, "phoneNumbers": [ { "phoneNumber": "+12056350001", "extension": "11", "routingPrefix": "1234", "esn": "123411", "state": "ACTIVE", "phoneNumberType": "FAX", "mainNumber": false, "includedTelephonyTypes": "MOBILE_NUMBER", "mobileNetwork": "mobileNetwork", "routingProfile": "AttRtPf", "tollFreeNumber": false, "isServiceNumber": false, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Banglore" }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "sadiqhussain96", "lastName": "sadiqhussain96" } }, { "phoneNumber": "", "state": "ACTIVE", "phoneNumberType": "ALTERNATE", "extension": "568", "routingPrefix": "1234", "esn": "1234568", "mainNumber": false, "includedTelephonyTypes": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M2MDliOGE1LTAxNmQtNDAwNy1hN2E0LTJhMThiZmZjY2FmNg", "name": "Richardson" }, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNzVkMjI4Mi0yZjk1LTQ2MmMtYjFiNC1kYjRlZjU1OTk3MWE", "type": "PEOPLE", "firstName": "chandru_2", "lastName": "test_2" } }, { "phoneNumber": "+12026282002", "state": "ACTIVE", "phoneNumberType": "PRIMARY", "mainNumber": true, "includedTelephonyTypes": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEwN2EzNTkwLWY3OWMtNGM0OS1iM2I2LWQ1MzhjYTA0YWU1MA", "name": "Washington" } } ] } } } }, "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 Phone Numbers for an Organization with Given Criteria", "operationId": "Get Phone Numbers for an Organization with Given Criteria", "description": "List all the phone numbers for the given organization along with the status and owner (if any).\n\nNumbers can be standard, service, or mobile. Both standard and service numbers are PSTN numbers.\nService numbers are considered high-utilization or high-concurrency phone numbers and can be assigned to features like auto-attendants, call queues, and hunt groups.\nPhone numbers can be linked to a specific location, be active or inactive, and be assigned or unassigned.\nThe owner of a number is the person, workspace, or feature to which the number is assigned.\nOnly a person can own a mobile number.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Numbers" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Search for this `phoneNumber`.", "example": "+12056852221", "schema": { "type": "string" } }, { "name": "available", "in": "query", "description": "Search among the available phone numbers. This parameter cannot be used along with `ownerType` parameter when set to `true`.", "example": true, "schema": { "type": "boolean" } }, { "name": "order", "in": "query", "description": "Sort the list of phone numbers based on the following:`lastName`,`dn`,`extension`. Sorted by number and extension in ascending order.", "example": "lastName-asc", "schema": { "type": "string" } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Mark", "schema": { "type": "string" } }, { "name": "ownerId", "in": "query", "description": "Returns only the matched number/extension entries assigned to the feature with the specified UUID or `broadsoftId`.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80M2QzYjY4ZC04MjkwLTRmMzctOTM2NS03MmNhMTcxMzRiODM", "schema": { "type": "string" } }, { "name": "ownerType", "in": "query", "description": "Returns the list of phone numbers of the given `ownerType`. Possible input values:", "example": "PEOPLE", "schema": { "type": "string", "enum": [ "PEOPLE", "PLACE", "AUTO_ATTENDANT", "CALL_QUEUE", "PAGING_GROUP", "HUNT_GROUP", "VOICE_MESSAGING", "BROADWORKS_ANYWHERE", "CONTACT_CENTER_LINK", "ROUTE_LIST", "VOICEMAIL_GROUP", "VIRTUAL_LINE" ] } }, { "name": "extension", "in": "query", "description": "Returns the list of phone numbers with the given extension.", "example": "000", "schema": { "type": "string" } }, { "name": "numberType", "in": "query", "description": "Returns the filtered list of phone numbers that contain a given type of number. `available` or `state` query parameters cannot be used when `numberType=EXTENSION`. Possible input values:", "example": "NUMBER", "schema": { "type": "string", "enum": [ "NUMBER", "EXTENSION" ] } }, { "name": "phoneNumberType", "in": "query", "description": "Returns the filtered list of phone numbers of the given `phoneNumberType`. Response excludes any extensions without numbers. Possible input values:", "example": "PRIMARY", "schema": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE", "FAX", "DNIS", "Default" ] } }, { "name": "state", "in": "query", "description": "Returns the list of phone numbers with the matching state. Response excludes any extensions without numbers. Possible input values:", "example": "ACTIVE", "schema": { "type": "string", "enum": [ "ACTIVE", "INACTIVE", "Default" ] } }, { "name": "details", "in": "query", "description": "Returns the overall count of the phone numbers along with other details for a given organization.", "example": true, "schema": { "type": "boolean" } }, { "name": "tollFreeNumbers", "in": "query", "description": "Returns the list of toll-free phone numbers.", "example": true, "schema": { "type": "boolean" } }, { "name": "restrictedNonGeoNumbers", "in": "query", "description": "Returns the list of restricted non-geographical numbers.", "example": true, "schema": { "type": "boolean" } }, { "name": "includedTelephonyTypes", "in": "query", "description": "Returns the list of phone numbers that are of given `includedTelephonyTypes`. By default, if this query parameter is not provided, it will list both PSTN and Mobile Numbers. Possible input values are PSTN_NUMBER or MOBILE_NUMBER.", "example": "PSTN_NUMBER", "schema": { "type": "string" } }, { "name": "serviceNumber", "in": "query", "description": "Returns the list of service phone numbers.", "example": true, "schema": { "type": "boolean" } } ] } }, "/telephony/config/jobs/numbers/manageNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobListResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC84YTI0ZjM5NC1lMTdjLTRiMTYtOTU3Ni0zNzA3YjY5YmU3Mzc", "jobType": "managenumbers", "trackingId": "ROUTER_6332CCCB-E492-01BB-0165-48A3DC0A0165", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "instanceId": 251110, "jobExecutionStatus": [ { "id": 252158, "startTime": "2022-09-27T10:13:43.130Z", "endTime": "2022-09-27T10:13:47.191Z", "lastUpdated": "2022-09-27T10:13:47.595Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-09-27T10:13:43.106Z", "stepExecutionStatuses": [ { "id": 1224428, "startTime": "2022-09-27T10:13:43.404Z", "endTime": "2022-09-27T10:13:44.664Z", "lastUpdated": "2022-09-27T10:13:44.664Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "manageNumbersDeciderStep", "timeElapsed": "PT1.26S" }, { "id": 1224429, "startTime": "2022-09-27T10:13:44.684Z", "endTime": "2022-09-27T10:13:47.182Z", "lastUpdated": "2022-09-27T10:13:47.183Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED_WITH_ERRORS", "name": "managenumbersMoveNumbers", "timeElapsed": "PT2.498S" } ], "timeElapsed": "PT3.758S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "operationType": "MOVE", "sourceLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "targetLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgxYjUzYzk3LTQxNGQtNDhjYy1hZThiLWNhZmM0MDc4NDAwNw", "counts": { "totalNumbers": 1, "numbersDeleted": 0, "numbersMoved": 0, "numbersFailed": 1, "numbersUsageChanged": 0 } }, { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "jobType": "managenumbers", "trackingId": "ATLAS_06a92f81-244d-4fd2-b8db-121bc1eeb6c8_11", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "instanceId": 238972, "jobExecutionStatus": [ { "id": 239746, "startTime": "2022-08-24T06:18:31.092Z", "endTime": "2022-08-24T06:18:38.448Z", "lastUpdated": "2022-08-24T06:18:38.825Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-08-24T06:18:31.070Z", "stepExecutionStatuses": [ { "id": 1172935, "startTime": "2022-08-24T06:18:31.203Z", "endTime": "2022-08-24T06:18:32.823Z", "lastUpdated": "2022-08-24T06:18:32.823Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "manageNumbersDeciderStep", "timeElapsed": "PT1.62S" }, { "id": 1172936, "startTime": "2022-08-24T06:18:32.839Z", "endTime": "2022-08-24T06:18:38.439Z", "lastUpdated": "2022-08-24T06:18:38.439Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managenumbersMoveNumbers", "timeElapsed": "PT5.6S" } ], "timeElapsed": "PT7.22S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "operationType": "MOVE", "sourceLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E2MmRlOWRkLWRmODEtNDg3My04MGY5LTY2MmYyZmM3ZTI2NQ", "targetLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "counts": { "totalNumbers": 1, "numbersDeleted": 0, "numbersMoved": 1, "numbersFailed": 0, "numbersUsageChanged": 0 } } ] } } } }, "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 Manage Numbers Jobs", "operationId": "List Manage Numbers Jobs", "description": "Lists all Manage Numbers jobs for the given organization in order of most recent one to oldest one irrespective of its status.\n\nThe public API only supports initiating jobs which move numbers between locations.\n\nVia Control Hub they can initiate both the move and delete, so this listing can show both.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Numbers" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of Manage Number jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80YTViYjVhOC1hZDAwLTQ0ZGEtODg2NC0wYjExNTE0NDQyYzk", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of jobs. Default is 0.", "example": 0, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the number of jobs returned to this maximum count. Default is 2000.", "example": 2000, "schema": { "type": "number" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StartJobResponse" }, "example": { "name": "managenumbers", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC84M2U1MjNlYy02NjY2LTRlZjAtODcwYi0xZjViZGI1NDNhZDU", "jobType": "managenumbers", "trackingId": "NA_c989fd47-391e-47c0-8fe4-b45711871a42", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2022-09-13T10:56:41.241Z", "lastUpdated": "2022-09-13T10:56:41.242Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "createdTime": "2022-09-13T10:56:41.054Z", "timeElapsed": "PT0S" } ], "latestExecutionStatus": "STARTED", "latestExecutionExitCode": "UNKNOWN", "operationType": "MOVE", "sourceLocationId": "5223bbed-42c9-454d-a1f3-7fad5cc7e6e3", "targetLocationId": "81b53c97-414d-48cc-ae8b-cafc40784007", "counts": { "totalNumbers": 0, "numbersDeleted": 0, "numbersMoved": 0, "numbersFailed": 0, "numbersUsageChanged": 0 } } } } }, "400": { "description": "Bad Request", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MoveNumberValidationError" }, "example": { "error": { "key": "400", "message": [ { "description": "Invalid phone number.", "code": "BATCH-1017017", "location": null } ] }, "trackingId": "ROUTER_6364F0A9-D48A-01BB-0128-0AFDEB7B0128" } } } }, "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": "Initiate Number Jobs", "operationId": "Initiate Number Jobs", "description": "Starts the execution of an operation on a set of numbers. Supported operations are: `MOVE`, `NUMBER_USAGE_CHANGE`.\n\nUp to 1000 numbers can be given in `MOVE` operation type and `NUMBER_USAGE_CHANGE` operation type per request.\nIf another move number job request is initiated while a move job is in progress, the API call will receive a `409` HTTP status code.\n\nIn order to move a number the following is required:\n\n* The number must be unassigned.\n\n* Both locations must have the same PSTN Connection Type.\n\n* Both locations must have the same PSTN Provider.\n\n* Both locations have to be in the same country.\n\nFor example, you can move from Cisco Calling Plan to Cisco Calling Plan, but you cannot move from Cisco Calling Plan to a location with Cloud Connected PSTN.\n\nIn order to change the number usage the following is required:\n\n* The number must be unassigned.\n\n* Number Usage Type can be set to `NONE` if carrier has the PSTN service `GEOGRAPHIC_NUMBERS`.\n\n* Number Usage Type can be set to `SERVICE` if carrier has the PSTN service `SERVICE_NUMBERS`.\n\nFor example, you can initiate a `NUMBER_USAGE_CHANGE` job to change the number type from Standard number to Service number, or the other way around.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Numbers" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminBatchStartJobObject" } } } } } }, "/telephony/config/jobs/numbers/manageNumbers/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/jobIdResponseObject" }, "example": { "name": "managenumbers", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "jobType": "managenumbers", "trackingId": "ATLAS_06a92f81-244d-4fd2-b8db-121bc1eeb6c8_11", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "instanceId": 238972, "jobExecutionStatus": [ { "id": 239746, "startTime": "2022-08-24T06:18:31.092Z", "endTime": "2022-08-24T06:18:38.448Z", "lastUpdated": "2022-08-24T06:18:38.825Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2022-08-24T06:18:31.070Z", "stepExecutionStatuses": [ { "id": 1172935, "startTime": "2022-08-24T06:18:31.203Z", "endTime": "2022-08-24T06:18:32.823Z", "lastUpdated": "2022-08-24T06:18:32.823Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "manageNumbersDeciderStep", "timeElapsed": "PT1.62S" }, { "id": 1172936, "startTime": "2022-08-24T06:18:32.839Z", "endTime": "2022-08-24T06:18:38.439Z", "lastUpdated": "2022-08-24T06:18:38.439Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "managenumbersMoveNumbers", "timeElapsed": "PT5.6S" } ], "timeElapsed": "PT7.22S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "operationType": "MOVE", "sourceLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E2MmRlOWRkLWRmODEtNDg3My04MGY5LTY2MmYyZmM3ZTI2NQ", "targetLocationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "counts": { "totalNumbers": 1, "numbersDeleted": 0, "numbersMoved": 1, "numbersFailed": 0, "numbersUsageChanged": 0 } } } } }, "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 Manage Numbers Job Status", "operationId": "Get Manage Numbers Job Status", "description": "Returns the status and other details of the job.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Numbers" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "required": true, "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/numbers/manageNumbers/{jobId}/actions/pause/invoke": { "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": "Pause the Manage Numbers Job", "operationId": "Pause the Manage Numbers Job", "description": "Pause the running Manage Numbers Job. A paused job can be resumed.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Numbers" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Pause the Manage Numbers job for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Pause the Manage Numbers job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80YTViYjVhOC1hZDAwLTQ0ZGEtODg2NC0wYjExNTE0NDQyYzk", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/numbers/manageNumbers/{jobId}/actions/resume/invoke": { "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": "Resume the Manage Numbers Job", "operationId": "Resume the Manage Numbers Job", "description": "Resume the paused Manage Numbers Job. A paused job can be resumed.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Numbers" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Resume the Manage Numbers job for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Resume the Manage Numbers job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80YTViYjVhOC1hZDAwLTQ0ZGEtODg2NC0wYjExNTE0NDQyYzk", "schema": { "type": "string" } } ] } }, "/telephony/config/jobs/numbers/manageNumbers/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 1, "item": "+12025558374", "error": { "key": "400", "message": [ { "description": "Failed because it is not an unassigned number.", "code": "BATCH-1017023", "locationid": "5223bbed-42c9-454d-a1f3-7fad5cc7e6e3" } ] }, "trackingId": "ROUTER_6332cccb-e492-01bb-0165-48a3dc0a0165_0" } ] } } } }, "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 Manage Numbers Job errors", "operationId": "List Manage Numbers Job errors", "description": "Lists all error details of Manage Numbers job. This will not list any errors if `exitCode` is `COMPLETED`. If the status is `COMPLETED_WITH_ERRORS` then this lists the cause of failures.\n\nList of possible Errors:\n\n+ BATCH-1017021 - Failed to move because it is an inactive number.\n\n+ BATCH-1017022 - Failed to move because the source location and target location have different CCP providers.\n\n+ BATCH-1017023 - Failed because it is not an unassigned number.\n\n+ BATCH-1017024 - Failed because it is a main number.\n\n+ BATCH-1017027 - Manage Numbers Move Operation is not supported.\n\n+ BATCH-1017031 - Hydra request is supported only for single number move job.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Numbers" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve the error details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC84YTI0ZjM5NC1lMTdjLTRiMTYtOTU3Ni0zNzA3YjY5YmU3Mzc", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve list of jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the error offset from the first result that you want to fetch.", "example": 0, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": 100, "schema": { "type": "number", "default": 2000 } } ] } }, "/partner/reports": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReportCollectionResponse" } } } }, "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 Reports", "operationId": "listReports", "description": "Lists all reports previously generated from a given region. Use query parameters to filter the response. The parameters are optional.\n\nTo access this endpoint, you must use an administrator token with `spark-admin:reports_read` and `identity:people_read` scopes.\n\n
CSV reports for Webex suite services are only supported for organizations based in one region per API request. Organizations based in a different region will require a separate request with region specified.
\n\n
When no region is specified, the request defaults to Partner organization's home region.
\n\n
Reports are usually provided in zip format. A content-header application/zip or application/octet-stream does indicate the zip format. There is usually no .zip file extension.
", "tags": [ "Partner Reports/Templates" ], "parameters": [ { "name": "service", "in": "query", "description": "List reports which use this service.", "example": "Webex", "schema": { "type": "string" } }, { "name": "templateId", "in": "query", "description": "List reports with this report template ID.", "example": 5, "schema": { "type": "number" } }, { "name": "from", "in": "query", "description": "List reports that were created on or after this date.", "example": "2024-05-01", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "List reports that were created before this date.", "example": "2024-05-05", "schema": { "type": "string" } }, { "name": "regionId", "in": "query", "description": "Data in the report will be from organizations in this region, for example, US, CA, or EU.", "example": "US", "schema": { "type": "string" } }, { "name": "onBehalfOfSubPartnerOrgId", "in": "query", "description": "The encoded organization ID for the sub partner.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wZTE4MmUxNS05ZmNhLTQ0NzgtYmEzOC1jNGFiMmUyN2FlZDA=", "schema": { "type": "string" } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "reportId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "description": "The unique identifier for the report." }, "createdTime": { "type": "string", "example": "2024-05-27 17:02:43", "description": "The time of report creation." } } }, "example": { "reportId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9SRVBPUlQvYWQwZDIwNTc1ZGEwNDVhNDhmYWQ0N2Q5NzRhYjQxZjI", "createdTime": "2024-05-27 17:02:43" } } } }, "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 Report", "operationId": "createAReport", "description": "Create a new report. A new report can be created using `templateId` available from the _List Report Templates_ API. For each `templateId`, there are a set of validation rules that need to be followed.\n\nThe `templateId` parameter is a number. However, it is a limitation of developer.webex.com platform that it is passed as a string when you try to test the API from here.\n\nTo access this endpoint, you must use an administrator token with `spark-admin:reports_write` and `identity:people_read` scopes.\n\n**Notes**:\n\n
CSV reports for Webex suite services are only created for organizations in the specified region. Organizations based in a different region will require a separate request with region specified.
\n\n
When no region is specified, the request defaults to Partner organization's home region. A request against a region where there are no organizations will return blank CSV files.
", "tags": [ "Partner Reports/Templates" ], "parameters": [ { "name": "onBehalfOfSubPartnerOrgId", "in": "query", "description": "The encoded organization ID for the sub partner.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wZTE4MmUxNS05ZmNhLTQ0NzgtYmEzOC1jNGFiMmUyN2FlZDA=", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "templateId": 5, "startDate": "2024-05-01", "endDate": "2024-05-05", "regionId": "US" }, "schema": { "type": "object", "required": [ "templateId", "startDate", "endDate" ], "properties": { "templateId": { "type": "number", "example": 5, "description": "Unique ID representing valid report templates." }, "startDate": { "type": "string", "example": "2024-05-01", "description": "Data in the report will be from this date onwards." }, "endDate": { "type": "string", "example": "2024-05-05", "description": "Data in the report will be until this date." }, "regionId": { "type": "string", "example": "US", "description": "Data in the report will be from organizations in this region, for example, US, CA, or EU." } } } } } } } }, "/partner/reports/{reportId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Report" }, "example": { "reportId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9SRVBPUlQvYWQwZDIwNTc1ZGEwNDVhNDhmYWQ0N2Q5NzRhYjQxZjI", "templateId": 5, "title": "Calling Usage Reports", "service": "Teams", "startDate": "2024-02-23", "endDate": "2024-03-24", "regionId": "US", "createdTime": "2024-03-24 17:13:39", "status": "done", "fileName": "Calling Usage_12345_Org_2024-05-01_2024-05-05.csv", "fileSize": 0, "checksum": "12345", "downloadURL": "https://downloadservicebts.webex.com/api?reportId=Y2lzY29zcGFyazovL3VzL1JFUE9SVC9hZDBkMjA1NzVkYTA0NWE0OGZhZDQ3ZDk3NGFiNDFmMg", "downloadUrlExpiryTime": "3600" } } } }, "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 Report Details", "operationId": "getReportDetails", "description": "Shows details for a report by report ID.\n\nSpecify the report ID in the `reportId` parameter in the URI.\n\nTo access this endpoint, you must use an administrator token with `spark-admin:reports_read` and `identity:people_read` scopes.\n\n**Notes**:\n\n
Reports are usually provided in zip format. A content-header application/zip or application/octet-stream does indicate the zip format. There is usually no .zip file extension.
", "tags": [ "Partner Reports/Templates" ], "parameters": [ { "name": "reportId", "in": "path", "description": "The unique identifier for the report.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9SRVBPUlQvYWQwZDIwNTc1ZGEwNDVhNDhmYWQ0N2Q5NzRhYjQxZjI", "schema": { "type": "string" } }, { "name": "onBehalfOfSubPartnerOrgId", "in": "query", "description": "The encoded organization ID for the sub partner.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wZTE4MmUxNS05ZmNhLTQ0NzgtYmEzOC1jNGFiMmUyN2FlZDA=", "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 Report", "operationId": "deleteAReport", "description": "Remove a report from the system.\n\nSpecify the report ID in the `reportId` parameter in the URI\n\nTo access this endpoint, you must use an administrator token with `spark-admin:reports_write` scope.", "tags": [ "Partner Reports/Templates" ], "parameters": [ { "name": "reportId", "in": "path", "description": "The unique identifier for the report.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9SRVBPUlQvYWQwZDIwNTc1ZGEwNDVhNDhmYWQ0N2Q5NzRhYjQxZjI", "schema": { "type": "string" } }, { "name": "onBehalfOfSubPartnerOrgId", "in": "query", "description": "The encoded organization ID for the sub partner.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wZTE4MmUxNS05ZmNhLTQ0NzgtYmEzOC1jNGFiMmUyN2FlZDA=", "schema": { "type": "string" } } ] } }, "/partner/reports/templates": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TemplateCollectionResponse" }, "example": [ { "templateId": 130, "title": "Calling Usage", "service": "Teams", "category": "Partner", "maxDays": 31, "dataStartDate": "2024-01-01", "dataEndDate": "2024-01-31" } ] } } }, "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 Report Templates", "operationId": "listReportTemplates", "description": "List report templates. Report templates are available for use with the Partner Reports API.\n\nTo access this endpoint, you must use an administrator token with `spark-admin:reports_read` and `identity:people_read` [scopes](/docs/integrations#scopes). The authenticated user must be a Partner full administrator or Partner read-only administrator of the organization.", "tags": [ "Partner Reports/Templates" ], "parameters": [ { "name": "onBehalfOfSubPartnerOrgId", "in": "query", "description": "The encoded organization ID for the sub partner.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wZTE4MmUxNS05ZmNhLTQ0NzgtYmEzOC1jNGFiMmUyN2FlZDA=", "schema": { "type": "string" } } ] } }, "/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 } } ] } }, "/telephony/pstn/locations/{locationId}/connectionOptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectionOptionsListResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL1BTVE5fQ09OTkVDVElPTi81MWRlNDg5Yy1hYTYwLTRjMjUtOWFmNi1jYzRjYjE3MTczMGU", "displayName": "Premises-based PSTN", "pstnServices": [ "GEOGRAPHIC_NUMBERS" ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BTVE5fQ09OTkVDVElPTi9kMDk0MTc4Zi04MThlLTQ1YmMtYjEwMS1hOGRkNDhjMTM5MjE", "displayName": "SI CCP Bandwidth", "pstnServices": [ "GEOGRAPHIC_NUMBERS" ] } ] } } } }, "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": "Retrieve PSTN Connection Options for a Location", "operationId": "Retrieve PSTN Connection Options for a Location", "description": "Retrieve the list of PSTN connection options available for a location.\n\nPSTN location connection settings enables the admin to configure or change the PSTN provider for a location.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_pstn_read`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Return the list of List PSTN location connection options for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List PSTN location connection options for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "serviceTypes", "in": "query", "description": "Use the `serviceTypes` parameter to fetch connections for the following services\n* `MOBILE_NUMBERS`", "style": "form", "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AllowedServiceTypesFromHydra" } }, "example": [ "MOBILE_NUMBERS" ] } ] } }, "/telephony/pstn/locations/{locationId}/connection": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Setup PSTN Connection for a Location", "operationId": "Setup PSTN Connection for a Location", "description": "Set up or update the PSTN connection details for a location.\n\nPSTN location connection settings enables the admin to configure or change the PSTN provider for a location.\n\nSetting up PSTN connection on a location requires a full administrator auth token with scopes of `spark-admin:telephony_pstn_write` and `spark-admin:telephony_pstn_read`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Setup PSTN location connection options for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Setup PSTN location connection for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "id": "Y2lzY29zcGFyazovL3VzL1BTVE5fQ09OTkVDVElPTi81MWRlNDg5Yy1hYTYwLTRjMjUtOWFmNi1jYzRjYjE3MTczMGU", "premiseRouteType": "TRUNK", "premiseRouteId": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzUxZGU0ODljLWFhNjAtNGMyNS05YWY2LWNjNGNiMTcxNzMxZg" }, "schema": { "$ref": "#/components/schemas/SetUpPSTNLocationConnectionObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectionResponse" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BTVE5fQ09OTkVDVElPTi81MWRlNDg5Yy1hYTYwLTRjMjUtOWFmNi1jYzRjYjE3MTczMGU", "displayName": "Premises-based PSTN", "pstnServices": [ "GEOGRAPHIC_NUMBERS" ], "pstnConnectionType": "LOCAL_GATEWAY", "routeType": "TRUNK", "routeId": "Y2lzY29zcGFyazovL3VzL1RSVU5LL2Y1YTU4MzAwLTVmZTYtNGNjMS1hODA3LTRlN2E5OTMzN2Q0ZA" } } } }, "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": "Retrieve PSTN Connection for a Location", "operationId": "Retrieve PSTN Connection for a Location", "description": "Retrieves the current configured PSTN connection details for a location.\n\nPSTN location connection settings enables the admin to configure or change the PSTN provider for a location.\n\nRetrieving the PSTN connection details for a location requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_pstn_read`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Retrieve PSTN location connection details for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve PSTN location connection details for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/pstn/numbers/{phoneNumber}/emergencyAddress": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the Emergency Address for a Phone Number", "operationId": "updateEmergencyAddressForPhoneNumber", "description": "Update the emergency address for a phone number.\n\nEmergency address settings allow the admin to configure or update the physical address associated with a phone number or a location.\n\nUpdating the emergency address for a phone number requires a full administrator auth token with scope of `spark-admin:telephony_pstn_write`.", "tags": [ "PSTN" ], "parameters": [ { "name": "phoneNumber", "in": "path", "description": "Update the emergency address for this phone number.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BIT05FX05VTUJFUi8rMTk4NzY1NDMyMTA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update the emergency address of phone number in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "description": "JSON object containing emergency address information to be updated for the number. Using an empty JSON object deletes the custom emergency address for the number and replaces it with the location's default emergency address.", "content": { "application/json": { "examples": { "samplePayload": { "summary": "Sample JSON with values", "value": { "emergencyAddress": { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US" } } }, "emptyPayload": { "summary": "Empty JSON", "value": {} } }, "schema": { "type": "object", "description": "Object containing emergency address details to be updated for the phone number.", "properties": { "emergencyAddress": { "$ref": "#/components/schemas/EmergencyAddressObject" } } } } } } } }, "/telephony/pstn/locations/{locationId}/emergencyAddress/lookup": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "addresses": { "type": "array", "description": "List of suggested addresses based on the input address. If the input address is valid and unchanged, no errors are returned. If the input address requires corrections, the response includes a suggested address along with error details.", "items": { "$ref": "#/components/schemas/SuggestedEmergencyAddressObject" } } } }, "examples": { "validAddressExample": { "summary": "Valid address, no errors", "value": { "addresses": [ { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US", "meta": { "houseNumber": "3487", "streetName": "Chase Ave", "country": "US", "state": "FL", "city": "Miami Beach", "zipCode": "33140", "latitude": "25.8131", "longitude": "-80.1300" } } ] } }, "addressWithErrorsExample": { "summary": "Address with corrections and errors", "value": { "addresses": [ { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US", "meta": { "houseNumber": "3487", "streetName": "Chase Ave", "country": "US", "state": "FL", "city": "Miami Beach", "zipCode": "33140", "latitude": "25.8131", "longitude": "-80.1300" }, "errors": [ { "code": "PMP4004", "title": "INVALID_STREET_ADDRESS", "detail": "The street address provided is invalid." } ] } ] } } } } } }, "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": "Emergency Address Lookup to Verify if Address is Valid", "operationId": "emergencyAddressLookup", "description": "Returns a suggested address. If the input address is valid and unchanged, no errors are returned. If the input address requires corrections, the response includes a suggested address along with error details.\n\nEmergency address settings allow the admin to configure or update the physical address associated with a phone number or a location.\n\nEmergency address lookup to verify if address is valid requires a full administrator auth token with scope of `spark-admin:telephony_pstn_read`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Emergency address lookup for this location.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwM2FmYjBhLTBiZWMtNGQ1Yy05Mjc4LTRmMDdhYWY4OTg4ZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Emergency address lookup for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "description": "JSON object containing emergency address information to be validated.", "content": { "application/json": { "example": { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US" }, "schema": { "$ref": "#/components/schemas/EmergencyAddressObject" } } } } } }, "/telephony/pstn/locations/{locationId}/emergencyAddress": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the emergency address." } }, "required": [ "id" ] }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0VNRVJHRU5DWV9BRERSRVNTLzk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ" } } } }, "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": "Add an Emergency Address to a Location", "operationId": "addEmergencyAddressToLocation", "description": "Adds a new emergency address to the specified location. On success, returns the unique identifier of the newly created emergency address.\n\nEmergency address settings allow the admin to configure or update the physical address associated with a phone number or a location.\n\nAdding emergency address to a location requires a full administrator auth token with scope of `spark-admin:telephony_pstn_write`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location to which the emergency address will be added.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwM2FmYjBhLTBiZWMtNGQ1Yy05Mjc4LTRmMDdhYWY4OTg4ZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Adding emergency address for a location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "description": "JSON object containing emergency address information to be added to the specified location.", "content": { "application/json": { "example": { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US" }, "schema": { "$ref": "#/components/schemas/EmergencyAddressObject" } } } } } }, "/telephony/pstn/locations/{locationId}/emergencyAddresses/{addressId}": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the Emergency Address of a Location", "operationId": "updateEmergencyAddressOfLocation", "description": "Updates the emergency address of the specified location.\n\nEmergency address settings allow the admin to configure or update the physical address associated with a phone number or a location.\n\nUpdating the emergency address of a location requires a full administrator auth token with scope of `spark-admin:telephony_pstn_write`.", "tags": [ "PSTN" ], "parameters": [ { "name": "locationId", "in": "path", "description": "Location for which the emergency address will be updated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAwM2FmYjBhLTBiZWMtNGQ1Yy05Mjc4LTRmMDdhYWY4OTg4ZA", "schema": { "type": "string" } }, { "name": "addressId", "in": "path", "description": "Unique identifier for the emergency address that will be updated.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0VNRVJHRU5DWV9BRERSRVNTLzhiMjdlM2JiLWY5Y2EtNDkyYi05YWM5LWVkZGEzN2EwY2IzZA", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Updating the emergency address of a location in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "description": "JSON object containing emergency address information to be updated for the specified location.", "content": { "application/json": { "example": { "address1": "3487 Chase Ave", "address2": "Apt 112", "city": "Miami Beach", "state": "FL", "postalCode": "33140", "country": "US" }, "schema": { "$ref": "#/components/schemas/EmergencyAddressObject" } } } } } }, "/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" } ] } }, "/reports": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReportCollectionResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL1JFUE9SVC9hZDBkMjA1NzVkYTA0NWE0OGZhZDQ3ZDk3NGFiNDFmMg", "service": "Teams", "startDate": "2020-03-17", "endDate": "2020-03-18", "siteList": "", "created": "2020-05-27 17:02:43", "createdBy": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "scheduleFrom": "api", "status": "done", "reportTitle": "Bots Activity", "downloadURL": "https://downloadservicebts.webex.com/api?reportId=Y2lzY29zcGFyazovL3VzL1JFUE9SVC9hZDBkMjA1NzVkYTA0NWE0OGZhZDQ3ZDk3NGFiNDFmMg" } ], "numberOfReports": 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": "List Reports", "operationId": "listReports", "description": "Lists all reports. Use query parameters to filter the response. The parameters are optional. However, `from` and `to` parameters should be provided together.\n\n**Notes**:\nCSV reports for Webex suite services are only supported for organizations based in the North American region. Organizations based in a different region will return blank CSV files for any Teams reports.\n\nReports are usually provided in zip format. A Content-header `application/zip` or `application/octet-stream` does indicate the zip format. There is usually no .zip file extension.", "tags": [ "Reports" ], "parameters": [ { "name": "reportId", "in": "query", "description": "List reports by ID.", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "schema": { "type": "string" } }, { "name": "service", "in": "query", "description": "List reports which use this service.", "example": "Webex", "schema": { "type": "string" } }, { "name": "templateId", "in": "query", "description": "List reports with this report template ID.", "example": 5, "schema": { "type": "number" } }, { "name": "from", "in": "query", "description": "List reports that were created on or after this date.", "example": "2020-05-01", "schema": { "type": "string" } }, { "name": "to", "in": "query", "description": "List reports that were created before this date.", "example": "2020-05-05", "schema": { "type": "string" } } ] }, "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "description": "The unique identifier for the report." } } }, "example": { "items": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE" } } } } }, "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 Report", "operationId": "createaReport", "description": "Create a new report. For each `templateId`, there are a set of validation rules that need to be followed. For example, for templates belonging to Webex, the user needs to provide `siteUrl`. These validation rules can be retrieved via the [Report Templates API](/docs/api/v1/report-templates).\n\nThe 'templateId' parameter is a number. However, it is a limitation of developer.webex.com platform that it is passed as a string when you try to test the API from here.\n\nCSV reports for Webex suite services are only supported for organizations based in the North American region. Organizations based in a different region will return blank CSV files for any Teams reports.", "tags": [ "Reports" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ "templateId" ], "properties": { "templateId": { "type": "number", "example": 5, "description": "Unique ID representing valid report templates." }, "startDate": { "type": "string", "example": "2020-05-01", "description": "Data in the report will be from this date onwards." }, "endDate": { "type": "string", "example": "2020-05-05", "description": "Data in the report will be until this date." }, "siteList": { "type": "string", "example": "cisco.webex.com", "description": "Sites belonging to user's organization. This attribute is needed for site-based templates." } } } } } } } }, "/reports/{reportId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Report" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "title": "Bots Activity", "service": "Teams", "startDate": "2020-02-23", "endDate": "2020-03-24", "siteList": "cisco.webex.com", "created": "2020-03-24 17:13:39", "createdBy": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "scheduledFrom": "API", "status": "done", "downloadURL": "https://downloadservicebts.webex.com/api?reportId=Y2lzY29zcGFyazovL3VzL1JFUE9SVC9hZDBkMjA1NzVkYTA0NWE0OGZhZDQ3ZDk3NGFiNDFmMg" } } } }, "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 Report Details", "operationId": "getReportDetails", "description": "Shows details for a report, by report ID.\n\nSpecify the report ID in the `reportId` parameter in the URI.\n\n**Notes**:\nCSV reports for Webex suite services are only supported for organizations based in the North American region. Organizations based in a different region will return blank CSV files for any Teams reports.\n\nReports are usually provided in zip format. A Content-header `application/zip` or `application/octet-stream` does indicate the zip format. There is usually no .zip file extension.", "tags": [ "Reports" ], "parameters": [ { "name": "reportId", "in": "path", "description": "The unique identifier for the report.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "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 Report", "operationId": "deleteAReport", "description": "Remove a report from the system.\n\nSpecify the report ID in the `reportId` parameter in the URI\n\nCSV reports for Webex suite services are only supported for organizations based in the North American region. Organizations based in a different region will return blank CSV files for any Teams reports.", "tags": [ "Reports" ], "parameters": [ { "name": "reportId", "in": "path", "description": "The unique identifier for the report.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYzhjMWFhMS00OTM5LTQ2NjEtODAwMy1hYWE0MzFmZWM0ZmE", "schema": { "type": "string" } } ] } }, "/cdr_feed": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CDRResponse" }, "example": { "items": [ { "Answer indicator": "Yes", "Answer time": "2020-05-14T11:01:17.551Z", "Answered": "true", "Authorization code": "107", "Call ID": "SSE1101163211405201218829100@10.177.4.29", "Caller ID number": "2003", "Call outcome": "Success", "Call outcome reason": "Normal", "Call Recording Platform Name": "Webex", "Call Recording Result": "successful", "Call Recording Trigger": "always", "Call transfer Time": "2023-06-05T18:21:29.707Z", "Call type": "SIP_ENTERPRISE", "Called line ID": "CALLEDCLIDGOESHERE", "Called number": "2002", "Calling line ID": "YOURCLIDGOESHERE", "Calling number": "2001", "Client type": "SIP_TOLLFREE", "Client version": "1.0.2.3", "Correlation ID": "8e8e1dc7-4f25-4595-b9c7-26237f824535", "Department ID": "4370c763-81ec-403b-aba3-626a7b1cf264", "Device MAC": "6C710D8ABC10", "Device owner UUID": "1e9e14c7-4f25-4595-b9c7-26237f824536", "Dialed digits": "1246", "Direction": "ORIGINATING", "Duration": 36, "External caller ID number": "2004", "Final local SessionID": "82bb753300105000a0000242be131609", "Final remote SessionID": "cfe67b8a00105000a0000242be131609", "Inbound trunk": "InTrunk", "International country": "US", "Local call ID": "113104021:0", "Local SessionID": "82bb753300105000a0000242be131609", "Location": "Richardson", "Model": "8851-3PCC", "Network call ID": "BW2356451711108231501755806@10.21.0.192", "Org UUID": "408806bc-a013-4a4b-9a24-85e374912102", "Original reason": "UserBusy", "OS type": "na", "Outbound trunk": "OutTrunk", "Public Called IP Address": "0.0.0.0", "Public Calling IP Address": "0.0.0.0", "Release time": "2023-10-12 21:22:32.621", "Ring duration": 23, "Redirecting party UUID": "afgh", "Redirect reason": "Unavailable", "Redirecting number": "+13343822691", "Related call ID": "760583469:0", "Related reason": "CallQueue", "Releasing party": "Remote", "Remote call ID": "113103977:0", "Remote SessionID": "6bf2f47800105000a0000242be13160a", "Report ID": "0a0c2eb7-f1f6-3326-86f9-565d2e11553d", "Report time": "2020-05-14T11:01:52.723Z", "Route group": "RouteGrpAA", "Site main number": "+14692281000", "Site timezone": "-300", "Site UUID": "474d4f70-4ef5-4d52-9e1d-b207086629e0", "Start time": "2020-05-14T11:01:16.545Z", "Sub client type": "MOBILE_NETWORK", "Transfer related call ID": "2340586843:0A", "User": "John Andersen", "User number": "+81546668399", "User type": "User", "User UUID": "47f0d0c2-f05a-44cc-870d-7a3daf859c6c", "PSTN Vendor Name": "Cisco Calling Plans", "PSTN Legal Entity": "Broadsoft Adaption LLC", "PSTN Vendor Org ID": "0b43a1a8-2efd-4892-b301-e7a5a6d2c884", "PSTN Provider ID": "e8e730a0-ee04-4df4-90a6-b7072aec9062" } ] } } } }, "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 Call History", "operationId": "getDetailedCallHistory", "description": "Provides Webex Calling Detailed Call History data for your organization.\n\nResults can be filtered with the `startTime`, `endTime` and `locations` request parameters. The `startTime` and `endTime` parameters specify the start and end of the time period for the Detailed Call History reports you wish to collect. The API will return all reports that were created between `startTime` and `endTime`.\n\n

\nResponse entries may be added as more information is made available for the reports.\nValues in response items may be extended as more capabilities are added to Webex Calling.", "tags": [ "Reports: Detailed Call History" ], "parameters": [ { "name": "startTime", "in": "query", "description": "Time of the first report you wish to collect. (Report time is the time the call finished). **Note:** The specified time must be between 5 minutes ago and 48 hours ago, and formatted as `YYYY-MM-DDTHH:MM:SS.mmmZ`.", "required": true, "example": "2022-06-08T21:27:00.604Z", "schema": { "type": "string" } }, { "name": "endTime", "in": "query", "description": "Time of the last report you wish to collect. (Report time is the time the call finished). **Note:** The specified time should be later than `startTime` but no later than 48 hours, and formatted as `YYYY-MM-DDTHH:MM:SS.mmmZ`.", "required": true, "example": "2022-06-09T23:27:18.604Z", "schema": { "type": "string" } }, { "name": "locations", "in": "query", "description": "Name of the location (as shown in Control Hub). Up to 10 comma-separated locations can be provided. Allows you to query reports by location.", "example": "Erlanger Urgent / Primary Care Main", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of reports per page of the response. The range is 500 to 5000. Values below 500 are automatically adjusted up to 500, and values above 5000 are automatically adjusted down to 5000. When the API has more reports to return than the max value, the API response will be paginated. Follow the next link contained in the “Link” header within a response to request the next page of results. If there is no next link, all reports for the selected time range have been collected.\n\nFor instance, let's say the initial API request is\n\nhttps://analytics-calling.webexapis.com/v1/cdr_feed?endTime=2025-08-15T10:00:00.000Z&startTime=2025-08-15T08:00:00.000Z&max=5000\n\nThe link header in the response would look something like\n\n<;rel=\"next\">", "example": 1000, "schema": { "type": "number", "default": 5000 } } ] } }, "/cdr_stream": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CDRResponse" }, "example": { "items": [ { "Answer indicator": "Yes", "Answer time": "2020-05-14T11:01:17.551Z", "Answered": "true", "Authorization code": "107", "Call ID": "SSE1101163211405201218829100@10.177.4.29", "Caller ID number": "2003", "Call outcome": "Success", "Call outcome reason": "Normal", "Call Recording Platform Name": "Webex", "Call Recording Result": "successful", "Call Recording Trigger": "always", "Call transfer Time": "2023-06-05T18:21:29.707Z", "Call type": "SIP_ENTERPRISE", "Called line ID": "CALLEDCLIDGOESHERE", "Called number": "2002", "Calling line ID": "YOURCLIDGOESHERE", "Calling number": "2001", "Client type": "SIP_TOLLFREE", "Client version": "1.0.2.3", "Correlation ID": "8e8e1dc7-4f25-4595-b9c7-26237f824535", "Department ID": "4370c763-81ec-403b-aba3-626a7b1cf264", "Device MAC": "6C710D8ABC10", "Device owner UUID": "1e9e14c7-4f25-4595-b9c7-26237f824536", "Dialed digits": "1246", "Direction": "ORIGINATING", "Duration": 36, "External caller ID number": "2004", "Final local SessionID": "82bb753300105000a0000242be131609", "Final remote SessionID": "cfe67b8a00105000a0000242be131609", "Inbound trunk": "InTrunk", "International country": "US", "Local call ID": "113104021:0", "Local SessionID": "82bb753300105000a0000242be131609", "Location": "Richardson", "Model": "8851-3PCC", "Network call ID": "BW2356451711108231501755806@10.21.0.192", "Org UUID": "408806bc-a013-4a4b-9a24-85e374912102", "Original reason": "UserBusy", "OS type": "na", "Outbound trunk": "OutTrunk", "Public Called IP Address": "0.0.0.0", "Public Calling IP Address": "0.0.0.0", "Release time": "2023-10-12 21:22:32.621", "Ring duration": 23, "Redirecting party UUID": "afgh", "Redirect reason": "Unavailable", "Redirecting number": "+13343822691", "Related call ID": "760583469:0", "Related reason": "CallQueue", "Releasing party": "Remote", "Remote call ID": "113103977:0", "Remote SessionID": "6bf2f47800105000a0000242be13160a", "Report ID": "0a0c2eb7-f1f6-3326-86f9-565d2e11553d", "Report time": "2020-05-14T11:01:52.723Z", "Route group": "RouteGrpAA", "Site main number": "+14692281000", "Site timezone": "-300", "Site UUID": "474d4f70-4ef5-4d52-9e1d-b207086629e0", "Start time": "2020-05-14T11:01:16.545Z", "Sub client type": "MOBILE_NETWORK", "Transfer related call ID": "2340586843:0A", "User": "John Andersen", "User number": "+81546668399", "User type": "User", "User UUID": "47f0d0c2-f05a-44cc-870d-7a3daf859c6c", "PSTN Vendor Name": "Cisco Calling Plans", "PSTN Legal Entity": "Broadsoft Adaption LLC", "PSTN Vendor Org ID": "0b43a1a8-2efd-4892-b301-e7a5a6d2c884", "PSTN Provider ID": "e8e730a0-ee04-4df4-90a6-b7072aec9062" } ] } } } }, "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 Live Stream Detailed Call History", "operationId": "getLiveStreamDetailedCallHistory", "description": "Provides Webex Calling Detailed Call History data for your organization.\n\nResults can be filtered with the `startTime`, `endTime` and `locations` request parameters. The `startTime` and `endTime` parameters specify the time window during which Detailed Call History data was inserted into the Webex Calling cloud. The API will return all reports whose insertion time into the Webex Calling cloud falls between `startTime` and `endTime`.\n\n

\nResponse entries may be added as more information is made available for the reports.\nValues in response items may be extended as more capabilities are added to Webex Calling.", "tags": [ "Reports: Detailed Call History" ], "parameters": [ { "name": "startTime", "in": "query", "description": "The start date-time of the first record you wish to collect in UTC time. It would be the earliest time at which the data was inserted into the Webex Calling cloud for the records you wish to collect. Format must be as `YYYY-MM-DDTHH:MM:SS.mmmZ`. `startTime` can't be older than 12 hours from your current UTC time. The window period between `startTime` and `endTime` must not exceed 2 hours in a single API request.", "required": true, "example": "2022-06-08T21:27:00.604Z", "schema": { "type": "string" } }, { "name": "endTime", "in": "query", "description": "The end date-time of the last record you wish to collect in UTC time. It would be the latest time at which the data was inserted into the Webex Calling cloud for the records you wish to collect. Format must be as `YYYY-MM-DDTHH:MM:SS.mmmZ`. `endTime` must be 1 minute ago from your current UTC time and can’t be older than 12 hours. `endTime` must be greater than `startTime`. The window period between `startTime` and `endTime` must not exceed 2 hours in a single API request.", "required": true, "example": "2022-06-09T23:27:18.604Z", "schema": { "type": "string" } }, { "name": "locations", "in": "query", "description": "Name of the location (as shown in Control Hub). Up to 10 comma-separated locations can be provided. Allows you to query reports by location.", "example": "Erlanger Urgent / Primary Care Main", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of reports per page of the response. The range is 500 to 5000. Values below 500 are automatically adjusted up to 500, and values above 5000 are automatically adjusted down to 5000. When the API has more reports to return than the max value, the API response will be paginated. Follow the next link contained in the “Link” header within a response to request the next page of results. If there is no next link, all reports for the selected time range have been collected.\n\nFor instance, let's say the initial API request is\n\nhttps://analytics-calling.webexapis.com/v1/cdr_stream?endTime=2025-08-15T10:00:00.000Z&startTime=2025-08-15T08:00:00.000Z&max=5000\n\nThe link header in the response would look something like\n\n<;rel=\"next\">", "example": 1000, "schema": { "type": "number", "default": 5000 } } ] } }, "/people/{personId}/features/applications": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplicationsSetting" }, "example": { "ringDevicesForClickToDialCallsEnabled": true, "ringDevicesForGroupPageEnabled": true, "ringDevicesForCallParkEnabled": true, "browserClientEnabled": true, "browserClientId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzQyNDM3YzY5LTBlNmYtNGMxZS1iMTJhLTFjNGYxZTk5NDRjMA", "desktopClientEnabled": true, "desktopClientId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "tabletClientEnabled": true, "tabletClientId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "mobileClientEnabled": true, "mobileClientId": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "availableLineCount": 35 } } } }, "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." } }, "deprecated": true, "summary": "Retrieve a person's Application Services Settings New", "operationId": "getPersonsAppServicesSettingsNew", "description": "Gets mobile and PC applications settings for a user.\n\nApplication services let you determine the ringing behavior for calls made to people in certain scenarios. You can also specify which devices can download the Webex Calling app.\n\nRequires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a person's Application Services Settings", "operationId": "Modify a person's Application Services Settings", "description": "Application services let you determine the ringing behavior for calls made to users in certain scenarios. You can also specify which devices users can download the Webex Calling app on.\n\nThis API requires a full or user administrator or location administrator auth token with the spark-admin:people_write scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplicationsSettingPut" } } } } } }, "/people/{personId}/features/bargeIn": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BargeInInfo" }, "example": { "enabled": true, "toneEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Barge In Settings for a Person", "operationId": "Read Barge In Settings for a Person", "description": "Retrieve a person's Barge In settings.\n\nThe Barge In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge In can be used across locations.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read` or a user auth token with `spark:people_read` scope can be used by a person to read their own settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Barge In Settings for a Person", "operationId": "Configure Barge In Settings for a Person", "description": "Configure a person's Barge In settings.\n\nThe Barge In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge In can be used across locations.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their own settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "toneEnabled": true }, "schema": { "$ref": "#/components/schemas/BargeInPut" } } } } } }, "/people/{personId}/features/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardingInfo" }, "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": 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": "Read Forwarding Settings for a Person", "operationId": "Read Forwarding Settings for a Person", "description": "Retrieve a person's Call Forwarding settings.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read` or a user auth token with `spark:people_read` scope can be used by a person to read their own settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Forwarding Settings for a Person", "operationId": "Configure Call Forwarding Settings for a Person", "description": "Configure a person's Call Forwarding settings.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": true, "destination": "9075551333", "destinationVoicemailEnabled": true }, "noAnswer": { "enabled": false, "destination": "", "numberOfRings": 2, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destination": "", "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/CallForwardingPut" } } } } } }, "/people/{personId}/features/intercept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallInterceptInfo" }, "example": { "enabled": false, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "newNumber": { "enabled": false }, "zeroTransfer": { "enabled": false } } }, "outgoing": { "type": "INTERCEPT_ALL", "transferEnabled": 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": "Read Call Intercept Settings for a Person", "operationId": "Read Call Intercept Settings for a Person", "description": "Retrieves Person's Call Intercept settings.\n\nThe intercept feature gracefully takes a person's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified person are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Intercept Settings for a Person", "operationId": "Configure Call Intercept Settings for a Person", "description": "Configures a person's Call Intercept settings.\n\nThe intercept feature gracefully takes a person's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified person are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "fileName": "", "newNumber": { "enabled": false, "destination": "" }, "zeroTransfer": { "enabled": false, "destination": "" } } }, "outgoing": { "transferEnabled": false, "type": "INTERCEPT_ALL", "destination": "" } }, "schema": { "$ref": "#/components/schemas/CallInterceptPut" } } } } } }, "/people/{personId}/features/intercept/actions/announcementUpload/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure Call Intercept Greeting for a Person", "operationId": "Configure Call Intercept Greeting for a Person", "description": "Configure a person's Call Intercept Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/people/{personId}/features/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingInfo" }, "example": { "enabled": true, "record": "Never", "recordVoicemailEnabled": false, "startStopAnnouncementEnabled": false, "notification": { "enabled": true, "type": "None" }, "repeat": { "interval": 15, "enabled": false }, "serviceProvider": "WSWYZ25455", "externalGroup": "WSWYZ25455L31161", "externalIdentifier": "a34iidrh5o@64941297.int10.bcld.webex.com", "startStopAnnouncement": { "internalCallsEnabled": false, "pstnCallsEnabled": false }, "callRecordingAccessSettings": { "viewAndPlayRecordingsEnabled": false, "downloadRecordingsEnabled": false, "deleteRecordingsEnabled": false, "shareRecordingsEnabled": 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": "Read Call Recording Settings for a Person", "operationId": "Read Call Recording Settings for a Person", "description": "Retrieve a person's Call Recording settings.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_read` scope.\n\n
A person with a Webex Calling Standard license is eligible for the Call Recording feature only when the Call Recording vendor is Webex.
", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Recording Settings for a Person", "operationId": "Configure Call Recording Settings for a Person", "description": "Configure a person's Call Recording settings.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.\n\n
A person with a Webex Calling Standard license is eligible for the Call Recording feature only when the Call Recording vendor is Webex.
", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "record": "Always with Pause/Resume", "notification": { "enabled": true, "type": "Play Announcement" }, "startStopAnnouncementEnabled": true, "recordVoicemailEnabled": true, "repeat": { "enabled": true }, "startStopAnnouncement": { "internalCallsEnabled": true, "pstnCallsEnabled": true } }, "schema": { "$ref": "#/components/schemas/CallRecordingPut" } } } } } }, "/people/{personId}/features/callWaiting": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallWaitingInfo" }, "example": { "enabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Waiting Settings for a Person", "operationId": "Read Call Waiting Settings for a Person", "description": "Retrieve a person's Call Waiting settings.\n\nWith this feature, a person can place an active call on hold and answer an incoming call. When enabled, while you are on an active call, a tone alerts you of an incoming call and you can choose to answer or ignore the call.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Waiting Settings for a Person", "operationId": "Configure Call Waiting Settings for a Person", "description": "Configure a person's Call Waiting settings.\n\nWith this feature, a person can place an active call on hold and answer an incoming call. When enabled, while you are on an active call, a tone alerts you of an incoming call and you can choose to answer or ignore the call.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true }, "schema": { "$ref": "#/components/schemas/CallWaitingInfo" } } } } } }, "/people/{personId}/features/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerIdInfo" }, "example": { "types": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "selected": "DIRECT_LINE", "directNumber": "3182202028", "extensionNumber": "4000", "locationNumber": "+13182202021", "tollFreeLocationNumber": false, "firstName": "Lya", "lastName": "Charrel", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "OTHER", "customExternalCallerIdName": "Lya Custom", "locationExternalCallerIdName": "Location caller id", "additionalExternalCallerIdDirectLineEnabled": false, "additionalExternalCallerIdLocationNumberEnabled": false, "additionalExternalCallerIdCustomNumber": "2025552000", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Lya Charrel" }, "dialByFirstName": "Lya", "dialByLastName": "Charrel" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Caller ID Settings for a Person", "operationId": "Read Caller ID Settings for a Person", "description": "Retrieve a person's Caller ID settings.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Caller ID Settings for a Person", "operationId": "Configure Caller ID Settings for a Person", "description": "Configure a person's Caller ID settings.\n\nCaller ID settings control how a person's information is displayed when making outgoing calls.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_NUMBER", "directNumber": "3182202028", "extensionNumber": "4000", "locationNumber": "+13182202021", "firstName": "Lya", "lastName": "Charrel", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "OTHER", "customExternalCallerIdName": "Lya Custom", "additionalExternalCallerIdDirectLineEnabled": false, "additionalExternalCallerIdLocationNumberEnabled": false, "additionalExternalCallerIdCustomNumber": "2025552000", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Lya Charrel" }, "dialByFirstName": "Lya", "dialByLastName": "Charrel" }, "schema": { "$ref": "#/components/schemas/CallerIdPut" } } } } } }, "/people/{personId}/features/callingBehavior": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetCallingBehaviorObject" }, "example": { "behaviorType": null, "effectiveBehaviorType": "NATIVE_WEBEX_TEAMS_CALLING", "profileId": "Y2lzY29zcGFyazovL3VzL0NBTExJTkdfUFJPRklMRS9iMzdmMmZiYS0yZTdjLTExZWItYTM2OC1kYmU0Yjc2NzFmZTk" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Person's Calling Behavior", "operationId": "Read Person's Calling Behavior", "description": "Retrieves the calling behavior and UC Manager Profile settings for the person which includes overall calling behavior and calling UC Manager Profile ID.\n\nWebex Calling Behavior controls which Webex telephony application and which UC Manager Profile is to be used for a person.\n\nAn organization has an organization-wide default Calling Behavior that may be overridden for individual persons.\n\nUC Manager Profiles are applicable if your organization uses Jabber in Team Messaging mode or Calling in Webex (Unified CM).\n\nThe UC Manager Profile also has an organization-wide default and may be overridden for individual persons.\n\nThis API requires a full, user, or read-only administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure a person's Calling Behavior", "operationId": "Configure a person's Calling Behavior", "description": "Modifies the calling behavior settings for the person which includes calling behavior and UC Manager Profile ID.\n\nWebex Calling Behavior controls which Webex telephony application and which UC Manager Profile is to be used for a person.\n\nAn organization has an organization-wide default Calling Behavior that may be overridden for individual persons.\n\nUC Manager Profiles are applicable if your organization uses Jabber in Team Messaging mode or Calling in Webex (Unified CM).\n\nThe UC Manager Profile also has an organization-wide default and may be overridden for individual persons.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "behaviorType": "NATIVE_WEBEX_TEAMS_CALLING", "profileId": "Y2lzY29zcGFyazovL3VzL0NBTExJTkdfUFJPRklMRS9iMzdmMmZiYS0yZTdjLTExZWItYTM2OC1kYmU0Yjc2NzFmZTk" }, "schema": { "$ref": "#/components/schemas/PatchCallingBehaviorObject" } } } } } }, "/people/{personId}/features/doNotDisturb": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DoNotDisturbInfo" }, "example": { "enabled": true, "ringSplashEnabled": true, "webexGoOverrideEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Do Not Disturb Settings for a Person", "operationId": "Read Do Not Disturb Settings for a Person", "description": "Retrieve a person's Do Not Disturb settings.\n\nWhen enabled, this feature will give all incoming calls the busy treatment. Optionally, you can enable a Ring Reminder to play a brief tone on your desktop phone when you receive incoming calls.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read` or a user auth token with `spark:people_read` scope can be used by a person to read their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Do Not Disturb Settings for a Person", "operationId": "Configure Do Not Disturb Settings for a Person", "description": "Configure a person's Do Not Disturb settings.\n\nWhen enabled, this feature will give all incoming calls the busy treatment. Optionally, you can enable a Ring Reminder to play a brief tone on your desktop phone when you receive incoming calls.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "ringSplashEnabled": false, "webexGoOverrideEnabled": false }, "schema": { "$ref": "#/components/schemas/DoNotDisturbPut" } } } } } }, "/people/{personId}/features/executiveAssistant": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "UNASSIGNED", "EXECUTIVE", "EXECUTIVE_ASSISTANT" ], "description": "The Executive Assistant type.\n * `UNASSIGNED` - The feature is not enabled.\n * `EXECUTIVE` - The feature is enabled and the person is an Executive.\n * `EXECUTIVE_ASSISTANT` - The feature is enabled and the person is an Executive Assistant.\n" } } }, "example": { "type": "EXECUTIVE" } } } }, "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": "Retrieve Executive Assistant Settings for a Person", "operationId": "Retrieve Executive Assistant Settings for a Person", "description": "Retrieve the executive assistant settings for the specified `personId`.\n\nPeople with the executive service enabled, can select from a pool of assistants who have been assigned the executive assistant service and who can answer or place calls on their behalf. Executive assistants can set the call forward destination and join or leave an executive's pool.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Executive Assistant Settings for a Person", "operationId": "Modify Executive Assistant Settings for a Person", "description": "Modify the executive assistant settings for the specified personId.\n\nPeople with the executive service enabled, can select from a pool of assistants who have been assigned the executive assistant service and who can answer or place calls on their behalf. Executive assistants can set the call forward destination and join or leave an executive's pool.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "UNASSIGNED", "EXECUTIVE", "EXECUTIVE_ASSISTANT" ], "description": "executive assistant type\n * `UNASSIGNED` - The feature is not enabled.\n * `EXECUTIVE` - The feature is enabled and the person is an Executive.\n * `EXECUTIVE_ASSISTANT` - The feature is enabled and the person is an Executive Assistant.\n" } } } } } } } }, "/people/{personId}/features/hoteling": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HotelingInfo" }, "example": { "enabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Hoteling Settings for a Person", "operationId": "Read Hoteling Settings for a Person", "description": "Retrieve a person's hoteling settings.\n\nAs an administrator, you can enable hoteling for people so that their phone profile (phone number, features, and calling plan) is temporarily loaded onto a shared (host) phone.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Hoteling Settings for a Person", "operationId": "Configure Hoteling Settings for a Person", "description": "Configure a person's hoteling settings.\n\nAs an administrator, you can enable hoteling for people so that their phone profile (phone number, features, and calling plan) is temporarily loaded onto a shared (host) phone.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true }, "schema": { "$ref": "#/components/schemas/HotelingInfo" } } } } } }, "/people/{personId}/features/monitoring": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MonitoringSettings" }, "example": { "callParkNotificationEnabled": true, "monitoredElements": [ { "member": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85OWNlZjRmYS03YTM5LTQ1ZDItOTNmNi1jNjA5YTRiMjgzODY", "lastName": "Nelson", "firstName": "John", "displayName": "John Nelson", "type": "PEOPLE", "email": "john.nelson@gmail.com", "numbers": [ { "external": "+1-9728138888", "extension": "1234", "routingPrefix": "1234", "esn": "12341234", "primary": true } ], "location": "Dallas", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg" } }, { "member": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg=", "lastName": "Smith", "firstName": "Alice", "displayName": "AliceSmith", "type": "VIRTUAL_LINE", "numbers": [ { "external": "+19075552859", "extension": "8086", "routingPrefix": "1234", "esn": "12341234", "primary": "true" } ], "location": "Dallas", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "callparkextension": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vZTdlZDdiMDEtN2E4Ni00NDEwLWFlODMtOWJmODMzZGEzNzQy", "name": "Dallas-Test", "extension": "4001", "routingPrefix": "1234", "esn": "12344001", "location": "Dallas", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg5LWVhMzMtNDc1Ny1iMTBmLWQ2MWIyNzFhMDVlZg" } } } ] } } } }, "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": "Retrieve a person's Monitoring Settings", "operationId": "Retrieve a person's Monitoring Settings", "description": "Retrieves the monitoring settings of the person, which shows specified people, places, virtual lines or call park extenions that are being monitored.\nMonitors the line status which indicates if a person, place or virtual line is on a call and if a call has been parked on that extension.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a person's Monitoring Settings", "operationId": "Modify a person's Monitoring Settings", "description": "Modifies the monitoring settings of the person.\nMonitors the line status of specified people, places, virtual lines or call park extension. The line status indicates if a person, place or virtual line is on a call and if a call has been parked on that extension.\n\nThe number of monitored elements is limited to 50.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enableCallParkNotification": true, "monitoredElements": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OWNlZjRmYS03YTM5LTQ1ZDItOTNmNi1jNjA5YTRiMjgzODY", "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vZTdlZDdiMDEtN2E4Ni00NDEwLWFlODMtOWJmODMzZGEzNzQy", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9mNzc4ZTc4NS02MGZhLTQ1YjUtYTViZi04ODNkOWIyNTdlNGQ=" ] }, "schema": { "$ref": "#/components/schemas/MonitoringSettingsPut" } } } } } }, "/people/{personId}/features/incomingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingPermissionSetting" }, "example": { "useCustomEnabled": false, "externalTransfer": "ALLOW_ALL_EXTERNAL", "internalCallsEnabled": true, "collectCallsEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Incoming Permission Settings for a Person", "operationId": "Read Incoming Permission Settings for a Person", "description": "Retrieve a person's Incoming Permission settings.\n\nYou can change the incoming calling permissions for a person if you want them to be different from your organization's default.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Incoming Permission Settings for a Person", "operationId": "Configure Incoming Permission Settings for a Person", "description": "Configure a person's Incoming Permission settings.\n\nYou can change the incoming calling permissions for a person if you want them to be different from your organization's default.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": false, "externalTransfer": "ALLOW_ALL_EXTERNAL", "internalCallsEnabled": true, "collectCallsEnabled": true }, "schema": { "$ref": "#/components/schemas/IncomingPermissionSetting" } } } } } }, "/people/{personId}/features/outgoingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OutgoingCallingPermissionsSettingGet" }, "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "TOLL_FREE", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "INTERNATIONAL", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "OPERATOR_ASSISTED", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "CHARGEABLE_DIRECTORY_ASSISTED", "action": "BLOCK", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_I", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_II", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "PREMIUM_SERVICES_I", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "PREMIUM_SERVICES_II", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": true }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": 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": "Retrieve a person's Outgoing Calling Permissions Settings", "operationId": "Retrieve a person's Outgoing Calling Permissions Settings", "description": "Retrieve a person's Outgoing Calling Permissions settings.\n\nOutgoing calling permissions regulate behavior for calls placed to various destinations and default to the local level settings. You can change the outgoing calling permissions for a person if you want them to be different from your organization's default.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a person's Outgoing Calling Permissions Settings", "operationId": "Modify a person's Outgoing Calling Permissions Settings", "description": "Modify a person's Outgoing Calling Permissions settings.\n\nOutgoing calling permissions regulate behavior for calls placed to various destinations and default to the local level settings. You can change the outgoing calling permissions for a person if you want them to be different from your organization's default.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/OutgoingCallingPermissionsSettingPut" } } } } } }, "/people/{personId}/features/numbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetNumbers" }, "example": { "distinctiveRingEnabled": true, "phoneNumbers": [ { "primary": true, "directNumber": "2143456789", "extension": "1234", "routingPrefix": "1234", "esn": "12341234", "ringPattern": "NORMAL" } ] } } } }, "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 List of Phone Numbers for a Person", "operationId": "Get a List of Phone Numbers for a Person", "description": "Get a person's phone numbers including alternate numbers.\n\nA person can have one or more phone numbers and/or extensions via which they can be called.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_read` scope.\n\n
\n\n
The `preferE164Format` query parameter can be used to get phone numbers either in E.164 format or in their legacy format. The support for getting phone numbers in non-E.164 format in some geographies will be removed in the future.
", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "preferE164Format", "in": "query", "description": "Return phone numbers in E.164 format.", "example": "true", "schema": { "type": "boolean" } } ] } }, "/people/{personId}/features/privacy": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrivacyGet" }, "example": { "aaExtensionDialingEnabled": true, "aaNamingDialingEnabled": true, "enablePhoneStatusDirectoryPrivacy": true, "enablePhoneStatusPickupBargeInPrivacy": true, "monitoringAgents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": 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 a person's Privacy Settings", "operationId": "Get a person's Privacy Settings", "description": "Get a person's privacy settings for the specified person ID.\n\nThe privacy feature enables the person's line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of spark-admin:people_read.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "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": "Configure a person's Privacy Settings", "operationId": "Configure a person's Privacy Settings", "description": "Configure a person's privacy settings for the specified person ID.\n\nThe privacy feature enables the person's line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nThis API requires a full or user administrator or location administrator auth token with the spark-admin:people_write scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "aaExtensionDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant extension dialing is enabled." }, "aaNamingDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant dailing by first or last name is enabled." }, "enablePhoneStatusDirectoryPrivacy": { "type": "boolean", "example": true, "description": "When `true` phone status directory privacy is enabled." }, "enablePhoneStatusPickupBargeInPrivacy": { "type": "boolean", "example": true, "description": "When `true` privacy is enforced for call pickup and barge-in. Only members specified by `monitoringAgents` can pickup or barge-in on the call." }, "monitoringAgents": { "type": "array", "items": { "type": "string" }, "description": "List of monitoring person IDs." } } } } } } } }, "/people/{personId}/features/pushToTalk": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PushToTalkInfo" }, "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "location": { "name": "Paragville", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhjOWZkMjg1LTY1MDAtNDUxOC04NTZlLWViODM2YzY3NjFkOA" }, "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE", "lastName": "Johnson", "firstName": "Bob", "displayName": "Bob Johnson", "type": "PEOPLE", "email": "bob@example.com", "numbers": [ { "external": "+198455501099", "extension": "1099", "routingPrefix": "1234", "esn": "12341099", "primary": true } ] } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Push-to-Talk Settings for a Person", "operationId": "Read Push-to-Talk Settings for a Person", "description": "Retrieve a person's Push-to-Talk settings.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people in different parts of your organization.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Push-to-Talk Settings for a Person", "operationId": "Configure Push-to-Talk Settings for a Person", "description": "Configure a person's Push-to-Talk settings.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people in different parts of your organization.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE" ] }, "schema": { "$ref": "#/components/schemas/PushToTalkPut" } } } } } }, "/people/{personId}/features/reception": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReceptionInfo" }, "example": { "receptionEnabled": true, "monitoredMembers": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "location": { "name": "Paragville", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhjOWZkMjg1LTY1MDAtNDUxOC04NTZlLWViODM2YzY3NjFkOA" }, "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE", "lastName": "Johnson", "firstName": "Bob", "displayName": "Bob Johnson", "type": "PEOPLE", "email": "bob@example.com", "numbers": [ { "external": "+198455501099", "extension": "1099", "routingPrefix": "1234", "esn": "12341099", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg", "lastName": "Alice", "firstName": "Smith", "displayName": "AliceSmith", "type": "VIRTUAL_LINE", "numbers": [ { "external": "+19075552859", "extension": "8083", "routingPrefix": "1234", "esn": "12348083", "primary": "true" } ] } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Receptionist Client Settings for a Person", "operationId": "Read Receptionist Client Settings for a Person", "description": "Retrieve a person's Receptionist Client settings.\n\nTo help support the needs of your front-office personnel, you can set up people, workspaces or virtual lines as telephone attendants so that they can screen all incoming calls to certain numbers within your organization.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Receptionist Client Settings for a Person", "operationId": "Configure Receptionist Client Settings for a Person", "description": "Configure a person's Receptionist Client settings.\n\nTo help support the needs of your front-office personnel, you can set up people, workspaces or virtual lines as telephone attendants so that they can screen all incoming calls to certain numbers within your organization.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "receptionEnabled": true, "monitoredMembers": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE", "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS83MGY2MzYzMC1mZjlmLTExZWItODU5YS0xZjhiYjRjNzc3OGg" ] }, "schema": { "$ref": "#/components/schemas/ReceptionPut" } } } } } }, "/people/{personId}/features/schedules": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScheduleCollectionResponse" }, "example": { "schedules": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "name": "Dallas_Office_Hours", "type": "businessHours", "level": "LOCATION" } ] } } } }, "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 Schedules for a Person", "operationId": "List of Schedules for a Person", "description": "List schedules for a person in an organization.\n\nSchedules are used to support calling features and can be defined at the location or person level. `businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full, user, or read-only administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Specifies the offset from the first result that you want to fetch.", "example": "0", "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": "100", "schema": { "type": "number", "default": 2000 } }, { "name": "name", "in": "query", "description": "Specifies the case insensitive substring to be matched against the schedule names. The maximum length is 40.", "example": "dallas", "schema": { "type": "string", "default": "null" } }, { "name": "type", "in": "query", "description": "Specifies the schedule event type to be matched on the given type.", "example": "businessHours", "schema": { "type": "string", "default": "null" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScheduleResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ" } } } }, "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 Schedule for a Person", "operationId": "Create Schedule for a Person", "description": "Create a new schedule for a person.\n\nSchedules are used to support calling features and can be defined at the location or person level. `businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Dallas_Office_Hours", "type": "businessHours", "events": [ { "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } } ] }, "schema": { "$ref": "#/components/schemas/ScheduleCollectionRequest" } } } } } }, "/people/{personId}/features/schedules/{scheduleType}/{scheduleId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScheduleLongDetails" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "name": "Dallas_Office_Hours", "type": "businessHours", "events": [ { "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": 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 Schedule Details", "operationId": "Get a Schedule Details", "description": "Retrieve a schedule by its schedule ID.\n\nSchedules are used to support calling features and can be defined at the location or person level. `businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full, user, or read-only administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SchedulePutResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVW1samFHRnlaSE52Ymw5UFptWnBZMlZmU0c5MWNuTT0" } } } }, "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 Schedule", "operationId": "Update a Schedule", "description": "Modify a schedule by its schedule ID.\n\nSchedules are used to support calling features and can be defined at the location or person level. `businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScheduleUpdateRequest" } } } } }, "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 Schedule", "operationId": "Delete a Schedule", "description": "Delete a schedule by its schedule ID.\n\nSchedules are used to support calling features and can be defined at the location or person level. `businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/people/{personId}/features/schedules/{scheduleType}/{scheduleId}/events/{eventId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEvent" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": 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": "Fetch Event for a person's Schedule", "operationId": "Fetch Event for a person's Schedule", "description": "People can use shared location schedules or define personal schedules containing events.\n\n`businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full, user, or read-only administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Unique identifier for the event.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventPutResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUTJWdWRISmhiRjlhYjI1bFgwUmhlVjlUYUdsbWRBPT0" } } } }, "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 an Event for a person's Schedule", "operationId": "Update an Event for a person's Schedule", "description": "People can use shared location schedules or define personal schedules containing events.\n\n`businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Unique identifier for the event.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "newName": "Central_Zone_Day_Shift", "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } }, "schema": { "$ref": "#/components/schemas/PutEvent" } } } } }, "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 an Event for a person's Schedule", "operationId": "Delete an Event for a person's Schedule", "description": "People can use shared location schedules or define personal schedules containing events.\n\n`businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "eventId", "in": "path", "description": "Unique identifier for the event.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/people/{personId}/features/schedules/{scheduleType}/{scheduleId}/events": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventResponseWithId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow" } } } }, "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": "Add a New Event for Person's Schedule", "operationId": "Add a New Event for Person's Schedule", "description": "People can use shared location schedules or define personal schedules containing events.\n\n`businessHours` schedules allow you to apply specific call settings at different times of the day or week by defining one or more events. `holidays` schedules define exceptions to normal business hours by defining one or more events.\n\nThis API requires a full or user administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "scheduleType", "in": "path", "description": "Type of schedule, either `businessHours` or `holidays`.", "required": true, "schema": { "type": "string" } }, { "name": "scheduleId", "in": "path", "description": "Unique identifier for the schedule.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "Day_Shift", "startDate": "2020-03-18", "endDate": "2020-03-18", "startTime": "08:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurEndDate": "2020-03-18", "recurEndOccurrence": 1, "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "recurInterval": 1, "sunday": false, "monday": false, "tuesday": false, "wednesday": true, "thursday": false, "friday": false, "saturday": false } } }, "schema": { "$ref": "#/components/schemas/EventLongDetails" } } } } } }, "/people/{personId}/features/voicemail": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailInfo" }, "example": { "enabled": true, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": false }, "sendUnansweredCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": true, "numberOfRings": 3, "systemMaxNumberOfRings": 20 }, "notifications": { "enabled": true, "destination": "julie@example.com" }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" }, "messageStorage": { "mwiEnabled": true, "storageType": "INTERNAL", "externalEmail": "julia@example.com" }, "faxMessage": { "enabled": false }, "voiceMessageForwardingEnabled": 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": "Read Voicemail Settings for a Person", "operationId": "Read Voicemail Settings for a Person", "description": "Retrieve a person's Voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. Voicemail audio is sent in Waveform Audio File Format, `.wav`, format.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read` or a user auth token with `spark:people_read` scope can be used by a person to read their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Voicemail Settings for a Person", "operationId": "Configure Voicemail Settings for a Person", "description": "Configure a person's Voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. Voicemail audio is sent in Waveform Audio File Format, `.wav`, format.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "notifications": { "enabled": true, "destination": "julie@example.com" }, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT" }, "sendUnansweredCalls": { "enabled": false, "greeting": "CUSTOM", "numberOfRings": 3 }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" } }, "schema": { "$ref": "#/components/schemas/VoicemailPut" } } } } } }, "/people/{personId}/features/voicemail/actions/uploadBusyGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure Busy Voicemail Greeting for a Person", "operationId": "Configure Busy Voicemail Greeting for a Person", "description": "Configure a person's Busy Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/people/{personId}/features/voicemail/actions/uploadNoAnswerGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure No Answer Voicemail Greeting for a Person", "operationId": "Configure No Answer Voicemail Greeting for a Person", "description": "Configure a person's No Answer Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope or a user auth token with `spark:people_write` scope can be used by a person to update their settings.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/people/{personId}/features/voicemail/actions/resetPin/invoke": { "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": "Reset Voicemail PIN", "operationId": "Reset Voicemail PIN", "description": "Reset a voicemail PIN for a person.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. A voicemail PIN is used to retrieve your voicemail messages.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.\n\n**NOTE**: This API is expected to have an empty request body and Content-Type header should be set to `application/json`.", "tags": [ "User Call Settings (1/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": {}, "schema": { "type": "object", "properties": {} } } } } } }, "/telephony/config/jobs/person/moveLocation": { "post": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MoveUsersValidationResponse" }, "example": { "response": [ { "userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "impacts": [ { "code": 19701, "message": "[Informational 19701] The identity/device profile the user is using is moved to the new group: GBKAXBRMJUXF, GNXX95CLTQ0V, HD_92dbc8b6-30d1-419f-9386-3340da658f9c, G4O4NVP7MZI5, GQGWO5BDMPLP." }, { "code": 19722, "message": "[Informational 19722] User CLID number is set to use the new group CLID number: null." }, { "code": 19723, "message": "[Informational 19723] New group CLID number is not configured." } ], "errors": [ { "code": 4202, "message": "[Error 4202] The extension is not available. It is already assigned to a user: 7593. " } ] } ] } } } }, "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MoveUsersStartJobResponse" }, "example": { "response": { "name": "moveusers", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mZjBlN2Q2Ni05MDRlLTRkZGItYjJlNS05ZGM0ODk0ZDY5OTk", "trackingId": "ROUTER_ebb52b5b-d060-4164-9757-48b383423d73", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "instanceId": 10, "jobExecutionStatus": [ { "id": 10, "startTime": "2023-06-08T12:05:11.798Z", "lastUpdated": "2023-06-08T12:05:11.798Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "createdTime": "2023-06-08T12:05:11.752Z", "timeElapsed": "PT0S" } ], "latestExecutionStatus": "STARTED", "latestExecutionExitCode": "UNKNOWN", "counts": { "totalMoves": 0, "moved": 0, "failed": 0, "pending": 0, "skipped": 0, "inProgress": 0, "notStarted": 0 } } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MoveUsersErrorResponse" }, "example": { "error": [ { "code": 1026016, "message": "User should have either phone number or extension." } ] } } } }, "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": "Validate or Initiate Move Users Job", "operationId": "validateOrInitiateMoveUsersJob", "description": "This API allows the user to perform one of the following operations:\n\n* Setting the `validate` attribute to `true` validates the user move.\n\n* Setting the `validate` attribute to `false` performs the user move.\n\n
\n\nNotes:\n\n* A maximum of `100` users can be moved at a time.\n\n* Setting the `validate` attribute to `true` only allowed for calling user.\n\n* When a single non calling user is moved, it will be moved synchronously without creating any job.\n\n
\n\nErrors occurring during the initial API request validation are captured directly in the error response, along with the appropriate HTTP status code.\n\n
\n\nBelow is a list of possible error `code` values and their associated `message`, which can be found in the `errors` array during initial API request validation, regardless of the `validate` attribute value:\n\n* BATCH-400 - Attribute 'User ID' is required.\n\n* BATCH-400 - Users list should not be empty.\n\n* BATCH-400 - Users should not be empty.\n\n* 1026006 - Attribute 'Validate' is required.\n\n* 1026010 - User is not a valid Calling User.\n\n* 1026011 - Users list should not be empty.\n\n* 1026012 - Users should not be empty.\n\n* 1026013 - The source and the target location cannot be the same.\n\n* 1026014 - Error occurred while processing the move users request.\n\n* 1026015 - Error occurred while moving user number to target location.\n\n* 1026016 - User should have either phone number or extension.\n\n* 1026017 - Phone number is not in e164 format.\n\n* 1026018 - Selected Users list exceeds the maximum limit.\n\n* 1026019 - Duplicate entry for user is not allowed.\n\n* 1026020 - Validate 'true' is supported only for single user.\n\n* 1026021 - Attribute location id is required for Calling user.\n\n* 1026022 - Validate 'true' is supported for calling users only.\n\n* 1026023 - Extension and phone number is supported for calling users only.\n\n* 2150012 - User was not found\n\n
\n\nWhen the `validate` attribute is set to true, the API identifies and returns the `errors` and `impacts` associated with the user move in the response.\n\n
\n\nBelow is a list of possible error `code` values and their associated `message`, which can be found in the `errors` array, when `validate` attribute is set to be true:\n\n* 4003 - `User Not Found`\n\n* 4007 - `User Not Found`\n\n* 4152 - `Location Not Found`\n\n* 5620 - `Location Not Found`\n\n* 4202 - `The extension is not available. It is already assigned to a user : {0}`\n\n* 8264 - `Routing profile is different with new group: {0}`\n\n* 19600 - `User has to be within an enterprise to be moved.`\n\n* 19601 - `User can only be moved to a different group within the same enterprise.`\n\n* 19602 - `Only regular end user can be moved. Service instance virtual user cannot be moved.`\n\n* 19603 - `New group already reaches maximum number of user limits.`\n\n* 19604 - `The {0} number of the user is the same as the calling line ID of the group.`\n\n* 19605 - `User is assigned services not authorized to the new group: {0}.`\n\n* 19606 - `User is in an active hoteling/flexible seating association.`\n\n* 19607 - `User is pilot user of a trunk group.`\n\n* 19608 - `User is using group level device profiles which is used by other users in current group. Following are the device profiles shared with other users: {0}.`\n\n* 19609 - `Following device profiles cannot be moved to the new group because there are already devices with the same name defined in the new group: {0}.`\n\n* 19610 - `The extension of the user is used as transfer to operator number for following Auto Attendent : {0}.`\n\n* 19611 - `Fail to move announcement file from {0} to {1}.`\n\n* 19612 - `Fail to move device management file from {0} to {1}.`\n\n* 19613 - `User is assigned service packs not authorized to the new group: {0}.`\n\n* 25008 - `Missing Mandatory field name: {0}`\n\n* 25110 - `{fieldName} cannot be less than {0} or greater than {1} characters.`\n\n* 25378 - `Target location is same as user's current location.`\n\n* 25379 - `Error Occurred while Fetching User's Current Location Id.`\n\n* 25381 - `Error Occurred while rolling back to Old Location Call recording Settings`\n\n* 25382 - `Error Occurred while Disabling Call Recording for user which is required Before User can be Moved`\n\n* 25383 - `OCI Error while moving user`\n\n* 25384 - `Error Occurred while checking for Possible Call Recording Impact.`\n\n* 25385 - `Error Occurred while getting Call Recording Settings`\n\n* 27559 - `The groupExternalId search criteria contains groups with different calling zone.`\n\n* 27960 - `Parameter isWebexCalling, newPhoneNumber, or newExtension can only be set in Webex Calling deployment mode.`\n\n* 27961 - `Parameter isWebexCalling shall be set if newPhoneNumber or newExtension is set.`\n\n* 27962 - `Work space cannot be moved.`\n\n* 27963 - `Virtual profile user cannot be moved.`\n\n* 27965 - `The user's phone number: {0}, is same as the current group charge number.`\n\n* 27966 - `The phone number, {0}, is not available in the new group.`\n\n* 27967 - `User is configured as the ECBN user for another user in the current group.`\n\n* 27968 - `User is configured as the ECBN user for the current group.`\n\n* 27969 - `User is associated with DECT handset(s): {0}`\n\n* 27970 - `User is using a customer managed device: {0}`\n\n* 27971 - `User is using an ATA device: {0}`\n\n* 27972 - `User is in an active hotdesking association.`\n\n* 27975 - `Need to unassign CLID number from group before moving the number to the new group. Phone number: {0}`\n\n* 27976 - `Local Gateway configuration is different with new group. Phone number: {0}`\n\n* 1026015 - `Error occurred while moving user number to target location`\n\n* 10010000 - `Total numbers exceeded maximum limit allowed`\n\n* 10010001 - `to-location and from-location cannot be same`\n\n* 10010002 - `to-location and from-location should belong to same customer`\n\n* 10010003 - `to-location must have a carrier`\n\n* 10010004 - `from-location must have a carrier`\n\n* 10010005 - `Different Carrier move is not supported for non-Cisco PSTN carriers.`\n\n* 10010006 - `Number move not supported for WEBEX_DIRECT carriers.`\n\n* 10010007 - `Numbers out of sync, missing on CPAPI`\n\n* 10010008 - `from-location not found or pstn connection missing in CPAPI`\n\n* 10010010 - `from-location is in transition`\n\n* 10010009 - `to-location not found or pstn connection missing in CPAPI`\n\n* 10010011 - `to-location is in transition`\n\n* 10010012 - `Numbers don't have a carrier Id`\n\n* 10010013 - `Location less numbers don't have a carrier Id`\n\n* 10010014 - `Different Carrier move is not supported for numbers with different country or region.`\n\n* 10010015 - `Numbers contain mobile and non-mobile types.`\n\n* 10010016 - `To/From location carriers must be same for mobile numbers.`\n\n* 10010017 - `Move request for location less number not supported`\n\n* 10010200 - `Move request for more than one block number is not supported`\n\n* 10010201 - `Cannot move block number as few numbers not from the block starting %s to %s`\n\n* 10010202 - `Cannot move block number as few numbers failed VERIFICATION from the block %s to %s`\n\n* 10010203 - `Cannot move block number as few numbers missing from the block %s to %s`\n\n* 10010204 - `Cannot move number as it is NOT a part of the block %s to %s`\n\n* 10010205 - `Move request for Cisco PSTN block order not supported.`\n\n* 10010299 - `Move order couldn't be created as no valid number to move`\n\n* 10030000 - `Number not found`\n\n* 10030001 - `Number does not belong to from-location`\n\n* 10030002 - `Number is not present in CPAPI`\n\n* 10030003 - `Number assigned to an user or device`\n\n* 10030004 - `Number not in Active status`\n\n* 10030005 - `Number is set as main number of the location`\n\n* 10030006 - `Number has pending order associated with it`\n\n* 10030007 - `Number belongs to a location but a from-location was not set`\n\n* 10030008 - `Numbers from multiple carrier ids are not supported`\n\n* 10030009 - `Location less number belongs to a location. from-location value is set to null or no location id`\n\n* 10030010 - `One or more numbers are not portable.`\n\n* 10030011 - `Mobile number carrier was not set`\n\n* 10030012 - `Number must be assigned for assigned move`\n\n* 10050000 - `Failed to update customer reference for phone numbers on carrier`\n\n* 10050001 - `Failed to update customer reference`\n\n* 10050002 - `Order is not of operation type MOVE`\n\n* 10050003 - `CPAPI delete call failed`\n\n* 10050004 - `Not found in database`\n\n* 10050005 - `Error sending notification to WxcBillingService`\n\n* 10050006 - `CPAPI provision number as active call failed with status %s ,reason %s`\n\n* 10050007 - `Failed to update E911 Service`\n\n* 10050008 - `Target location does not have Inbound Toll Free license`\n\n* 10050009 - `Source location or Target location subscription found cancelled or suspended`\n\n* 10050010 - `Moving On Premises or Non Integrated CCP numbers from one location to another is not supported.`\n\n* 10099999 - `{Error Code} - {Error Message}`\n\n
\n\nBelow is a list of possible impact `code` values and their associated `message`, which can be found in the `impacts` array, when `validate` attribute is set to be true:\n\n* 19701 - `The identity/device profile the user is using is moved to the new group: {0}.`\n\n* 19702 - `The user level customized incoming digit string setting is removed from the user. User is set to use the new group setting.`\n\n* 19703 - `The user level customized outgoing digit plan setting is removed from the user. User is set to use the new group setting.`\n\n* 19704 - `The user level customized enhanced outgoing calling plan setting is removed from the user. User is set to use the new group setting.`\n\n* 19705 - `User is removed from following group services: {0}.`\n\n* 19706 - `The current group schedule used in any criteria is removed from the service settings.`\n\n* 19707 - `User is removed from the department of the old group.`\n\n* 19708 - `User is changed to use the default communication barring profile of the new group.`\n\n* 19709 - `The communication barring profile of the user is assigned to the new group: {0}.`\n\n* 19710 - `The charge number for the user is removed.`\n\n* 19711 - `The disabled FACs for the user are removed because they are not available in the new group.`\n\n* 19712 - `User is removed from trunk group.`\n\n* 19713 - `The extension of the user is reset to empty due to either the length is out of bounds of the new group, or the extension is already taken in new group.`\n\n* 19714 - `The extension of the following alternate number is reset to empty due to either the length out of bounds of the new group or the extension is already taken in new group: {0}.`\n\n* 19715 - `The collaborate room using current group default collaborate bridge is moved to the default collaborate bridge of the new group.`\n\n* 19716 - `Previously stored voice messages of the user are no longer available. The new voice message will be stored on the mail server of the new group.`\n\n* 19717 - `The primary number, alternate numbers or fax messaging number of the user are assigned to the new group: {0}.`\n\n* 19718 - `Following domains are assigned to the new group: {0}.`\n\n* 19719 - `The NCOS of the user is assigned to the new group: {0}.`\n\n* 19720 - `The office zone of the user is assigned to the new group: {0}.`\n\n* 19721 - `The announcement media files are relocated to the new group directory.`\n\n* 19722 - `User CLID number is set to use the new group CLID number: {0}.`\n\n* 19723 - `New group CLID number is not configured.`\n\n* 19724 - `The group level announcement file(s) are removed from the user's music on hold settings.`\n\n* 25388 - `Target Location Does not Have Vendor Configured. Call Recording for user will be disabled`\n\n* 25389 - `Call Recording Vendor for user will be changed from:{0} to:{1}`\n\n* 25390 - `Dub point of user is moved to new external group`\n\n* 25391 - `Error Occurred while moving Call recording Settings to new location`\n\n* 25392 - `Error Occurred while checking for Possible Call Recording Impact.`\n\n* 25393 - `Sending Billing Notification Failed`\n\nThis API requires a full administrator auth token with the scopes `spark-admin:telephony_config_write`, `spark-admin:people_write`, and `identity:groups_rw`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create Move Users job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "usersList": [ { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVmMDI3OGZlLWU4OGMtNDMzNy04MGViLWRjY2NiM2VlMDU1MA", "validate": false, "users": [ { "userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9teW5hbWUgaXNvcHRpdXMGEyltZXdlYXJlMGEyMGEyNWM1OWE", "phoneNumber": "+18632520486" }, { "userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTJhYjliZC1jNmUyLTZlYWUtMWE5YS01ZWZhMGEyNWMxNmE", "extension": "28544" } ] }, { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVmMDI3OGZlLWU4OGMtNDkwNS04MGViLWRjY2NiM2VlMTQ0MwFG", "validate": false, "users": [ { "userId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "extension": "29376", "phoneNumber": "+18947028597" } ] } ] }, "schema": { "$ref": "#/components/schemas/MoveUsersStartJobObject" } } } } }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobListResponse" }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8xMzFkOTg1ZC1iZThhLTQ3MjgtYjM2MC02MzBjNTAxNTEyNzE", "trackingId": "ROUTER_6475F43E-A25A-01BB-76CC-AC108AF376CC", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "instanceId": 328660, "jobExecutionStatus": [ { "id": 332387, "startTime": "2023-05-30T13:04:00.469Z", "endTime": "2023-05-30T13:04:03.252Z", "lastUpdated": "2023-05-30T13:04:03.574Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-05-30T13:04:00.457Z", "stepExecutionStatuses": [ { "id": 1549115, "startTime": "2023-05-30T13:04:00.493Z", "endTime": "2023-05-30T13:04:03.245Z", "lastUpdated": "2023-05-30T13:04:03.246Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "moveusersvalidateAndMove", "timeElapsed": "PT2.752S" } ], "timeElapsed": "PT2.752S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "totalMoves": 1, "moved": 1, "failed": 0, "pending": 0, "skipped": 0 }, "csvFile": "02124eef-8af7-489c-805b-363cc6401893/cbf865e9-d069-4004-bb57-2a39f5bfb5fe_d1fde6bf944c40ed8ffbab14e6ca6a12", "csvFileExpiryTime": "2023-07-12T12:20:33.503Z", "fileFormat": "text/csv" }, { "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8yNjFjZTRkZi03MmQwLTRjOTgtYWI0MS03ZDJhOTM4ZjhmZDk", "trackingId": "ROUTER_6475F3F5-9D6C-01BB-4C40-AC108AF34C40", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "instanceId": 328658, "jobExecutionStatus": [ { "id": 332385, "startTime": "2023-05-30T13:02:47.830Z", "endTime": "2023-05-30T13:02:51.035Z", "lastUpdated": "2023-05-30T13:02:51.353Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-05-30T13:02:47.813Z", "stepExecutionStatuses": [ { "id": 1549111, "startTime": "2023-05-30T13:02:47.856Z", "endTime": "2023-05-30T13:02:51.028Z", "lastUpdated": "2023-05-30T13:02:51.028Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "moveusersvalidateAndMove", "timeElapsed": "PT3.172S" } ], "timeElapsed": "PT3.172S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "totalMoves": 1, "moved": 1, "failed": 0, "pending": 0, "skipped": 0 }, "csvFile": "02124eef-7be6-489c-805b-363cc6401893/cbf865e9-d069-4004-bb57-2a39f5bfb5fe_d1fde6bf944c40ed8ffbab14e6ca6a12", "csvFileExpiryTime": "2023-07-12T12:20:33.503Z", "fileFormat": "text/csv" } ] } } } }, "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 Move Users Jobs", "operationId": "listMoveUsersJobs", "description": "Lists all the Move Users jobs for the given organization in order of most recent job to oldest job irrespective of its status.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Retrieve list of Move Users jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of jobs. Default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "max", "in": "query", "description": "Limit the number of jobs returned to this maximum count. Default is 2000.", "example": 2000, "schema": { "type": "number", "minimum": 0 } } ] } }, "/telephony/config/jobs/person/moveLocation/{jobId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobDetailsResponseById" }, "example": { "name": "moveusers", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8xMzFkOTg1ZC1iZThhLTQ3MjgtYjM2MC02MzBjNTAxNTEyNzE", "trackingId": "ROUTER_6475F43E-A25A-01BB-76CC-AC108AF376CC", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "instanceId": 328660, "jobExecutionStatus": [ { "id": 332387, "startTime": "2023-05-30T13:04:00.469Z", "endTime": "2023-05-30T13:04:03.252Z", "lastUpdated": "2023-05-30T13:04:03.574Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "createdTime": "2023-05-30T13:04:00.457Z", "stepExecutionStatuses": [ { "id": 1549115, "startTime": "2023-05-30T13:04:00.493Z", "endTime": "2023-05-30T13:04:03.245Z", "lastUpdated": "2023-05-30T13:04:03.246Z", "statusMessage": "COMPLETED", "exitCode": "COMPLETED", "name": "moveusersvalidateAndMove", "timeElapsed": "PT2.752S" } ], "timeElapsed": "PT2.752S" } ], "latestExecutionStatus": "COMPLETED", "latestExecutionExitCode": "COMPLETED", "counts": { "totalMoves": 1, "moved": 1, "failed": 0, "pending": 0, "skipped": 0 }, "csvFile": "02124eef-7be6-489c-805b-363cc6401893/cbf865e9-d069-4004-bb57-2a39f5bfb5fe_d1fde6bf944c40ed8ffbab14e6ca6a12", "csvFileExpiryTime": "2023-07-12T12:20:33.503Z", "fileFormat": "text/csv", "csvFileDownloadUrl": "https://files-int-us-east-1.webexcontent.com/5ab33047-d7ad-42dd-83c5-2e73da63b2ad/8c54b800-10ed-11ee-97c3-a38ed64ceaf4?x-amz-meta-tracking-id=NA_33b1a151-4c47-46a5-8fc5-09f3111c4313&x-amz-meta-user-id=ef2e385f-acad-4e90-8c10-c6532aa0c28d&Expires=1687440028&Signature=ckIcTq-7mUfcdsvSbAR5cUGC76FfyJ6D06~bKXuCrfHkku-eqPsMImRIBCqvWoBRQ1nwGdZk043AFXrwKMxDR9y~GJkzPVAjZwEU3Rr1pK-2aVEDMzP8AVlMYQmJPrmVFlnX8AxDh9YnCeoGUhwUbT~wjyj~NJP3PGfc-hwyXWnFTmdvL3Ehn66z9BQxKksZMOWCyghd~9otoBVC-WyA1Nx2LDOT1qmlLeqN2xwWpdu5Atll0tPUQaOQbCP3-bnOcmL0tR~2gUzfBMUhsW7UO1IPD451va8qcw687~Mglu5VPdpWlIjVXZu6Qk1uCIWSQ0czRDOiFH6RKWtQCD95qw__&Key-Pair-Id=APKAJADAKLCI2FW2U32Q" } } } }, "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 Move Users Job Status", "operationId": "getMoveUsersJobStatus", "description": "Returns the status and other details of the job.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve job details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8xMzFkOTg1ZC1iZThhLTQ3MjgtYjM2MC02MzBjNTAxNTEyNzE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Retrieve job details for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/jobs/person/moveLocation/{jobId}/actions/pause/invoke": { "post": { "responses": { "202": { "description": "Accepted", "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": "Pause the Move Users Job", "operationId": "pauseMoveUsersJob", "description": "Pause the running Move Users Job. A paused job can be resumed.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Pause the Move Users job for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Pause the Move Users job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80YTViYjVhOC1hZDAwLTQ0ZGEtODg2NC0wYjExNTE0NDQyYzk", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/jobs/person/moveLocation/{jobId}/actions/resume/invoke": { "post": { "responses": { "202": { "description": "Accepted", "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": "Resume the Move Users Job", "operationId": "resumeMoveUsersJob", "description": "Resume the paused Move Users Job that is in paused status.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Resume the Move Users job for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Resume the Move Users job for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80YTViYjVhOC1hZDAwLTQ0ZGEtODg2NC0wYjExNTE0NDQyYzk", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/jobs/person/moveLocation/{jobId}/errors": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseObject" }, "example": { "items": [ { "itemNumber": 1, "item": "52efdff9-9db6-438d-9b96-638365789353", "error": { "key": "400", "message": [ { "description": "[Error 19605] User is assigned services not authorized to the new group: [Basic Call Logs].", "code": "19605", "location": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2U3ZjlmZTQ0LTI3ZjEtNGE2NC04NmJhLTM1NmE0YjUyMTk4ZA" } ] }, "trackingId": "NA_097fb6e7-e972-41b3-a9e1-bd5a4a31eb33" } ], "paging": { "next": [], "prev": null, "limit": 50, "offset": 0, "pages": null, "count": 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": "List Move Users Job errors", "operationId": "listMoveUsersJobErrors", "description": "Lists all error details of Move Users job. This will not list any errors if `exitCode` is `COMPLETED`. If the status is `COMPLETED_WITH_ERRORS` then this lists the cause of failures.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "jobId", "in": "path", "description": "Retrieve the error details for this `jobId`.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC84YTI0ZjM5NC1lMTdjLTRiMTYtOTU3Ni0zNzA3YjY5YmU3Mzc", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Retrieve list of jobs for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "start", "in": "query", "description": "Specifies the error offset from the first result that you want to fetch.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "max", "in": "query", "description": "Specifies the maximum number of records that you want to fetch.", "example": 100, "schema": { "type": "number", "default": 2000 } } ] } }, "/telephony/config/people/{personId}/musicOnHold": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMusicOnHoldObject" }, "example": { "mohEnabled": true, "mohLocationEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } } } }, "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": "Retrieve Music On Hold Settings for a Person", "operationId": "retrieveMusicOnHoldSettingsForPerson", "description": "Retrieve the person's music on hold settings.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nRetrieving a person's music on hold settings requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "externalDocs": { "description": "Music On Hold API Documentation", "url": "https://developer.webex.com/docs/api/v1/webex-calling-person-settings-music-on-hold" }, "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Music On Hold Settings for a Person", "operationId": "configureMusicOnHoldSettingsForPerson", "description": "Configure a person's music on hold settings.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nTo configure music on hold settings for a person, music on hold setting must be enabled for this location.\n\nUpdating a person's music on hold settings requires a full or user administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "mohEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, "schema": { "$ref": "#/components/schemas/PutMusicOnHoldObject" } } } } } }, "/telephony/config/people/{personId}/outgoingPermission/accessCodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListGet" }, "example": { "useCustomAccessCodes": true, "accessCodes": [ { "code": "4856", "description": "Marketing's access code", "level": "CUSTOM" }, { "code": "3421", "description": "Finance's access code", "level": "CUSTOM" } ] } } } }, "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": "Retrieve Access Codes for a Person", "operationId": "retrieveAccessCodesForPerson", "description": "Retrieve the person's access codes.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Access Codes for a Person", "operationId": "modifyAccessCodesForPerson", "description": "Modify a person's access codes.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomAccessCodes": true, "deleteCodes": [ "4856", "2421" ] }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListPatch" } } } } }, "post": { "responses": { "201": { "description": "Created", "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": "Create Access Codes for a Person", "operationId": "createAccessCodesForPerson", "description": "Create new Access codes for the person.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "code": "4856", "description": "Marketing's access code" }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeAdd" } } } } }, "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 Access Codes for a Person", "operationId": "deleteAccessCodesForPerson", "description": "Deletes all Access codes for the person.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/outgoingPermission/autoTransferNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransferNumberGet" }, "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" } } } }, "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": "Retrieve Transfer Numbers for a Person", "operationId": "retrieveTransferNumbersForPerson", "description": "Retrieve the person's transfer numbers.\n\nWhen calling a specific call type, this person will be automatically transferred to another number. The person assigned the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Transfer Numbers for a Person", "operationId": "modifyTransferNumbersForPerson", "description": "Modify a person's transfer numbers.\n\nWhen calling a specific call type, this person will be automatically transferred to another number. The person assigned the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" }, "schema": { "$ref": "#/components/schemas/TransferNumberPatch" } } } } } }, "/telephony/config/people/{personId}/outgoingPermission/digitPatterns": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternGetListObject" }, "example": { "useCustomDigitPatterns": false, "digitPatterns": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern1", "pattern": "2XXXX", "action": "ALLOW", "transferEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V5", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve Digit Patterns for a Person", "operationId": "retrieveDigitPatternsForPerson", "description": "Retrieve the person's digit patterns.\n\nDigit patterns are used to bypass permissions.\n\nRetrieving digit patterns requires a full or user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created digit pattern." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Digit Patterns for a Person", "operationId": "createDigitPatternsForPerson", "description": "Create a new digit pattern for the given person.\n\nDigit patterns are used to bypass permissions.\n\nCreating the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern3", "pattern": "3XXX", "action": "ALLOW", "transferEnabled": false }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternPostObject" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify the Digit Pattern Category Control Settings for a Person", "operationId": "modifyDigitPatternCategoryControlSettingsForPerson", "description": "Modifies whether this user uses the specified digit patterns when placing outbound calls or not.\n\nUpdating the digit pattern category control settings requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomDigitPatterns": true }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternCategoryControlPatchObject" } } } } }, "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 all Digit Patterns for a Person", "operationId": "deleteAllDigitPatternsPerson", "description": "Delete all digit patterns for a Person.\n\nDigit patterns are used to bypass permissions.\n\nDeleting the digit patterns requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/outgoingPermission/digitPatterns/{digitPatternId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserDigitPatternObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve Digit Pattern Details for a Person", "operationId": "retrieveDigitPatternDetailsPerson", "description": "Retrieve the digit pattern details for a person.\n\nDigit patterns are used to bypass permissions.\n\nRetrieving the digit pattern details requires a full or user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Digit Pattern for a Person", "operationId": "modifyDigitPatternForPerson", "description": "Modify a digit pattern for a Person.\n\nDigit patterns are used to bypass permissions.\n\nUpdating the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern4", "pattern": "3XXX2" }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternPatchObject" } } } } }, "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 Digit Pattern for a Person", "operationId": "deleteADigitPatternPerson", "description": "Delete a digit pattern for a Person.\n\nDigit patterns are used to bypass permissions.\n\nDeleting the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/numbers": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Assign or Unassign numbers to a person", "operationId": "assignOrUnassignNumbersToAPerson", "description": "Assign or unassign alternate phone numbers to a person.\n\nEach location has a set of phone numbers that can be assigned to people, workspaces, or features. Phone numbers must follow the E.164 format for all countries, except for the United States, which can also follow the National format. Active phone numbers are in service.\n\nAssigning or unassigning an alternate phone number to a person requires a full administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identitfier of the person.", "required": true, "example": "'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iNTcwZGY3ZC00MjBkLTQ4NGYtYWE5OS1kMzcxOGZjNDUxZDA='", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization of the Route Group.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "enableDistinctiveRingPattern": true, "phoneNumbers": [ { "directNumber": "+12145553567", "extension": "0007", "primary": false, "action": "ADD", "ringPattern": "SHORT_LONG_SHORT" }, { "directNumber": "+12145553569", "extension": "0009", "primary": false, "action": "DELETE", "ringPattern": "SHORT_LONG_SHORT" } ] }, "schema": { "$ref": "#/components/schemas/UserNumbersPatch" } } } } } }, "/telephony/config/people/{personId}/preferredAnswerEndpoint": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/endpointInformation" }, "example": { "preferredAnswerEndpointId": "Y2lzY29z...", "endpoints": [ { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)" }, { "id": "Y2lzY29b...", "type": "APPLICATION", "name": "Webex Desktop Application" } ] } } } }, "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 Preferred Answer Endpoint", "operationId": "getPreferredAnswerEndpoint", "description": "Get the person's preferred answer endpoint and the list of endpoints available for selection. The preferred answer endpoint is null if one has not been selected. The list of endpoints is empty if the person has no endpoints assigned which support the preferred answer endpoint functionality. These endpoints can be used by the following Call Control API's that allow the person to specify an endpointId to use for the call:
\n\n+ [/v1/telephony/calls/dial](/docs/api/v1/call-controls/dial)
\n\n+ [/v1/telephony/calls/retrieve](/docs/api/v1/call-controls/retrieve)
\n\n+ [/v1/telephony/calls/pickup](/docs/api/v1/call-controls/pickup)
\n\n+ [/v1/telephony/calls/barge-in](/docs/api/v1/call-controls/barge-in)
\n\n+ [/v1/telephony/calls/answer](/docs/api/v1/call-controls/answer)
\n\nThis API requires `spark:telephony_config_read` or `spark-admin:telephony_config_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29z...", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Preferred Answer Endpoint", "operationId": "modifyPreferredAnswerEndpoint", "description": "Sets or clears the person’s preferred answer endpoint. To clear the preferred answer endpoint the `preferredAnswerEndpointId` attribute must be set to null.
\nThis API requires `spark:telephony_config_write` or `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29z...", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "preferredAnswerEndpointId": "Y2lzY29z..." }, "schema": { "$ref": "#/components/schemas/EndpointIdType" } } } } } }, "/telephony/config/people/{personId}/applications/{applicationId}/availableMembers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableSharedLineMemberList" }, "example": { "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "firstName": "John", "lastName": "Doe", "phoneNumber": "1234567890", "extension": "0000", "routingPrefix": "1234", "esn": "12340000", "lineType": "SHARED_CALL_APPEARANCE", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw", "name": "MainOffice" } } ] } } } }, "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." } }, "deprecated": true, "summary": "Search Shared-Line Appearance Members", "operationId": "searchSharedLineAppearanceMembers", "description": "Get members available for shared-line assignment to a Webex Calling Apps Desktop device.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "applicationId", "in": "path", "description": "A unique identifier for the application.", "required": true, "example": "2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzFmNWUwYWYzLTIwMjgtNDFkNS05OWI3LTVkNTQyMzI3Y2MwMA", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Number of records per page.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Page number.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "location", "in": "query", "description": "Location ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyOTA4Mg", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "name", "in": "query", "description": "Search for users with names that match the query.", "example": "john", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "number", "in": "query", "description": "Search for users with numbers that match the query.", "example": "1234567890", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "order", "in": "query", "description": "Sort by first name (`fname`) or last name (`lname`).", "example": "fname", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "extension", "in": "query", "description": "Search for users with extensions that match the query.", "example": "1111", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/applications/{applicationId}/members": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSharedLineMemberList" }, "example": { "model": "Business Communicator - PC", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "firstName": "John", "lastName": "Doe", "phoneNumber": "2056852221", "extension": "1111", "routingPrefix": "1234", "esn": "12341111", "port": 1, "primaryOwner": "true", "lineType": "SHARED_CALL_APPEARANCE", "lineWeight": 1, "hostIP": "198.168.0.1", "remoteIP": "198.168.0.2", "hotlineEnabled": true, "hotlineDestination": "1234", "allowCallDeclineEnabled": true, "lineLabel": "share line label", "memberType": "PEOPLE", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw", "name": "MainOffice" } } ], "maxLineCount": 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." } }, "deprecated": true, "summary": "Get Shared-Line Appearance Members", "operationId": "getSharedLineAppearanceMembers", "description": "Get primary and secondary members assigned to a shared line on a Webex Calling Apps Desktop device.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "applicationId", "in": "path", "description": "A unique identifier for the application.", "required": true, "example": "2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzFmNWUwYWYzLTIwMjgtNDFkNS05OWI3LTVkNTQyMzI3Y2MwMA", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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." } }, "deprecated": true, "summary": "Put Shared-Line Appearance Members", "operationId": "modifySharedLineAppearanceMembers", "description": "Add or modify primary and secondary users assigned to shared-lines on a Webex Calling Apps Desktop device.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "applicationId", "in": "path", "description": "A unique identifier for the application.", "required": true, "example": "2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzFmNWUwYWYzLTIwMjgtNDFkNS05OWI3LTVkNTQyMzI3Y2MwMA", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PutSharedLineMemberList" } } } } } }, "/telephony/config/people/{personId}/voicemail/passcode": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a person's voicemail passcode", "operationId": "modifyPersonVoicemailPasscode", "description": "Modify a person's voicemail passcode.\n\nModifying a person's voicemail passcode requires a full administrator, user administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Modify voicemail passcode for this person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTu+/vQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Modify voicemail passcode for a person in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "passcode": "1551234" }, "schema": { "$ref": "#/components/schemas/ModifyVoicemailPasscode" } } } } } }, "/telephony/voiceMessages/summary": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "newMessages": { "type": "number", "minimum": 0, "example": 2, "description": "The number of new (unread) voicemail messages." }, "oldMessages": { "type": "number", "minimum": 0, "example": 5, "description": "The number of old (read) voicemail messages." }, "newUrgentMessages": { "type": "number", "minimum": 0, "description": "The number of new (unread) urgent voicemail messages." }, "oldUrgentMessages": { "type": "number", "minimum": 0, "example": 1, "description": "The number of old (read) urgent voicemail messages." } } }, "example": { "newMessages": 2, "oldMessages": 5, "newUrgentMessages": 0, "oldUrgentMessages": 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 Message Summary", "operationId": "getMessageSummary", "description": "Get a summary of the voicemail messages for the user.", "tags": [ "User Call Settings (2/2)" ], "parameters": [] } }, "/telephony/voiceMessages": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/VoiceMessageDetails" } } } }, "example": { "items": [ { "id": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "duration": 38, "callingParty": { "name": "John Smith", "number": "+12223334444", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "placeId": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ3MWEyLTRlOTItOTFhYi05ZjJmLWJjYTEzNTAxM2ExNA==", "privacyEnabled": false }, "urgent": false, "confidential": false, "read": true, "faxPageCount": 2, "created": "2021-11-14T17:00: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": "List Messages", "operationId": "listMessages", "description": "Get the list of all voicemail messages for the user.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "lineOwnerId", "in": "query", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.", "example": "Y2lzY29z...", "schema": { "type": "string" } } ] } }, "/telephony/voiceMessages/{messageId}": { "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 Message", "operationId": "deleteMessage", "description": "Delete a specfic voicemail message for the user.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "messageId", "in": "path", "description": "The message identifer of the voicemail message to delete", "required": true, "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/voiceMessages/markAsRead": { "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": "Mark As Read", "operationId": "markAsRead", "description": "Update the voicemail message(s) as read for the user.\n\nIf the `messageId` is provided, then only mark that message as read. Otherwise, all messages for the user are marked as read.", "tags": [ "User Call Settings (2/2)" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "messageId": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "lineOwnerId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ" }, "schema": { "type": "object", "properties": { "messageId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "description": "The voicemail message identifier of the message to mark as read. If the `messageId` is not provided, then all voicemail messages for the user are marked as read." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/voiceMessages/markAsUnread": { "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": "Mark As Unread", "operationId": "markAsUnread", "description": "Update the voicemail message(s) as unread for the user.\n\nIf the `messageId` is provided, then only mark that message as unread. Otherwise, all messages for the user are marked as unread.", "tags": [ "User Call Settings (2/2)" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "messageId": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "lineOwnerId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ" }, "schema": { "type": "object", "properties": { "messageId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "description": "The voicemail message identifier of the message to mark as unread. If the `messageId` is not provided, then all voicemail messages for the user are marked as unread." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ", "description": "The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API." } } } } } } } }, "/telephony/config/people/{personId}/agent/availableCallerIds": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableCallerIdList" }, "example": { "availableCallerIds": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYmRlNDE4NDAtNmVmYS00YTkzLTk5YmEtNDc5Y2QxYTFjZmI5", "type": "CALL_QUEUE", "name": "TestCallQueue", "extension": "6001" }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvOTExNmRmZDMtZGQ4ZS00YTk5LTg1MmYtMjFiYmMxOGNkNzcy", "type": "HUNT_GROUP", "name": "TestHuntGroup", "phoneNumber": "+441234200090", "extension": "6002" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvZTY1NjgzOTMtZTQ5MC00OGQ2LTg3OTgtY2IyZmY3YzkwNzg0", "type": "CALL_QUEUE", "name": "TestCallQueueSecond", "phoneNumber": "+441234200091", "extension": "6003" } ] } } } }, "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": "Retrieve Agent's List of Available Caller IDs", "operationId": "retrieveAgentsListOfAvailableCallerIDs", "description": "Get the list of call queues and hunt groups available for caller ID use by this person as an agent.\n\nThis API requires a full, user, or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/agent/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AgentCallerId" }, "example": { "selectedCallerId": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMzc4NzRjOGUtMzRhOS00NzFjLWI1N2QtMzAxNTJkZjlmMjQx", "type": "CALL_QUEUE", "name": "new ram", "phoneNumber": "+81123456890", "extension": "09899" } } } } }, "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": "Retrieve Agent's Caller ID Information", "operationId": "retrieveAgentsCallerIDInformation", "description": "Retrieve the Agent's Caller ID Information.\n\nEach agent will be able to set their outgoing Caller ID as either the Call Queue's Caller ID, Hunt Group's Caller ID or their own configured Caller ID.\n\nThis API requires a full admin or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYjZmNzYxOC0wNTUyLTRiYmUtYWVmYi02NThjZGU1Y2M3M2Q", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Agent's Caller ID Information", "operationId": "modifyAgentCallerIdInformation", "description": "Modify Agent's Caller ID Information.\n\nEach Agent will be able to set their outgoing Caller ID as either the designated Call Queue's Caller ID or Hunt Group's Caller ID or their own configured Caller ID\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYjZmNzYxOC0wNTUyLTRiYmUtYWVmYi02NThjZGU1Y2M3M2Q", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "selectedCallerId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZWZkN2JjYzAtMjNkNS00NWM2LTk1N2YtZWNhYWEyZDU0M2Uw" }, "schema": { "$ref": "#/components/schemas/PutAgentCallCallerId" } } } } } }, "/telephony/config/people/{personId}/features/callBridge": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallBridgeInfo" }, "example": { "warningToneEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Bridge Settings for a Person", "operationId": "readCallBridgeSettingsPerson", "description": "Retrieve a person's Call Bridge settings.\n\nThis API requires a full, user or read-only administrator or location administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Bridge Settings for a Person", "operationId": "configureCallBridgeSettingsPerson", "description": "Configure a person's Call Bridge settings.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:people_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "warningToneEnabled": true }, "schema": { "$ref": "#/components/schemas/CallBridgePut" } } } } } }, "/telephony/config/people/{personId}/secondary/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonSecondaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Person Secondary Available Phone Numbers", "operationId": "getPersonSecondaryAvailablePhoneNumbers", "description": "List standard numbers that are available to be assigned as a person's secondary phone number.\nThese numbers are associated with the location of the person specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/people/{personId}/faxMessage/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonFaxMessageAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Person Fax Message Available Phone Numbers", "operationId": "getPersonFaxMessageAvailablePhoneNumbers", "description": "List standard numbers that are available to be assigned as a person's FAX message number.\nThese numbers are associated with the location of the person specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/people/{personId}/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Call Forward Available Phone Numbers", "operationId": "getPersonCallForwardAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a person's call forward number.\nThese numbers are associated with the location of the person specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/primary/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonPrimaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "includedTelephonyTypes": "MOBILE_NUMBER", "mobileNetwork": "mobileNetwork", "routingProfile": "AttRtPf", "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Person Primary Available Phone Numbers", "operationId": "getPersonPrimaryAvailablePhoneNumbers", "description": "List numbers that are available to be assigned as a person's primary phone number.\nBy default, this API returns standard and mobile numbers from all locations that are unassigned. The parameters `licenseType` and `locationId` must align with the person's settings to determine the appropriate number for assignment.\nFailure to provide these parameters may result in the unsuccessful assignment of the returned number.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "locationId", "in": "query", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "licenseType", "in": "query", "description": "Used to search numbers according to the person's `licenseType` to which the number will be assigned.", "example": "Webex Calling Professional", "schema": { "type": "string", "enum": [ "Webex Calling Professional", "Webex Calling Standard" ] } } ] } }, "/telephony/config/people/{personId}/emergencyCallbackNumber/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonECBNAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NWQ3MmYwNS00NDYzLTQxYzktYjI0Ni01MDhkMDM2YzJhOTE", "type": "VIRTUAL_LINE", "displayName": "Test VL" } }, { "phoneNumber": "+12056350004", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWnpOcmEybHNkalV3ZDBCbWJHVjRNaTVqYVhOamJ5NWpiMjA9", "type": "HUNT_GROUP", "displayName": "Test HG" } } ] } } } }, "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 ECBN Available Phone Numbers", "operationId": "getPersonEcbnAvailablePhoneNumbers", "description": "List standard numbers that are available to be assigned as a person's emergency callback number.\nThese numbers are associated with the location of the person specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/callIntercept/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonCallInterceptAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2RtbHRNWFV6WjJkaWRFQTJORGswTVRJNU55NXBiblF4TUM1aVkyeGtMbmRsWW1WNExtTnZiUT09", "type": "AUTO_ATTENDANT", "displayName": "Test Autoattendant" } } ] } } } }, "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 Call Intercept Available Phone Numbers", "operationId": "getPersonCallInterceptAvailablePhoneNumbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a person's call intercept number.\nThese numbers are associated with the location specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": [ "+12056852221", "+12056852222" ], "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/settings/msTeams": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserMSTeamsSettingsObject" }, "example": { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "settings": [ { "settingName": "HIDE_WEBEX_APP", "level": "PEOPLE", "value": true, "lastModified": "2024-02-24T07:22:23.494198Z" }, { "settingName": "PRESENCE_SYNC", "level": "ORGANIZATION", "value": false, "lastModified": "2024-02-24T07:21:23.494198Z" } ] } } } }, "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": "Retrieve a Person's MS Teams Settings", "operationId": "getPersonMSTeamsSettings", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nRetrieve a person's MS Teams settings.\n\nAt a person level, MS Teams settings allow access to retrieving the `HIDE WEBEX APP` and `PRESENCE SYNC` settings.\n\nTo retrieve a person's MS Teams settings requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure a Person's MS Teams Setting", "operationId": "configurePersonMSTeamsSetting", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nConfigure a Person's MS Teams setting.\n\nMS Teams settings can be configured at the person level.\n\nRequires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter since the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "settingName": "HIDE_WEBEX_APP", "value": true }, "schema": { "$ref": "#/components/schemas/ModifyUserMSTeamsSettingsObject" } } } } } }, "/telephony/config/people/{personId}/features/personalAssistant": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonalAssistantGet" }, "example": { "enabled": true, "presence": "BUSINESS_TRIP", "untilDateTime": "2022-08-24T06:18:31.092Z", "transferEnabled": true, "transferNumber": "+14126525012", "alerting": "ALERT_ME_FIRST", "alertMeFirstNumberOfRings": 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": "Get Personal Assistant", "operationId": "getPersonalAssistant", "description": "Retrieve Personal Assistant details for a specific user.\n\nPersonal Assistant is used to manage a user's incoming calls when they are away.\n\nRetrieving Personal Assistant details requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Get Personal Assistant details for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Assistant", "operationId": "modifyPersonalAssistant", "description": "Update Personal Assistant details for a specific user.\n\nPersonal Assistant is used to manage a user's incoming calls when they are away.\n\nUpdating Personal Assistant details requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Update Personal Assistant details for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "presence": "BUSINESS_TRIP", "untilDateTime": "2022-08-24T06:18:31.092Z", "transferEnabled": true, "transferNumber": "+14126525012", "alerting": "ALERT_ME_FIRST", "alertMeFirstNumberOfRings": 3 }, "schema": { "$ref": "#/components/schemas/PersonalAssistantPatch" } } } } } }, "/telephony/config/people/{personId}/modeManagement/availableFeatures": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "features" ], "properties": { "features": { "type": "array", "items": { "$ref": "#/components/schemas/UserModeManagementAvailableFeaturesObject" }, "description": "Array of features." } } }, "example": { "features": [ { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "name": "Test Auto Attendant", "type": "AUTO_ATTENDANT", "phoneNumber": "+19705550028", "extension": "0028" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNWMwZmYzZjctZjY2YS00NGQwLTlhODktZGY5N2U5MThkNjcw", "name": "Test Call Queue", "type": "CALL_QUEUE", "phoneNumber": "2055552221", "extension": "0007" }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvOTExNmRmZDMtZGQ4ZS00YTk5LTg1MmYtMjFiYmMxOGNkNzcy", "name": "Test Hunt Group", "type": "HUNT_GROUP", "phoneNumber": "2055552221", "extension": "0023" } ] } } } }, "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": "Retrieve the List of Available Features", "operationId": "getListOfAvailableFeatures", "description": "Retrieve a list of feature identifiers that can be assigned to a user for `Mode Management`. Feature identifiers reference feature instances like `Auto Attendants`, `Call Queues`, and `Hunt Groups`.\n\nFeatures with mode-based call forwarding enabled can be assigned to a user for `Mode Management`.\n\nRetrieving this list requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the user.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "name", "in": "query", "description": "List features whose `name` contains this string.", "example": "Day", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "phoneNumber", "in": "query", "description": "List features whose phoneNumber contains this matching string.", "example": "+35391884653", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "extension", "in": "query", "description": "List features whose `extension` contains this matching string.", "example": "1234", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Maximum number of features to return in a single page.", "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "order", "in": "query", "description": "Sort the list of features based on `name`, `phoneNumber`, or `extension`, either `asc`, or `desc`.", "example": "name-asc", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Retrieve features list from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/modeManagement/features": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "features" ], "properties": { "features": { "type": "array", "items": { "$ref": "#/components/schemas/UserModeManagementFeatureObject" }, "description": "Array of assigned features." } } }, "example": { "features": [ { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "name": "Test Auto Attendant", "type": "AUTO_ATTENDANT", "phoneNumber": "+19705550028", "extension": "0028", "modeBasedForwardingEnabled": true, "forwardDestination": "+14259964241", "currentOperatingModeName": "Day Operating Mode", "currentOperatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzIxM2I1ZTIwLTljMjAtNDUwNi1iYWE3LTE0OGE0NWQyZWY4OQ", "exceptionType": "AUTOMATIC_SWITCH_BACK_EARLY_START", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Banglore" } }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNWMwZmYzZjctZjY2YS00NGQwLTlhODktZGY5N2U5MThkNjcw", "name": "Test Call Queue", "type": "CALL_QUEUE", "phoneNumber": "2055552221", "extension": "0007", "modeBasedForwardingEnabled": true, "forwardDestination": "+19705550028", "currentOperatingModeName": "Outage Operating Mode", "currentOperatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2VkMjg0NjE1LWY3ZDgtNDNhOC1iOGJmLTVkYmU2ZjMzMTNjZQ", "exceptionType": "MANUAL_SWITCH_BACK", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Banglore" } }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvOTExNmRmZDMtZGQ4ZS00YTk5LTg1MmYtMjFiYmMxOGNkNzcy", "name": "Test Hunt Group", "type": "HUNT_GROUP", "phoneNumber": "2055552221", "extension": "0023", "modeBasedForwardingEnabled": true, "forwardDestination": "+19705550028", "currentOperatingModeName": "Day Operating Mode", "currentOperatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzIxM2I1ZTIwLTljMjAtNDUwNi1iYWE3LTE0OGE0NWQyZWY4OQ", "exceptionType": "MANUAL_SWITCH_BACK", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "name": "Banglore" } } ] } } } }, "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": "Retrieve the List of Features Assigned to a User for Mode Management", "operationId": "getListOfFeaturesAssignedToAUserModeManagement", "description": "Retrieve a list of feature identifiers that are already assigned to a user for `Mode Management`. Feature identifiers reference feature instances like `Auto Attendants`, `Call Queues`, and `Hunt Groups`.\nA maximum of 50 features can be assigned to a user for `Mode Management`.\n\nFeatures with mode-based call forwarding enabled can be assigned to a user for `Mode Management`.\n\nRetrieving this list requires a full, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the user.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Retrieve features list from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "200": { "description": "OK", "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": "Assign a List of Features to a User for Mode Management", "operationId": "assignListOfFeaturesToAUserModeManagement", "description": "Assign a user a list of feature identifiers for `Mode Management`. Feature identifiers reference feature instances like `Auto Attendants`, `Call Queues`, and `Hunt Groups`.\nA maximum of 50 features can be assigned to a user for `Mode Management`.\n\nUpdating mode management settings for a user requires a full, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the user.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNWJiZjgzMS01YmU5LTRjMjUtYjRiMC05YjU5MmM4YTA4NmI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Retrieve features list from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "featureIds": [ "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNWMwZmYzZjctZjY2YS00NGQwLTlhODktZGY5N2U5MThkNjcw", "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvOTExNmRmZDMtZGQ4ZS00YTk5LTg1MmYtMjFiYmMxOGNkNzcy" ] }, "schema": { "$ref": "#/components/schemas/ArrayOfFeatureIdsObject" } } } } } }, "/telephony/config/people/{personId}/selectiveAccept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "scheduleName": "demo_schedule", "source": "ALL_NUMBERS", "acceptEnabled": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5MjY0ODQ3NzcyNzE", "scheduleName": "s1", "source": "SPECIFIC_NUMBERS", "acceptEnabled": 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 the User’s Selective Call Accept Criteria List", "operationId": "getUserSelectiveCallAcceptCriteriaList", "description": "Retrieve selective call accept criteria list for a user.\n\nWith the selective call accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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’s Selective Call Accept Criteria", "operationId": "updateUserSelectiveCallAcceptCriteria", "description": "Modify selective call accept setting for a user.\n\nWith the Selective Call accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallSettingPatch" } } } } } }, "/telephony/config/people/{personId}/selectiveAccept/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI" } } } }, "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 Criteria to the User’s Selective Call Accept Service", "operationId": "createCriteriaToUserSelectiveCallAcceptService", "description": "Add a criteria to the user's selective call accept service.\n\nWith the Selective Call accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "demo_schedule1", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19867512341", "+19867512345" ], "acceptEnabled": true }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaPost" } } } } } }, "/telephony/config/people/{personId}/selectiveAccept/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "scheduleName": "demo_schedule1", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19867512341", "+19867512345" ], "acceptEnabled": 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 a Criteria for the User’s Selective Call Accept Service", "operationId": "getCriteriaForUserSelectiveCallAcceptService", "description": "Get the criteria details for the user's selective call accept service.\n\nWith the Selective Call accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Criteria From the User’s Selective Call Accept Service", "operationId": "modifyCriteriaFromUserSelectiveCallAcceptService", "description": "Modify a criteria for the user's selective call accept service.\n\nWith the Selective Call Accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "demo_schedule1", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "ANY_PHONE_NUMBER", "acceptEnabled": true }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteriaPatch" } } } } }, "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 Criteria From the User’s Selective Call Accept service", "operationId": "deleteCriteriaFromUserSelectiveCallAcceptService", "description": "Delete a criteria from the user's selective call accept criteria list.\n\nWith the Selective Call Accept feature, you can create different rules to accept specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/selectiveReject": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "scheduleName": "demo_schedule", "source": "ALL_NUMBERS", "rejectEnabled": 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 the User’s Selective Call Rejection Criteria Listing", "operationId": "getUserSelectiveCallRejectionCriteriaListing", "description": "Retrieve selective call rejection criteria for a user.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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’s Selective Call Rejection Criteria List", "operationId": "updateUserSelectiveCallRejectionCriteriaList", "description": "Modify selective call rejection setting for a user.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallSettingPatch" } } } } } }, "/telephony/config/people/{personId}/selectiveReject/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI" } } } }, "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 Criteria to the User’s Selective Call Rejection Service", "operationId": "createCriteriaToUserSelectiveCallRejectionService", "description": "Add a criteria to the user's selective call rejection service.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "demo_schedule", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+12056350001" ], "rejectEnabled": true }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaPost" } } } } } }, "/telephony/config/people/{personId}/selectiveReject/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA5NzY3ODMzNzM", "scheduleName": "demo_schedule", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "FORWARDED", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "rejectEnabled": 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 a Criteria for the User’s Selective Call Rejection Service", "operationId": "getCriteriaForUserSelectiveCallRejectionService", "description": "Get a criteria for the user's selective call rejection service.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Criteria for the User’s Selective Call Rejection Service", "operationId": "modifyCriteriaForUserSelectiveCallRejectionService", "description": "Modify a criteria for the user's selective call rejection service.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "demo_schedule", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "FORWARDED", "anonymousCallersEnabled": false, "unavailableCallersEnabled": true, "phoneNumbers": [ "+12056350001" ], "rejectEnabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallCriteriaPatch" } } } } }, "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 Criteria From the User’s Selective Call Rejection Service", "operationId": "deleteCriteriaFromUserSelectiveCallRejectionService", "description": "Delete a criteria from the user's selective call rejection service.\n\nWith the Selective Call Rejection feature, you can create different rules to reject specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/selectiveForward": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveForwardCallGet" }, "example": { "enabled": true, "defaultPhoneNumberToForward": "+18765432190", "ringReminderEnabled": true, "sendToVoicemailEnabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "scheduleName": "demo_schedule", "source": "ALL_NUMBERS", "forwardEnabled": 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 the User’s Selective Call Forwarding", "operationId": "getUserSelectiveCallForwarding", "description": "Retrieve selective call forwarding criteria for a user.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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’s Selective Call Forwarding Criteria List", "operationId": "updateUserSelectiveCallForwardingCriteriaList", "description": "Modify selective call forwarding setting for a user.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "defaultPhoneNumberToForward": "+18765432192", "ringReminderEnabled": false, "sendToVoicemailEnabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveForwardCallSettingPatch" } } } } } }, "/telephony/config/people/{personId}/selectiveForward/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI" } } } }, "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 Criteria to the User’s Selective Call Forwarding Service", "operationId": "createCriteriaToUserSelectiveCallForwardingService", "description": "Add a criteria to the user's selective call forwarding service.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveForwardCallCriteriaPost" } } } } } }, "/telephony/config/people/{personId}/selectiveForward/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveForwardCallCriteriaGet" } } } }, "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 Criteria for the User’s Selective Call Forwarding Service", "operationId": "getCriteriaForUserSelectiveCallForwardingService", "description": "Get the criteria details for the user's selective call forwarding service.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Criteria for the User’s Selective Call Forwarding Service", "operationId": "modifyCriteriaForUserSelectiveCallForwardingService", "description": "Modify a criteria for the user's selective call forwarding service.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "example": { "forwardToPhoneNumber": "+19867512340", "sendToVoicemailEnabled": false, "scheduleName": "demo_schedule1", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+19867512341", "+19867512345" ], "forwardEnabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveForwardCallCriteriaPatch" } } } } }, "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 Criteria From the User’s Selective Call Forwarding Service", "operationId": "deleteCriteriaFromUserSelectiveCallForwardingService", "description": "Delete a criteria from the user's selective call forwarding service.\n\nWith the Selective Call Forwarding feature, you can create different rules to forward specific calls based on the phone number, who's calling, and/or the time and day of the call.\n\nRequires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "id", "in": "path", "description": "Criteria ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "orgId", "in": "query", "description": "Organization in which the user resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/applications/availableMembers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplicationAvailableSharedLineMemberList" }, "example": { "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "firstName": "John", "lastName": "Doe", "phoneNumber": "1234567890", "extension": "0000", "routingPrefix": "1234", "esn": "12348080", "lineType": "SHARED_CALL_APPEARANCE", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw", "name": "MainOffice" } } ] } } } }, "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": "Search Shared-Line Appearance Members New", "operationId": "searchSharedLineAppearanceMembersNew", "description": "Get members available for shared-line assignment to a Webex Calling Apps.\n\nLike most hardware devices, applications support assigning additional shared lines which can monitored and utilized by the application.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": 5, "schema": { "type": "number", "minimum": 0 } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": 0, "schema": { "type": "number", "minimum": 0 } }, { "name": "order", "in": "query", "description": "Order the Route Lists according to number, ascending or descending.", "example": "number-asc|number-desc", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "location", "in": "query", "description": "Location ID for the user.", "example": "Y2JkOTM3NzAtZTZhMy00NDhiLTliZGYtODZkYmFkMzkxOGMy", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "name", "in": "query", "description": "Search for users with names that match the query.", "example": "abcd", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "phoneNumber", "in": "query", "description": "Search for users with numbers that match the query.", "example": "1234567890", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } }, { "name": "extension", "in": "query", "description": "Search for users with extensions that match the query.", "example": "8765", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] } }, "/telephony/config/people/{personId}/applications/availableMembers/count": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "totalCount" ], "properties": { "totalCount": { "type": "integer", "example": 100, "description": "The total count of available shared-line members." } } }, "example": { "totalCount": 100 } } } }, "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 Count of Shared-Line Appearance Members", "operationId": "getCountOfSharedLineAppearanceMembersNew", "description": "Get the count of members available for shared-line assignment to Webex Calling Apps.\n\nShared-line appearance allows multiple devices or applications to share a single line for call handling.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Location ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2ViYTgzY2VjLThiMDUtNDMxNS1iNzJlLTQ1MTUyYTg1ZWE0Yw", "schema": { "type": "string" } }, { "name": "memberName", "in": "query", "description": "Search for people with names that match the query.", "example": "john", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Search for people with numbers that match the query.", "example": "1234567890", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Search for people with extensions that match the query.", "example": "1111", "schema": { "type": "string" } } ] } }, "/telephony/config/people/{personId}/applications/members": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSharedLineMemberList" }, "example": { "model": "Business Communicator - PC", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "firstName": "John", "lastName": "Doe", "phoneNumber": "2056852221", "extension": "1111", "routingPrefix": "1234", "esn": "12341111", "port": 1, "primaryOwner": "true", "lineType": "SHARED_CALL_APPEARANCE", "lineWeight": 1, "hostIP": "198.168.0.1", "remoteIP": "198.168.0.2", "hotlineEnabled": true, "hotlineDestination": "1234", "allowCallDeclineEnabled": true, "lineLabel": "share line label", "memberType": "PEOPLE", "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzJiNDkyZmZkLTRjNGItNGVmNS04YzAzLWE1MDYyYzM4NDA5Mw", "name": "MainOffice" } } ], "maxLineCount": 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 Shared-Line Appearance Members New", "operationId": "getSharedLineAppearanceMembersNew", "description": "Get primary and secondary members assigned to a shared line on a Webex Calling Apps.\n\nLike most hardware devices, applications support assigning additional shared lines which can monitored and utilized by the application.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Put Shared-Line Appearance Members New", "operationId": "putSharedLineAppearanceMembersNew", "description": "Add or modify primary and secondary users assigned to shared-lines on a Webex Calling Apps.\n\nLike most hardware devices, applications support assigning additional shared lines which can monitored and utilized by the application.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string", "minLength": 1, "maxLength": 128 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplicationPutSharedLineMemberList" } } } } } }, "/telephony/config/people/{personId}/callCaptions": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserCallCaptionsObject" }, "example": { "userClosedCaptionsEnabled": true, "userTranscriptsEnabled": true, "locationClosedCaptionsEnabled": true, "locationTranscriptsEnabled": true, "useLocationSettingsEnabled": 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 the user call captions settings", "operationId": "getUserCallCaptionsSettings", "description": "Retrieve the user's call captions settings.\n\n**NOTE**: The call captions feature is not supported for Webex Calling Standard users or users assigned to locations in India.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full, user, read-only, or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 the user call captions settings", "operationId": "modifyUserCallCaptionsSettings", "description": "Update the user's call captions settings.\n\n**NOTE**: The call captions feature is not supported for Webex Calling Standard users or users assigned to locations in India.\n\nThe call caption feature allows the customer to enable and manage closed captions and transcript functionality (rolling caption panel) in Webex Calling, without requiring the user to escalate the call to a meeting.\n\nThis API requires a full, user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Unique identifier for the organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "userClosedCaptionsEnabled": true, "userTranscriptsEnabled": true, "useLocationSettingsEnabled": true }, "schema": { "$ref": "#/components/schemas/UpdateUserCallCaptionsObject" } } } } } }, "/telephony/config/people/{personId}/executive/callFiltering": { "get": { "responses": { "200": { "description": "The person executive call filtering settings were retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringGet" }, "example": { "enabled": true, "filterType": "CUSTOM_CALL_FILTERS", "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1FtVjNORE15TXc9PQ", "filterName": "VIP Callers", "source": "SELECT_PHONE_NUMBERS", "activationEnabled": true, "filterEnabled": 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 Person Executive Call Filtering Settings", "operationId": "getPersonExecutiveCallFilteringSettings", "description": "Retrieve the executive call filtering settings for the specified person.\n\nExecutive Call Filtering in Webex allows you to control which calls are allowed to reach the executive assistant based on custom criteria, such as specific phone numbers or call types. You can enable or disable call filtering and configure filter rules to manage incoming calls.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "The executive call filtering settings were modified successfully." }, "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": "Modify Person Executive Call Filtering Settings", "operationId": "updatePersonExecutiveCallFilteringSettings", "description": "Update the executive call filtering settings for the specified person.\n\nExecutive Call Filtering in Webex allows you to control which calls are allowed to reach the executive assistant based on custom criteria, such as specific phone numbers or call types. You can enable or disable call filtering and configure filter rules to manage incoming calls.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "filterType": "CUSTOM_CALL_FILTERS", "criteriaActivation": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "activationEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringPatch" } } } } } }, "/telephony/config/people/{personId}/executive/callFiltering/criteria/{id}": { "get": { "responses": { "200": { "description": "The person executive call filtering criteria was retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "filterName": "VIP Callers", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] } } } }, "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 Executive Call Filtering Criteria Settings", "operationId": "getPersonExecutiveCallFilteringCriteria", "description": "Retrieve the executive call filtering criteria settings for the specified person.\n\nExecutive Call Filtering Criteria in Webex allows you to retrieve the detailed configuration for a specific filter rule. This includes schedule settings, phone number filters, and call routing preferences for executive call filtering.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria." }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "The executive call filtering criteria was updated successfully.", "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": "Modify Person Executive Call Filtering Criteria Settings", "operationId": "updatePersonExecutiveCallFilteringCriteria", "description": "Update the executive call filtering settings for the specified person.\n\nExecutive Call Filtering in Webex allows you to control which calls are allowed to reach the executive assistant based on custom criteria, such as specific phone numbers or call types. You can enable or disable call filtering and configure filter rules to manage incoming calls.\n\nThis API requires a full, user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0`." }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaPatch" } } } } }, "delete": { "summary": "Delete Person Executive Call Filtering Criteria", "operationId": "deletePersonExecutiveCallFilteringCriteria", "description": "Delete a specific executive call filtering criteria configuration for the specified person.\n\nExecutive Call Filtering Criteria in Webex allows you to manage detailed filter rules for incoming calls. This API removes a specific filter rule by its unique identifier.\n\nThis API requires a full, user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string" }, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "description": "The `id` parameter specifies the unique identifier for the executive call filtering criteria. Example: `Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0`." }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "responses": { "204": { "description": "The executive call filtering criteria was deleted successfully. No content is returned." }, "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." }, "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)." } } } }, "/telephony/config/people/{personId}/executive/callFiltering/criteria": { "post": { "summary": "Add Person Executive Call Filtering Criteria", "operationId": "createPersonExecutiveCallFilteringCriteria", "description": "Create a new executive call filtering criteria configuration for the specified person.\n\nExecutive Call Filtering Criteria in Webex allows you to define detailed filter rules for incoming calls. This API creates a new filter rule with the specified configuration, including schedule, phone numbers, and call routing preferences.\n\nThis API requires a full, user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the user.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveCallFilteringCriteriaPost" }, "example": { "filterName": "VIP Callers", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] } } } }, "responses": { "200": { "description": "The executive call filtering criteria were created successfully. The response contains the new criteria identifier.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseId" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0" } } } }, "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." }, "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." }, "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." }, "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)." } } } }, "/telephony/config/people/{personId}/executive/alert": { "get": { "responses": { "200": { "description": "Person executive alert settings retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAlertGet" }, "example": { "alertingMode": "SEQUENTIAL", "nextAssistantNumberOfRings": 3, "rolloverEnabled": true, "rolloverAction": "VOICE_MESSAGING", "rolloverForwardToPhoneNumber": "+14085267209", "rolloverWaitTimeInSecs": 60, "clidNameMode": "EXECUTIVE_ORIGINATOR", "customCLIDName": "John Anderson", "customCLIDNameInUnicode": "John Anderson", "clidPhoneNumberMode": "EXECUTIVE", "customCLIDPhoneNumber": "+14085267208" } } } }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Get Person Executive Alert Settings", "operationId": "getPersonExecutiveAlertSettings", "description": "Get executive alert settings for the specified person.\n\nExecutive Alert settings in Webex allow you to control how calls are routed to executive assistants, including alerting mode, rollover options, and caller ID presentation. You can configure settings such as sequential or simultaneous alerting, and specify what happens when calls aren't answered.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Person executive alert settings modified successfully." }, "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." }, "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)." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." } }, "summary": "Modify Person Executive Alert Settings", "operationId": "updatePersonExecutiveAlertSettings", "description": "Update executive alert settings for the specified person.\n\nExecutive Alert settings in Webex allow you to control how calls are routed to executive assistants, including alerting mode, rollover options, and caller ID presentation. You can configure settings such as sequential or simultaneous alerting, and specify what happens when calls aren't answered.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "alertingMode": "SEQUENTIAL", "nextAssistantNumberOfRings": 3, "rolloverEnabled": true, "rolloverAction": "VOICE_MESSAGING", "rolloverForwardToPhoneNumber": "", "rolloverWaitTimeInSecs": 60, "clidNameMode": "EXECUTIVE_ORIGINATOR", "customCLIDName": "John Anderson", "customCLIDNameInUnicode": "John Anderson", "clidPhoneNumberMode": "EXECUTIVE", "customCLIDPhoneNumber": "" }, "schema": { "$ref": "#/components/schemas/ExecutiveAlertPut" } } } } } }, "/telephony/config/people/{personId}/executive/assignedAssistants": { "get": { "responses": { "200": { "description": "Person assigned assistants retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAssignedAssistantsGet" }, "example": { "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true, "location": { "name": "Bangalore", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg" } } ] } } } }, "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 Executive Assigned Assistants", "operationId": "getPersonExecutiveAssignedAssistants", "description": "Get list of assigned executive assistants for the specified person.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Person assigned assistants updated successfully." }, "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": "Modify Person Executive Assigned Assistants", "operationId": "modifyPersonExecutiveAssignedAssistants", "description": "Update assigned executive assistants for the specified person.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "assistantIds": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMzRmNjdhNS1kYTFiLTQxYzUtODBkNS03ZDFmZTY3ZTE5ZTY" ] }, "schema": { "$ref": "#/components/schemas/ExecutiveAssignedAssistantsPutRequestObject" } } } } } }, "/telephony/config/people/{personId}/executive/availableAssistants": { "get": { "responses": { "200": { "description": "List of available assistants retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAvailableAssistantsGet" }, "example": { "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079" } ] } } } }, "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 Executive Available Assistants", "operationId": "getPersonExecutiveAvailableAssistants", "description": "Retrieves a list of people available for assignment as executive assistants to the specified person.\n\nAs an executive, you can add assistants to your executive pool to manage calls for you. You can set when and which types of calls they can handle. Assistants can opt in when needed or opt out when not required.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": 5, "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": 2, "schema": { "type": "number" } }, { "name": "name", "in": "query", "description": "Only return people with the matching name (person's first and last name combination).", "example": "Mathew - Test", "schema": { "type": "string" } }, { "name": "phoneNumber", "in": "query", "description": "Only return people with the matching phone number or extension.", "example": "9705550028", "schema": { "type": "string" } } ] } }, "/telephony/config/people/{personId}/executive/assistant": { "get": { "responses": { "200": { "description": "Executive assistant settings were retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveAssistantSettingsGet" }, "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+14155551234", "executives": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "firstName": "John", "lastName": "Doe", "directNumber": "+916557765419", "extension": "10079", "optInEnabled": 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 Person Executive Assistant Settings", "operationId": "getPersonExecutiveAssistantSettings", "description": "Get executive assistant settings for the specified person when person is configured as executive assistant.\n\nExecutive assistants can make, answer, intercept, and route calls appropriately on behalf of their executive.\nAssistants can also set the call forwarding destination, and join or leave an executive’s pool.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Person executive assistant settings updated successfully.", "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": "Modify Person Executive Assistant Settings", "operationId": "modifyPersonExecutiveAssistantSettings", "description": "Update executive assistant settings for the specified person when person is configured as executive assistant.\n\nExecutive assistants can make, answer, intercept, and route calls appropriately on behalf of their executive.\nAssistants can also set the call forwarding destination, and join or leave an executive’s pool.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+19075552860", "executives": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "optInEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/ExecutiveAssistantSettingsPut" } } } } } }, "/telephony/config/people/{personId}/executive/screening": { "get": { "responses": { "200": { "description": "Person executive screening settings retrieved successfully.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutiveScreeningGet" }, "example": { "enabled": true, "alertType": "SILENT", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": 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 Person Executive Screening Settings", "operationId": "getPersonExecutiveScreeningSettings", "description": "Get executive screening settings for the specified person.\n\nExecutive Screening in Webex allows you to manage how incoming calls are screened and alerted based on your preferences. You can enable or disable executive screening and configure alert types and locations for notifications.\n\nThis API requires a full, user, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "Person executive screening settings modified successfully." }, "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": "Modify Person Executive Screening Settings", "operationId": "updatePersonExecutiveScreeningSettings", "description": "Update executive screening settings for the specified person.\n\nExecutive Screening in Webex allows you to manage how incoming calls are screened and alerted based on your preferences. You can enable or disable executive screening and configure alert types and locations for notifications.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "A unique identifier for the person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wZTQ5NjAzNC1lNTQ1LTRmMmEtODI4ZC03MjhjYjJlNjNlMWQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID for the person.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "alertType": "RING_SPLASH", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": false }, "schema": { "$ref": "#/components/schemas/ExecutiveScreeningPut" } } } } } }, "/telephony/config/people/{personId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPersonDetailsObject" }, "example": { "announcementLanguage": "English", "timeZone": "America/Chicago" } } } }, "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 Timezone and Announcement Language Settings of a Person", "operationId": "getTimezoneAnnouncementLanguageSettingsOfAPerson", "description": "Retrieve a person's timezone and announcement language settings.\n\nWebex Calling supports configuring timezone and announcement language preferences, allowing personalized call experience based on their location and language preferences.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Retrieve timezone and announcement language settings of this person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81Y2Y1NmJkMS1hMzU4LTQzYWQtODY5Ni0xM2E2NzliNGUyNGY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID. If not specified, uses the organization from the OAuth token.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Timezone and Announcement Language Settings of a Person", "operationId": "modifyTimezoneAnnouncementLanguageSettingsOfAPerson", "description": "Modify a person's timezone and announcement language settings.\n\nWebex Calling supports configuring timezone and announcement language preferences, allowing personalized call experience based on their location and language preferences.\n\nThis API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "personId", "in": "path", "description": "Modify timezone and announcement language settings of this person.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81Y2Y1NmJkMS1hMzU4LTQzYWQtODY5Ni0xM2E2NzliNGUyNGY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID. If not specified, uses the organization from the OAuth token.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "announcementLanguage": "English", "timeZone": "America/Chicago" }, "schema": { "$ref": "#/components/schemas/PutPersonDetailsObject" } } } } } }, "/telephony/config/countries/{countryCode}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CountryConfigGet" }, "example": { "stateRequired": true, "zipCodeRequired": true, "states": [ { "code": "AA", "name": "Armed Forces Americas" }, { "code": "AE", "name": "Armed Forces Europe" }, { "code": "WY", "name": "Wyoming" } ], "timeZones": [ "America/Adak", "America/Anchorage", "America/Chicago", "America/Denver", "America/Los_Angeles", "America/New_York", "America/Phoenix", "Pacific/Honolulu" ] } } } }, "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 Country Calling Configuration", "operationId": "getCountryConfiguration", "description": "Retrieve country-specific configuration details including state requirements, zip code requirements, available states, and supported time zones.\n\nThis information helps administrators configure user settings with valid timezone and location data for a specific country.\n\nThis API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "User Call Settings (2/2)" ], "parameters": [ { "name": "countryCode", "in": "path", "description": "The ISO country code to retrieve configuration for.", "required": true, "example": "US", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Organization ID. If not specified, uses the organization from the OAuth token.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines": { "get": { "responses": { "200": { "description": "OK", "headers": { "Link": { "schema": { "type": "string" } } }, "content": { "application/json": { "schema": { "type": "object", "required": [ "virtualLines" ], "properties": { "virtualLines": { "type": "array", "items": { "$ref": "#/components/schemas/ListVirtualLineObject" }, "description": "Array of virtual lines." } } }, "example": { "virtualLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "lastName": "Smith", "firstName": "Bob", "callerIdLastName": "Smith", "callerIdFirstName": "Bob", "callerIdNumber": "+15558675311", "externalCallerIdNamePolicy": "DIRECT_LINE", "customExternalCallerIdName": "Bob", "number": { "external": "+15558675311", "extension": "6103", "routingPrefix": "1234", "esn": "12346103", "primary": true }, "location": { "name": "Denver", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg" }, "numberOfDevicesAssigned": 1, "billingPlan": "BCOCP1" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS81NjMzZjU4OS1iNDQ0LTQ4ODYtODVjNy02MDljYWY3M2U4YzU", "lastName": "Smith", "firstName": "Charlie", "callerIdLastName": "Smith", "callerIdFirstName": "Charlie", "callerIdNumber": "+15558675312", "externalCallerIdNamePolicy": "DIRECT_LINE", "customExternalCallerIdName": "Charlie", "number": { "external": "+15558675312", "extension": "6102", "routingPrefix": "1234", "esn": "12346102", "primary": true }, "location": { "name": "Denver", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg" }, "numberOfDevicesAssigned": 3, "billingPlan": "BCOCP1" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS9iMTJhNTBiMi01N2NiLTQ0MzktYjc1MS1jZDQ4M2I4MjhmNmU", "lastName": "Shen", "firstName": "Tom", "callerIdLastName": "Shen", "callerIdFirstName": "Tom", "callerIdNumber": "+15558675313", "externalCallerIdNamePolicy": "DIRECT_LINE", "customExternalCallerIdName": "Tom", "number": { "external": "+15558675313", "extension": "6101", "routingPrefix": "1234", "esn": "12346101", "primary": true }, "location": { "name": "Denver", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg" }, "numberOfDevicesAssigned": 0, "billingPlan": "None" } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read the List of Virtual Lines", "operationId": "Read the List of Virtual Lines", "description": "List all Virtual Lines for the organization.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List virtual lines for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of virtual lines matching these location ids. Example for multiple values - `?locationId=locId1&locationId=locId2`.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "schema": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg" }, "description": "Return the list of virtual lines matching these location ids. Example for multiple values - `?locationId=locId1&locationId=locId2`." } }, { "name": "max", "in": "query", "description": "Limit the number of objects returned to this maximum count.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching objects.", "example": "0", "schema": { "type": "number" } }, { "name": "id", "in": "query", "description": "Return the list of virtual lines matching these virtualLineIds. Example for multiple values - `?id=id1&id=id2`.", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY" }, "description": "Return the list of virtual lines matching these virtualLineIds. Example for multiple values - `?id=id1&id=id2`." } }, { "name": "ownerName", "in": "query", "description": "Return the list of virtual lines matching these owner names. Example for multiple values - `?ownerName=name1&ownerName=name2`.", "example": "Bob Smith", "schema": { "type": "array", "items": { "type": "string", "example": "Bob Smith" }, "description": "Return the list of virtual lines matching these owner names. Example for multiple values - `?ownerName=name1&ownerName=name2`." } }, { "name": "phoneNumber", "in": "query", "description": "Return the list of virtual lines matching these phone numbers. Example for multiple values - `?phoneNumber=number1&phoneNumber=number2`.", "example": "+15558675311", "schema": { "type": "array", "items": { "type": "string", "example": "+15558675311" }, "description": "Return the list of virtual lines matching these phone numbers. Example for multiple values - `?phoneNumber=number1&phoneNumber=number2`." } }, { "name": "locationName", "in": "query", "description": "Return the list of virtual lines matching the location names. Example for multiple values - `?locationName=loc1&locationName=loc2`.", "example": "Boston", "schema": { "type": "array", "items": { "type": "string", "example": "Boston" }, "description": "Return the list of virtual lines matching the location names. Example for multiple values - `?locationName=loc1&locationName=loc2`." } }, { "name": "order", "in": "query", "description": "Return the list of virtual lines based on the order. Default sort will be in an Ascending order. Maximum 3 orders allowed at a time. Example for multiple values - `?order=order1&order=order2`.", "example": "lastName", "schema": { "type": "array", "items": { "type": "string", "example": "lastName" }, "description": "Return the list of virtual lines based on the order. Default sort will be in an Ascending order. Maximum 3 orders allowed at a time. Example for multiple values - `?order=order1&order=order2`." } }, { "name": "hasDeviceAssigned", "in": "query", "description": "If `true`, includes only virtual lines with devices assigned. When not explicitly specified, the default includes both virtual lines with devices assigned and not assigned.", "example": "true", "schema": { "type": "boolean" } }, { "name": "hasExtensionAssigned", "in": "query", "description": "If `true`, includes only virtual lines with an extension assigned. When not explicitly specified, the default includes both virtual lines with extension assigned and not assigned.", "example": "'true'", "schema": { "type": "boolean" } }, { "name": "hasDnAssigned", "in": "query", "description": "If `true`, includes only virtual lines with an assigned directory number, also known as a Dn. When not explicitly specified, the default includes both virtual lines with a Dn assigned and not assigned.", "example": "true", "schema": { "type": "boolean" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created virtual line." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk" } } } }, "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 Virtual Line", "operationId": "Create a Virtual Line", "description": "Create new Virtual Line for the given location.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nCreating a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create the virtual line for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "firstName": "Bob", "lastName": "Smith", "displayName": "Bob Smith", "phoneNumber": "+15558675309", "extension": "5309", "locationId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "callerIdFirstName": "Bob", "callerIdLastName": "Smith", "callerIdNumber": "+15558675309" }, "schema": { "$ref": "#/components/schemas/PostVirtualLineObject" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/callRecording": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingInfo" }, "example": { "enabled": true, "record": "Never", "recordVoicemailEnabled": false, "notification": { "enabled": false, "type": "None" }, "repeat": { "interval": 15, "enabled": false }, "serviceProvider": "WSWYZ25455", "externalGroup": "WSWYZ25455L31161", "externalIdentifier": "a34iidrh5o@64941297.int10.bcld.webex.com", "startStopAnnouncement": { "internalCallsEnabled": false, "pstnCallsEnabled": 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": "Read Call Recording Settings for a Virtual Line", "operationId": "Read Call Recording Settings for a Virtual Line", "description": "Retrieve Virtual Line's Call Recording settings.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "db2eed3c-06b1-4d68-8b4e-7ab1585dfa53", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Recording Settings for a Virtual Line", "operationId": "Configure Call Recording Settings for a Virtual Line", "description": "Configure virtual line's Call Recording settings.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "db2eed3c-06b1-4d68-8b4e-7ab1585dfa53", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual profile resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "record": "Never", "notification": { "enabled": true, "type": "Play Announcement" }, "recordVoicemailEnabled": true, "repeat": { "enabled": true }, "startStopAnnouncement": { "internalCallsEnabled": true, "pstnCallsEnabled": true } }, "schema": { "$ref": "#/components/schemas/CallRecordingPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}": { "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 Virtual Line", "operationId": "Delete a Virtual Line", "description": "Delete the designated Virtual Line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nDeleting a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Delete the virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Delete the virtual line from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualLineObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "firstName": "Bob", "lastName": "Smith", "displayName": "Bob Smith", "directorySearchEnabled": "true", "announcementLanguage": "French", "timeZone": "Africa/Algiers", "number": { "external": "+15558675309", "extension": "5309", "primary": true }, "devices": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "description": [], "model": "DMS Cisco 6871", "mac": "123451234502", "primaryOwner": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "lastName": "Christian", "firstName": "Smith", "type": "PEOPLE" }, "activationState": "ACTIVATED", "type": "PRIMARY" } ], "location": { "name": "Main Location Test", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "address": { "address1": "771 Alder Drive", "address2": "Cisco Site 5", "city": "Milpitas", "state": "CA", "postalCode": "95035", "country": "US" } } } } } }, "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 Details for a Virtual Line", "operationId": "Get Details for a Virtual Line", "description": "Retrieve Virtual Line details.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nRetrieving virtual line details requires a full or user or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Virtual Line", "operationId": "Update a Virtual Line", "description": "Update the designated Virtual Line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nUpdating a virtual line requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "firstName": "Bob", "lastName": "Smith", "displayName": "Bob Smith", "phoneNumber": "+15558675309", "extension": "5309", "announcementLanguage": "French", "callerIdFirstName": "Bob", "callerIdLastName": "Smith", "callerIdNumber": "+15558675309", "timeZone": "Africa/Algiers" }, "schema": { "$ref": "#/components/schemas/ModifyVirtualLineObject" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/number": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualLineNumberObject" }, "example": { "phoneNumber": { "directNumber": "+15558675309", "extension": "5309", "primary": 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 Phone Number assigned for a Virtual Line", "operationId": "Get Phone Number assigned for a Virtual Line", "description": "Get details on the assigned phone number and extension for the virtual line.\n\nRetrieving virtual line phone number details requires a full or user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/directorySearch": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Directory search for a Virtual Line", "operationId": "Update Directory search for a Virtual Line", "description": "Update the directory search for a designated Virtual Line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nUpdating Directory search for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write` and `identity:contacts_rw`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Update virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": "true" }, "schema": { "$ref": "#/components/schemas/DirectorySearchObject" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/devices": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualLineDevicesObject" }, "example": { "devices": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "description": [], "model": "DMS Cisco 6871", "mac": "123451234502", "primaryOwner": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "lastName": "Christian", "firstName": "Smith", "type": "PEOPLE" }, "activationState": "ACTIVATED", "type": "PRIMARY", "location": { "name": "Main Location Test", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx" } } ], "availableEndpointType": "SHARED_CALL_APPEARANCE", "maxDeviceCount": 35 } } } }, "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 List of Devices assigned for a Virtual Line", "operationId": "Get List of Devices assigned for a Virtual Line", "description": "Retrieve Device details assigned for a virtual line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nRetrieving the assigned device detials for a virtual line requires a full or user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/dectNetworks": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetVirtualLineDectNetworkObject" }, "example": { "dectNetworks": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "name": "Dect Network1", "primaryEnabled": false, "numberOfHandsetsAssigned": 1, "location": { "name": "Main Location Test", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx" } } ] } } } }, "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 List of DECT Networks Handsets for a Virtual Line", "operationId": "Get List of DECT Networks Handsets for a Virtual Line", "description": "
Not supported for Webex for Government (FedRAMP)
\n\nRetrieve DECT Network details assigned for a virtual line.\n\nVirtual line is a capability in Webex Calling that allows administrators to configure multiple lines to Webex Calling users.\n\nRetrieving the assigned device detials for a virtual line requires a full or user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Retrieve virtual line settings from this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerIdInfo" }, "example": { "types": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "selected": "DIRECT_LINE", "directNumber": "3182202028", "extensionNumber": "4000", "locationNumber": "+13182202021", "tollFreeLocationNumber": false, "firstName": "Lya", "lastName": "Charrel", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "OTHER", "customExternalCallerIdName": "Lya Custom", "locationExternalCallerIdName": "Location caller id", "additionalExternalCallerIdDirectLineEnabled": false, "additionalExternalCallerIdLocationNumberEnabled": false, "additionalExternalCallerIdCustomNumber": "2025552000", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Lya Charrel" }, "dialByFirstName": "Lya", "dialByLastName": "Charrel" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Caller ID Settings for a Virtual Line", "operationId": "Read Caller ID Settings for a Virtual Line", "description": "Retrieve a virtual line's Caller ID settings.\n\nCaller ID settings control how a virtual line's information is displayed when making outgoing calls.\n\nRetrieving the caller ID settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter, as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Caller ID Settings for a Virtual Line", "operationId": "Configure Caller ID Settings for a Virtual Line", "description": "Configure a virtual line's Caller ID settings.\n\nCaller ID settings control how a virtual line's information is displayed when making outgoing calls.\n\nUpdating the caller ID settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter, as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "LOCATION_NUMBER", "customNumber": "2025552000", "firstName": "Lya", "lastName": "Charrel", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "OTHER", "customExternalCallerIdName": "Lya Custom", "additionalExternalCallerIdDirectLineEnabled": false, "additionalExternalCallerIdLocationNumberEnabled": false, "additionalExternalCallerIdCustomNumber": "2025552000", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Lya Charrel" }, "dialByFirstName": "Lya", "dialByLastName": "Charrel" }, "schema": { "$ref": "#/components/schemas/CallerIdPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/callWaiting": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallWaitingInfo" }, "example": { "enabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Waiting Settings for a Virtual Line", "operationId": "Read Call Waiting Settings for a Virtual Line", "description": "Retrieve a virtual line's Call Waiting settings.\n\nWith this feature, a virtual line can place an active call on hold and answer an incoming call. When enabled, while you are on an active call, a tone alerts you of an incoming call and you can choose to answer or ignore the call.\n\nRetrieving the call waiting settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Waiting Settings for a Virtual Line", "operationId": "Configure Call Waiting Settings for a Virtual Line", "description": "Configure a virtual line's Call Waiting settings.\n\nWith this feature, a virtual line can place an active call on hold and answer an incoming call. When enabled, while you are on an active call, a tone alerts you of an incoming call and you can choose to answer or ignore the call.\n\nUpdating the call waiting settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true }, "schema": { "$ref": "#/components/schemas/CallWaitingInfo" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallForwardingInfo" }, "example": { "callForwarding": { "always": { "enabled": false, "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": false, "destinationVoicemailEnabled": false }, "noAnswer": { "enabled": false, "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destinationVoicemailEnabled": 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": "Read Call Forwarding Settings for a Virtual Line", "operationId": "Read Call Forwarding Settings for a Virtual Line", "description": "Retrieve a virtual line's Call Forwarding settings.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the virtual line is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nRetrieving the call forwarding settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Forwarding Settings for a Virtual Line", "operationId": "Configure Call Forwarding Settings for a Virtual Line", "description": "Configure a virtual line's Call Forwarding settings.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy - forwards all incoming calls to the destination you chose while the phone is in use or the virtual line is busy.\n\n+ When no answer - forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nUpdating the call forwarding settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": true, "destination": "9075551333", "destinationVoicemailEnabled": true }, "noAnswer": { "enabled": false, "destination": "", "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destination": "", "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/CallForwardingPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/incomingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingPermissionSetting" }, "example": { "useCustomEnabled": false, "externalTransfer": "ALLOW_ALL_EXTERNAL", "internalCallsEnabled": true, "collectCallsEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Incoming Permission Settings for a Virtual Line", "operationId": "Read Incoming Permission Settings for a Virtual Line", "description": "Retrieve a virtual line's Incoming Permission settings.\n\nYou can change the incoming calling permissions for a virtual line if you want them to be different from your organization's default.\n\nRetrieving the incoming permission settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Incoming Permission Settings for a Virtual Line", "operationId": "Configure Incoming Permission Settings for a Virtual Line", "description": "Configure a virtual line's Incoming Permission settings.\n\nYou can change the incoming calling permissions for a virtual line if you want them to be different from your organization's default.\n\nUpdating the incoming permission settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": false, "externalTransfer": "ALLOW_ALL_EXTERNAL", "internalCallsEnabled": true, "collectCallsEnabled": true }, "schema": { "$ref": "#/components/schemas/IncomingPermissionSetting" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/outgoingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OutgoingCallingPermissionsSettingGet" }, "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "TOLL_FREE", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "INTERNATIONAL", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "OPERATOR_ASSISTED", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "CHARGEABLE_DIRECTORY_ASSISTED", "action": "BLOCK", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_I", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "SPECIAL_SERVICES_II", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": false }, { "callType": "PREMIUM_SERVICES_I", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "PREMIUM_SERVICES_II", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": true }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": 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": "Retrieve a virtual line's Outgoing Calling Permissions Settings", "operationId": "Retrieve a virtual line's Outgoing Calling Permissions Settings", "description": "Retrieve a virtual line's Outgoing Calling Permissions settings.\n\nOutgoing calling permissions regulate behavior for calls placed to various destinations and default to the local level settings. You can change the outgoing calling permissions for a virtual line if you want them to be different from your organization's default.\n\nRetrieving the outgoing permission settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a virtual line's Outgoing Calling Permissions Settings", "operationId": "Modify a virtual line's Outgoing Calling Permissions Settings", "description": "Modify a virtual line's Outgoing Calling Permissions settings.\n\nOutgoing calling permissions regulate behavior for calls placed to various destinations and default to the local level settings. You can change the outgoing calling permissions for a virtual line if you want them to be different from your organization's default.\n\nUpdating the outgoing permission settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/OutgoingCallingPermissionsSettingPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/outgoingPermission/accessCodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListGet" }, "example": { "useCustomAccessCodes": true, "accessCodes": [ { "code": "4856", "description": "Marketing's access code", "level": "CUSTOM" }, { "code": "3421", "description": "Finance's access code", "level": "CUSTOM" } ] } } } }, "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": "Retrieve Access Codes for a Virtual Line", "operationId": "Retrieve Access Codes for a Virtual Line", "description": "Retrieve the virtual line's access codes.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full, user or read-only administrator auth token with a scope of spark-admin:telephony_config_read", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Access Codes for a Virtual Line", "operationId": "Modify Access Codes for a Virtual Line", "description": "Modify a virtual line's access codes.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomAccessCodes": true, "deleteCodes": [ "4856", "2421" ] }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListPatch" } } } } }, "post": { "responses": { "201": { "description": "Created", "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": "Create Access Codes for a Virtual Line", "operationId": "Create Access Codes for a Virtual Line", "description": "Create a new access codes for the virtual line.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "code": "4856", "description": "Marketing's access code" }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeAdd" } } } } }, "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 Access Codes for a Virtual Line", "operationId": "Delete Access Codes for a Virtual Line", "description": "Deletes all access codes for the virtual line.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/outgoingPermission/autoTransferNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransferNumberGet" }, "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" } } } }, "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": "Retrieve Transfer Numbers for a Virtual Line", "operationId": "Retrieve Transfer Numbers for a Virtual Line", "description": "Retrieve the virtual line's transfer numbers.\n\nWhen calling a specific call type, this virtual line will be automatically transferred to another number. The virtual line assigned to the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full, user or read-only administrator auth token with a scope of spark-admin:telephony_config_read", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Transfer Numbers for a Virtual Line", "operationId": "Modify Transfer Numbers for a Virtual Line", "description": "Modify a virtual line's transfer numbers.\n\nWhen calling a specific call type, this virtual line will be automatically transferred to another number. The virtual line assigned the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" }, "schema": { "$ref": "#/components/schemas/TransferNumberPatch" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/outgoingPermission/digitPatterns": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternGetListObject" }, "example": { "useCustomDigitPatterns": false, "digitPatterns": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern1", "pattern": "2XXXX", "action": "ALLOW", "transferEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V5", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve Digit Patterns for a Virtual Profile", "operationId": "Retrieve Digit Patterns for a Virtual Profile", "description": "Get list of digit patterns for the virtual profile.\n\nDigit patterns are used to bypass permissions.\n\nRetrieving this list requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created digit pattern." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Digit Pattern for a Virtual Profile", "operationId": "Create Digit Pattern for a Virtual Profile", "description": "Create a new digit pattern for a virtual profile.\n\nDigit patterns are used to bypass permissions.\n\nCreating the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern3", "pattern": "3XXX", "action": "ALLOW", "transferEnabled": false }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternPostObject" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify the Digit Pattern Category Control Settings for a Virtual Profile", "operationId": "Modify the Digit Pattern Category Control Settings for a Virtual Profile", "description": "Modifies whether this virtual profile uses the specified digit patterns when placing outbound calls or not.\n\nUpdating the digit pattern category control settings requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomDigitPatterns": true }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternCategoryControlPatchObject" } } } } }, "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 all Digit Patterns for a Virtual Profile", "operationId": "Delete all Digit Patterns for a Virtual Profile", "description": "Delete all digit patterns for a virtual profile.\n\nDigit patterns are used to bypass permissions.\n\nDeleting the digit patterns requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/outgoingPermission/digitPatterns/{digitPatternId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserDigitPatternObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve Specified Digit Pattern Details for a Virtual Profile", "operationId": "Retrieve Specified Digit Pattern Details for a Virtual Profile", "description": "Get the specified digit pattern for the virtual profile​.\n\nDigit patterns are used to bypass permissions.\n\nRetrieving the digit pattern details requires a full, user or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Digit Pattern for a Virtual Profile", "operationId": "Modify a Digit Pattern for a Virtual Profile", "description": "Modify a digit patterns for a virtual profile.\n\nDigit patterns are used to bypass permissions.\n\nUpdating the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern4", "pattern": "3XXX2" }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionDigitPatternPatchObject" } } } } }, "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 Digit Pattern for a Virtual Profile", "operationId": "Delete a Digit Pattern for a Virtual Profile", "description": "Delete a digit pattern for a virtual profile.\n\nDigit patterns are used to bypass permissions.\n\nDeleting the digit pattern requires a full or user or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/intercept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallInterceptInfo" }, "example": { "enabled": false, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "newNumber": { "enabled": false }, "zeroTransfer": { "enabled": false } } }, "outgoing": { "type": "INTERCEPT_ALL", "transferEnabled": 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": "Read Call Intercept Settings for a Virtual Line", "operationId": "Read Call Intercept Settings for a Virtual Line", "description": "Retrieves Virtual Line's Call Intercept settings.\n\nThe intercept feature gracefully takes a virtual line's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified virtual line are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nRetrieving the intercept settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Intercept Settings for a Virtual Line", "operationId": "Configure Call Intercept Settings for a Virtual Line", "description": "Configures a virtual line's Call Intercept settings.\n\nThe intercept feature gracefully takes a virtual line's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified virtual line are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nUpdating the intercept settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": false, "announcements": { "greeting": "DEFAULT", "fileName": "", "newNumber": { "enabled": false, "destination": "" }, "zeroTransfer": { "enabled": false, "destination": "" } } }, "outgoing": { "transferEnabled": false, "type": "INTERCEPT_ALL", "destination": "" } }, "schema": { "$ref": "#/components/schemas/CallInterceptPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/intercept/actions/announcementUpload/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure Call Intercept Greeting for a Virtual Line", "operationId": "Configure Call Intercept Greeting for a Virtual Line", "description": "Configure a virtual line's Call Intercept Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nUploading the intercept greeting announcement for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**WARNING:** This API is not callable using the developer portal web interface due to the lack of support for multipart POST. This API can be utilized using other tools that support multipart POST, such as Postman.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Update settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/agent/availableCallerIds": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AvailableCallerIdList" }, "example": { "availableCallerIds": [ { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYmRlNDE4NDAtNmVmYS00YTkzLTk5YmEtNDc5Y2QxYTFjZmI5", "type": "CALL_QUEUE", "name": "TestCallQueue", "extension": "6001" }, { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvOTExNmRmZDMtZGQ4ZS00YTk5LTg1MmYtMjFiYmMxOGNkNzcy", "type": "HUNT_GROUP", "name": "TestHuntGroup", "phoneNumber": "+441234200090", "extension": "6002" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvZTY1NjgzOTMtZTQ5MC00OGQ2LTg3OTgtY2IyZmY3YzkwNzg0", "type": "CALL_QUEUE", "name": "TestCallQueueSecond", "phoneNumber": "+441234200091", "extension": "6003" } ] } } } }, "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": "Retrieve Agent's List of Available Caller IDs", "operationId": "Retrieve Agent's List of Available Caller IDs", "description": "Get the list of call queues and hunt groups available for caller ID use by this virtual line as an agent.\n\nThis API requires a full, user, or read-only administrator auth token with a scope of `spark-admin:people_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the Virtual Line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the Virtual Line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/agent/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AgentCallerId" }, "example": { "selectedCallerId": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMzc4NzRjOGUtMzRhOS00NzFjLWI1N2QtMzAxNTJkZjlmMjQx", "type": "CALL_QUEUE", "name": "new ram", "phoneNumber": "+81123456890", "extension": "09899" } } } } }, "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": "Retrieve Agent's Caller ID Information", "operationId": "Retrieve Agent's Caller ID Information", "description": "Retrieve the Agent's Caller ID Information.\n\nEach agent will be able to set their outgoing Caller ID as either the Call Queue's Caller ID, Hunt Group's Caller ID or their own configured Caller ID.\n\nThis API requires a full admin or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the Virtual Line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYjZmNzYxOC0wNTUyLTRiYmUtYWVmYi02NThjZGU1Y2M3M2Q", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Agent's Caller ID Information", "operationId": "Modify Agent's Caller ID Information", "description": "Modify Agent's Caller ID Information.\n\nEach Agent is able to set their outgoing Caller ID as either the designated Call Queue's Caller ID or the Hunt Group's Caller ID or their own configured Caller ID.\nThis API requires a full or user administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the Virtual Line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iYjZmNzYxOC0wNTUyLTRiYmUtYWVmYi02NThjZGU1Y2M3M2Q", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selectedCallerId": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZWZkN2JjYzAtMjNkNS00NWM2LTk1N2YtZWNhYWEyZDU0M2Uw" }, "schema": { "$ref": "#/components/schemas/PutAgentCallCallerId" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/voicemail": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailInfo" }, "example": { "enabled": true, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": false }, "sendUnansweredCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": true, "numberOfRings": 3, "systemMaxNumberOfRings": 20 }, "notifications": { "enabled": true, "destination": "julie@example.com" }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" }, "messageStorage": { "mwiEnabled": true, "storageType": "INTERNAL", "externalEmail": "julia@example.com" }, "faxMessage": { "enabled": false }, "voiceMessageForwardingEnabled": false, "announcementLanguageCode": "en_us" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Voicemail Settings for a Virtual Line", "operationId": "Read Voicemail Settings for a Virtual Line", "description": "Retrieve a virtual line's voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nRetrieving the voicemail settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Voicemail Settings for a Virtual Line", "operationId": "Configure Voicemail Settings for a Virtual Line", "description": "Configure a virtual line's voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via voicemail.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nUpdating the voicemail settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "notifications": { "enabled": true, "destination": "julie@example.com" }, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT" }, "sendUnansweredCalls": { "enabled": false, "greeting": "CUSTOM", "numberOfRings": 3 }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" }, "announcementLanguageCode": "en_us" }, "schema": { "$ref": "#/components/schemas/VoicemailPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/voicemail/actions/uploadBusyGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure Busy Voicemail Greeting for a Virtual Line", "operationId": "Configure Busy Voicemail Greeting for a Virtual Line", "description": "Configure a virtual line's Busy Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nUploading the voicemail busy greeting announcement for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**WARNING:** This API is not callable using the developer portal web interface due to the lack of support for multipart POST. This API can be utilized using other tools that support multipart POST, such as Postman.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/voicemail/actions/uploadNoAnswerGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure No Answer Voicemail Greeting for a Virtual Line", "operationId": "Configure No Answer Voicemail Greeting for a Virtual Line", "description": "Configure a virtual line's No Answer Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nUploading the voicemail no answer greeting announcement for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**WARNING:** This API is not callable using the developer portal web interface due to the lack of support for multipart POST. This API can be utilized using other tools that support multipart POST, such as Postman.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/voicemail/actions/resetPin/invoke": { "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": "Reset Voicemail PIN for a Virtual Line", "operationId": "Reset Voicemail PIN for a Virtual Line", "description": "Reset a voicemail PIN for a virtual line.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. A voicemail PIN is used to retrieve your voicemail messages.\n\nUpdating the voicemail pin for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.\n\n**NOTE**: This API is expected to have an empty request body and Content-Type header should be set to `application/json`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": {}, "schema": { "type": "object", "properties": {} } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/voicemail/passcode": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a virtual line's voicemail passcode", "operationId": "Modify a virtual line's voicemail passcode", "description": "Modify a virtual line's voicemail passcode.\n\nModifying a virtual line's voicemail passcode requires a full administrator, user administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Modify voicemail passcode for this virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS8wMzgzOWU1Mi03YTk0LTQ4MTgtYTliMC05YzJiMjBkYzRiZWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify voicemail passcode for a virtual line in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "passcode": "1551234" }, "schema": { "$ref": "#/components/schemas/ModifyVoicemailPasscode" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/musicOnHold": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMusicOnHoldObject" }, "example": { "mohEnabled": true, "mohLocationEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } } } }, "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": "Retrieve Music On Hold Settings for a Virtual Line", "operationId": "Retrieve Music On Hold Settings for a Virtual Line", "description": "Retrieve the virtual line's music on hold settings.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nRetrieving the music on hold settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Music On Hold Settings for a Virtual Line", "operationId": "Configure Music On Hold Settings for a Virtual Line", "description": "Configure a virtual line's music on hold settings.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nTo configure music on hold settings for a virtual line, music on hold setting must be enabled for this location.\n\nUpdating the music on hold settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "mohEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, "schema": { "$ref": "#/components/schemas/PutMusicOnHoldObject" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/pushToTalk": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PushToTalkInfo" }, "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE", "lastName": "Johnson", "firstName": "Bob", "displayName": "Bob Johnson", "type": "PEOPLE", "email": "bob@example.com", "numbers": [ { "external": "+198455501099", "extension": "1099", "routingPrefix": "1234", "esn": "12341099", "primary": true } ] } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Push-to-Talk Settings for a Virtual Line", "operationId": "Read Push-to-Talk Settings for a Virtual Line", "description": "Retrieve a virtual line's Push-to-Talk settings.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people in different parts of your organization.\n\nRetrieving the Push-to-Talk settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Push-to-Talk Settings for a Virtual Line", "operationId": "Configure Push-to-Talk Settings for a Virtual Line", "description": "Configure a virtual line's Push-to-Talk settings.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people in different parts of your organization.\n\nUpdating the Push-to-Talk settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE" ] }, "schema": { "$ref": "#/components/schemas/PushToTalkPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/callBridge": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallBridgeInfo" }, "example": { "warningToneEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Bridge Settings for a Virtual Line", "operationId": "Read Call Bridge Settings for a Virtual Line", "description": "Retrieve a virtual line's call bridge settings.\n\nRetrieving the call bridge settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Bridge Settings for a Virtual Line", "operationId": "Configure Call Bridge Settings for a Virtual Line", "description": "Configure a virtual line's call bridge settings.\n\nUpdating the call bridge settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "warningToneEnabled": true }, "schema": { "$ref": "#/components/schemas/CallBridgePut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/bargeIn": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BargeInInfo" }, "example": { "enabled": true, "toneEnabled": true } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Barge In Settings for a Virtual Line", "operationId": "Read Barge In Settings for a Virtual Line", "description": "Retrieve a virtual line's barge in settings.\n\nThe Barge In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge In can be used across locations.\n\nRetrieving the barge in settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Barge In Settings for a Virtual Line", "operationId": "Configure Barge In Settings for a Virtual Line", "description": "Configure a virtual line's barge in settings.\n\nThe Barge In feature enables you to use a Feature Access Code (FAC) to answer a call that was directed to another subscriber, or barge-in on the call if it was already answered. Barge In can be used across locations.\n\nUpdating the barge in settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "toneEnabled": true }, "schema": { "$ref": "#/components/schemas/BargeInPut" } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/privacy": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrivacyGet" }, "example": { "aaExtensionDialingEnabled": true, "aaNamingDialingEnabled": true, "enablePhoneStatusDirectoryPrivacy": true, "enablePhoneStatusPickupBargeInPrivacy": true, "monitoringAgents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": 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 a Virtual Line's Privacy Settings", "operationId": "Get a Virtual Line's Privacy Settings", "description": "Get a virtual line's privacy settings for the specified virtual line ID.\n\nThe privacy feature enables the virtual line's line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nRetrieving the privacy settings for a virtual line requires a full, user, or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "200": { "description": "OK", "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": "Configure a Virtual Line's Privacy Settings", "operationId": "Configure a Virtual Line's Privacy Settings", "description": "Configure a virtual line's privacy settings for the specified virtual line ID.\n\nThe privacy feature enables the virtual line's line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nUpdating the privacy settings for a virtual line requires a full or user administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Retrieve settings for a virtual line with the matching ID.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the virtual line resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "aaExtensionDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant extension dialing is enabled." }, "aaNamingDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant dialing by first or last name is enabled." }, "enablePhoneStatusDirectoryPrivacy": { "type": "boolean", "example": true, "description": "When `true` phone status directory privacy is enabled." }, "enablePhoneStatusPickupBargeInPrivacy": { "type": "boolean", "example": true, "description": "When `true` privacy is enforced for call pickup and barge-in. Only members specified by `monitoringAgents` can pickup or barge-in on the call." }, "monitoringAgents": { "type": "array", "items": { "type": "string" }, "description": "List of monitoring person IDs." } } } } } } } }, "/telephony/config/virtualLines/{virtualLineId}/faxMessage/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineFaxMessageAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Virtual Line Fax Message Available Phone Numbers", "operationId": "Get Virtual Line Fax Message Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a virtual line's FAX message number.\nThese numbers are associated with the location of the virtual line specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Virtual Line Call Forward Available Phone Numbers", "operationId": "Get Virtual Line Call Forward Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a virtual line's call forward number.\nThese numbers are associated with the location of the virtual line specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "includedTelephonyTypes": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Virtual Line Available Phone Numbers", "operationId": "Get Virtual Line Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a virtual line's phone number.\nBy default, this API returns unassigned numbers from all locations. To select the suitable number for assignment, ensure the virtual line's location ID is provided as the `locationId` request parameter.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/emergencyCallbackNumber/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineECBNAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NWQ3MmYwNS00NDYzLTQxYzktYjI0Ni01MDhkMDM2YzJhOTE", "type": "VIRTUAL_LINE", "displayName": "Test VL" } }, { "phoneNumber": "+12056350004", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWnpOcmEybHNkalV3ZDBCbWJHVjRNaTVqYVhOamJ5NWpiMjA9", "type": "HUNT_GROUP", "displayName": "Test HG" } } ] } } } }, "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 Virtual Line ECBN Available Phone Numbers", "operationId": "Get Virtual Line ECBN Available Phone Numbers", "description": "List standard numbers that can be assigned as a virtual line's call forward number.\nThese numbers are associated with the location of the virtual line specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/callIntercept/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineCallInterceptAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2RtbHRNWFV6WjJkaWRFQTJORGswTVRJNU55NXBiblF4TUM1aVkyeGtMbmRsWW1WNExtTnZiUT09", "type": "AUTO_ATTENDANT", "displayName": "Test Autoattendant" } } ] } } } }, "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 Virtual Line Call Intercept Available Phone Numbers", "operationId": "Get Virtual Line Call Intercept Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a virtual line's call intercept number.\nThese numbers are associated with the location of the virtual line specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfUFJPRklMRS84ZDRkMDNlYS03NTUzLTQ0NTgtYmI4OS02YzExNzgyMzA4OWY", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/virtualLines/{virtualLineId}/doNotDisturb": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VirtualLineDoNotDisturbGet" }, "example": { "enabled": true, "ringSplashEnabled": 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": "Retrieve DoNotDisturb Settings for a Virtual Line", "operationId": "Get Virtual Line DoNotDisturb", "description": "Retrieve DoNotDisturb Settings for a Virtual Line.\n\nSilence incoming calls with the Do Not Disturb feature.\nWhen enabled, callers hear the busy signal.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `telephony_config_read`.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the virtual line resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify DoNotDisturb Settings for a Virtual Line", "operationId": "Put VirtualLine DoNotDisturb", "description": "Modify DoNotDisturb Settings for a Virtual Line.\n\nSilence incoming calls with the Do Not Disturb feature.\nWhen enabled, callers hear the busy signal.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Virtual Line Call Settings" ], "parameters": [ { "name": "virtualLineId", "in": "path", "description": "Unique identifier for the virtual line.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the virtual line resides.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "ringSplashEnabled": false }, "schema": { "$ref": "#/components/schemas/VirtualLineDoNotDisturbPatch" } } } } } }, "/telephony/config/serviceSettings/callerReputationProvider": { "get": { "responses": { "200": { "description": "Successful response with caller reputation provider settings.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerReputationProviderSettings" }, "example": { "name": "Acme Reputation Provider", "id": "provider-123", "clientId": "client-456", "enabled": true, "callBlockScoreThreshold": "0.7", "callAllowScoreThreshold": "0.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": "Get Caller Reputation Provider Service Settings", "operationId": "getCallerReputationProviderSettings", "description": "Retrieves the configuration and status of the caller reputation provider service for Webex Calling.", "tags": [ "Caller Reputation Provider" ], "parameters": [ { "name": "organizationId", "in": "query", "description": "Unique identifier for the organization.", "required": false, "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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 Caller Reputation Provider Service Settings", "operationId": "updateCallerReputationProviderSettings", "description": "Updates the configuration of the caller reputation provider service for Webex Calling.", "tags": [ "Caller Reputation Provider" ], "parameters": [ { "name": "organizationId", "in": "query", "description": "Unique identifier for the organization.", "required": false, "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerReputationProviderSettingsUpdate" }, "example": { "enabled": true, "id": "provider-123", "name": "Acme Reputation Provider", "clientId": "client-456", "clientSecret": "secret-789", "callBlockScoreThreshold": "0.7", "callAllowScoreThreshold": "0.3" } } } } } }, "/telephony/config/serviceSettings/callerReputationProvider/status": { "get": { "responses": { "200": { "description": "Successful response with caller reputation provider status.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerReputationProviderStatus" }, "example": { "id": "provider-123", "status": "CONNECTED" } } } }, "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 Caller Reputation Provider Status", "operationId": "getCallerReputationProviderStatus", "description": "Retrieves the current status of the caller reputation provider integration for Webex Calling.", "tags": [ "Caller Reputation Provider" ], "parameters": [ { "name": "organizationId", "in": "query", "description": "Unique identifier for the organization.", "required": false, "schema": { "type": "string" } } ] } }, "/telephony/config/serviceSettings/callerReputationProvider/actions/unlock/invoke": { "post": { "responses": { "200": { "description": "Successful unlock of caller reputation provider." }, "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": "Unlock Caller Reputation Provider", "operationId": "unlockCallerReputationProvider", "description": "Unlocks the caller reputation provider for Webex Calling.", "tags": [ "Caller Reputation Provider" ], "parameters": [ { "name": "organizationId", "in": "query", "description": "Unique identifier for the organization.", "required": false, "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerReputationProviderUnlockRequest" }, "example": { "id": "provider-123" } } } } } }, "/telephony/config/serviceSettings/callerReputationProvider/providers": { "get": { "responses": { "200": { "description": "Successful response with list of caller reputation providers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallerReputationProviderProvidersResponse" }, "example": { "providers": [ { "id": "provider-123", "enabled": true, "name": "Acme Reputation Provider", "regions": [ { "id": "region-1", "name": "US East", "type": "primary", "visible": true, "environmentType": "production" } ] } ] } } } }, "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 Caller Reputation Provider Providers", "operationId": "getCallerReputationProviderProviders", "description": "Retrieves the list of available caller reputation providers and their regions for Webex Calling.", "tags": [ "Caller Reputation Provider" ], "parameters": [ { "name": "organizationId", "in": "query", "description": "Unique identifier for the organization.", "required": false, "schema": { "type": "string" } } ] } }, "/workspaces/{workspaceId}/features/callForwarding": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceCallForwardingGet" }, "example": { "callForwarding": { "always": { "enabled": false, "destination": "", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": true, "destination": "+17084004987", "destinationVoicemailEnabled": true }, "noAnswer": { "enabled": true, "destination": "+12815550001", "numberOfRings": 2, "systemMaxNumberOfRings": 20, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destination": "", "destinationVoicemailEnabled": 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": "Retrieve Call Forwarding Settings for a Workspace", "operationId": "Retrieve Call Forwarding Settings for a Workspace", "description": "Retrieve Call Forwarding Settings for a Workspace.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy, forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer, forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Call Forwarding Settings for a Workspace", "operationId": "Modify Call Forwarding Settings for a Workspace", "description": "Modify call forwarding settings for a Workspace.\n\nThree types of call forwarding are supported:\n\n+ Always - forwards all incoming calls to the destination you choose.\n\n+ When busy, forwards all incoming calls to the destination you chose while the phone is in use or the person is busy.\n\n+ When no answer, forwarding only occurs when you are away or not answering your phone.\n\nIn addition, the Business Continuity feature will send calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callForwarding": { "always": { "enabled": false, "destination": "", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "busy": { "enabled": true, "destination": "+17084004987", "destinationVoicemailEnabled": true }, "noAnswer": { "enabled": true, "destination": "+12815550001", "numberOfRings": 2, "destinationVoicemailEnabled": false } }, "businessContinuity": { "enabled": false, "destination": "", "destinationVoicemailEnabled": false } }, "schema": { "$ref": "#/components/schemas/ModifyPlaceCallForwardSettings" } } } } } }, "/workspaces/{workspaceId}/features/callWaiting": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallWaiting" }, "example": { "enabled": 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": "Retrieve Call Waiting Settings for a Workspace", "operationId": "Retrieve Call Waiting Settings for a Workspace", "description": "Retrieve Call Waiting Settings for a Workspace.\n\nCall Waiting allows workspaces to handle multiple simultaneous calls. Workspaces with Call Waiting enabled can place a call on hold to answer or initiate another call.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Call Waiting Settings for a Workspace", "operationId": "Modify Call Waiting Settings for a Workspace", "description": "Modify Call Waiting Settings for a Workspace.\n\nCall Waiting allows workspaces to handle multiple simultaneous calls. Workspaces with Call Waiting enabled can place a call on hold to answer or initiate another call.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "callWaiting": true }, "schema": { "$ref": "#/components/schemas/ModifyCallWaiting" } } } } } }, "/workspaces/{workspaceId}/features/callerId": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceCallerIdGet" }, "example": { "types": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "selected": "DIRECT_LINE", "directNumber": "+12815550003", "locationNumber": "+12815550002", "tollFreeLocationNumber": false, "customNumber": "+12815550003", "displayName": "Clockmaker's shop 7.1", "displayDetail": ".", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "DIRECT_LINE", "customExternalCallerIdName": "Custom external caller name", "locationExternalCallerIdName": "Anna", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Caller ID Settings for a Workspace", "operationId": "Read Caller ID Settings for a Workspace", "description": "Retrieve a workspace's Caller ID settings.\n\nCaller ID settings control how a workspace's information is displayed when making outgoing calls.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Caller ID Settings for a Workspace", "operationId": "Configure Caller ID Settings for a Workspace", "description": "Configure workspace's Caller ID settings.\n\nCaller ID settings control how a workspace's information is displayed when making outgoing calls.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "selected": "DIRECT_LINE", "customNumber": "+12815550003", "displayName": "Clockmaker's shop 7.1", "displayDetail": ".", "blockInForwardCallsEnabled": false, "externalCallerIdNamePolicy": "DIRECT_LINE", "customExternalCallerIdName": "Anna", "directLineCallerIdName": { "selection": "CUSTOM_NAME", "customName": "Hakim Smith" }, "dialByName": "Hakim Smith" }, "schema": { "$ref": "#/components/schemas/ModifyPlaceCallerIdGet" } } } } } }, "/workspaces/{workspaceId}/features/monitoring": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserMonitoringGet" }, "example": { "callParkNotificationEnabled": false, "monitoredElements": [ { "member": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NzQzNTI1Yi02ZjgxLTQ0NTktYTYxNC0yN2E0ZDIyZTZhYzI", "lastName": "Hughes", "firstName": "Jack", "displayName": "Jack Hughes", "type": "PEOPLE", "email": "jhughes@example.com", "numbers": [ { "extension": "587", "routingPrefix": "1234", "esn": "1234587", "primary": true } ], "location": "Richardson", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M2MDliOGE1LTAxNmQtNDAwNy1hN2E0LTJhMThiZmZjY2FmNg" } }, { "callparkextension": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vOGI2NzlmMzktMTdmMC00ODY3LTk4MmYtYmEwMWJmYmE3YjQw", "name": "patch postman test", "extension": "4594", "routingPrefix": "1234", "esn": "1234587", "location": "Banglore", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" } } ] } } } }, "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": "Retrieve Monitoring Settings for a Workspace", "operationId": "Retrieve Monitoring Settings for a Workspace", "description": "Retrieves Monitoring settings for a Workspace.\n\nAllow workspaces to monitor the line status of specified agents, workspaces, or call park extensions. The line status indicates if a monitored agent or a workspace is on a call, or if a call has been parked on the monitored call park extension.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Monitoring Settings for a Workspace", "operationId": "Modify Monitoring Settings for a Workspace", "description": "Modify Monitoring settings for a Workspace.\n\nAllow workspaces to monitor the line status of specified agents, workspaces, or call park extensions. The line status indicates if a monitored agent or a workspace is on a call, or if a call has been parked on the monitored call park extension.\n\nThe number of monitored elements is limited to 50.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enableCallParkNotification": true, "monitoredElements": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xYjhkYjA4YS0wY2JlLTRlZDctOThmMy05ZThlZjBhOGI2N2E", "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vZmJjNzlkNzAtMjM5Zi00YjIyLWE2YTAtZjAwNWFmOGNlMjA0" ] }, "schema": { "$ref": "#/components/schemas/UserMonitoringPatch" } } } } } }, "/workspaces/{workspaceId}/features/numbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceGetNumbersResponse" }, "example": { "distinctiveRingEnabled": true, "phoneNumbers": [ { "external": "+12055550001", "extension": "12211", "routingPrefix": "1234", "esn": "123412211", "primary": true }, { "external": "+12055550002", "extension": "122", "routingPrefix": "1234", "esn": "123412211", "primary": false } ], "workspace": { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzg0MjkzOGQ1LTkyNzMtNGJjNi1hYTNhLTA1Njc3MmRiMzE2NQ" }, "location": { "name": "MainOffice", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" }, "organization": { "id": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "name": "Atlas_Test_CALL-1237" } } } } }, "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 numbers associated with a specific workspace", "operationId": "List numbers associated with a specific workspace", "description": "List the PSTN phone numbers associated with a specific workspace, by ID, within the organization. Also shows the location and organization associated with the workspace.\n\nRetrieving this list requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read`.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "List numbers for this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Workspace is in this organization. Only admin users of another organization (such as partners) can use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/workspaces/{workspaceId}/features/incomingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserInboundPermissionGet" }, "example": { "useCustomEnabled": false, "externalTransfer": "ALLOW_ALL_EXTERNAL", "internalCallsEnabled": true, "collectCallsEnabled": 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": "Retrieve Incoming Permission Settings for a Workspace", "operationId": "Retrieve Incoming Permission Settings for a Workspace", "description": "Retrieve Incoming Permission settings for a Workspace.\n\nIncoming permission settings allow modifying permissions for a workspace that can be different from the organization's default to manage different call types.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Incoming Permission Settings for a Workspace", "operationId": "Modify Incoming Permission Settings for a Workspace", "description": "Modify Incoming Permission settings for a Workspace.\n\nIncoming permission settings allow modifying permissions for a workspace that can be different from the organization's default to manage different call types.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": true, "externalTransfer": "BLOCK_ALL_EXTERNAL", "internalCallsEnabled": false, "collectCallsEnabled": false }, "schema": { "$ref": "#/components/schemas/UserInboundPermissionPatch" } } } } } }, "/workspaces/{workspaceId}/features/outgoingPermission": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionGet" }, "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "TOLL_FREE", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "INTERNATIONAL", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "OPERATOR_ASSISTED", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "CHARGEABLE_DIRECTORY_ASSISTED", "action": "BLOCK", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "SPECIAL_SERVICES_I", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "SPECIAL_SERVICES_II", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": true }, { "callType": "PREMIUM_SERVICES_I", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "PREMIUM_SERVICES_II", "action": "BLOCK", "transferEnabled": false, "isCallTypeRestrictionEnabled": false }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true, "isCallTypeRestrictionEnabled": 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": "Retrieve Outgoing Permission Settings for a Workspace", "operationId": "Retrieve Outgoing Permission Settings for a Workspace", "description": "Retrieve Outgoing Permission settings for a Workspace.\n\nTurn on outgoing call settings for this workspace to override the calling settings from the location that are used by default.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Outgoing Permission Settings for a Workspace", "operationId": "Modify Outgoing Permission Settings for a Workspace", "description": "Modify Outgoing Permission settings for a Place.\n\nTurn on outgoing call settings for this workspace to override the calling settings from the location that are used by default.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomEnabled": true, "useCustomPermissions": true, "callingPermissions": [ { "callType": "INTERNAL_CALL", "action": "ALLOW", "transferEnabled": true }, { "callType": "TOLL_FREE", "action": "ALLOW", "transferEnabled": true }, { "callType": "INTERNATIONAL", "action": "BLOCK", "transferEnabled": false }, { "callType": "OPERATOR_ASSISTED", "action": "ALLOW", "transferEnabled": true }, { "callType": "CHARGEABLE_DIRECTORY_ASSISTED", "action": "BLOCK", "transferEnabled": true }, { "callType": "SPECIAL_SERVICES_I", "action": "ALLOW", "transferEnabled": true }, { "callType": "SPECIAL_SERVICES_II", "action": "ALLOW", "transferEnabled": true }, { "callType": "PREMIUM_SERVICES_I", "action": "BLOCK", "transferEnabled": false }, { "callType": "PREMIUM_SERVICES_II", "action": "BLOCK", "transferEnabled": false }, { "callType": "NATIONAL", "action": "ALLOW", "transferEnabled": true } ] }, "schema": { "$ref": "#/components/schemas/UserOutgoingPermissionPatch" } } } } } }, "/workspaces/{workspaceId}/features/outgoingPermission/accessCodes": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListGet" }, "example": { "useCustomAccessCodes": true, "accessCodes": [ { "code": "4856", "description": "Marketing's access code", "level": "CUSTOM" }, { "code": "3421", "description": "Finance's access code", "level": "CUSTOM" } ] } } } }, "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": "Retrieve Access Codes for a Workspace", "operationId": "Retrieve Access Codes for a Workspace", "description": "Retrieve Access codes for a Workspace.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Access Codes for a Workspace", "operationId": "Modify Access Codes for a Workspace", "description": "Modify Access codes for a workspace.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomAccessCodes": true, "deleteCodes": [ "4856", "2421" ] }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeListPatch" } } } } }, "post": { "responses": { "201": { "description": "Created", "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": "Create Access Codes for a Workspace", "operationId": "Create Access Codes for a Workspace", "description": "Create new Access codes for the given workspace.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "code": "4856", "description": "Marketing's access code" }, "schema": { "$ref": "#/components/schemas/UserPlaceAuthorizationCodeAdd" } } } } }, "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 all Access Codes for a Workspace", "operationId": "Delete all Access Codes for a Workspace", "description": "Deletes all Access codes for the given workspace.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/workspaces/{workspaceId}/features/intercept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InterceptGet" }, "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": true, "announcements": { "greeting": "DEFAULT", "newNumber": { "enabled": true, "destination": "+12145551003" }, "zeroTransfer": { "enabled": true, "destination": "+12145551003" } } }, "outgoing": { "type": "INTERCEPT_ALL", "transferEnabled": true, "destination": "+12145551003" } } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Intercept Settings for a Workspace", "operationId": "Read Call Intercept Settings for a Workspace", "description": "Retrieves Workspace's Call Intercept Settings\n\nThe intercept feature gracefully takes a workspace's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified workspace are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Intercept Settings for a Workspace", "operationId": "Configure Call Intercept Settings for a Workspace", "description": "Configures a Workspace's Call Intercept Settings\n\nThe intercept feature gracefully takes a workspace's phone out of service, while providing callers with informative announcements and alternative routing options. Depending on the service configuration, none, some, or all incoming calls to the specified person are intercepted. Also depending on the service configuration, outgoing calls are intercepted or rerouted to another location.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_write` or a user auth token with `spark:workspaces_read` scope can be used by a person to read their settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "incoming": { "type": "INTERCEPT_ALL", "voicemailEnabled": true, "announcements": { "greeting": "DEFAULT", "newNumber": { "enabled": true, "destination": "+12145551003" }, "zeroTransfer": { "enabled": true, "destination": "+12145551003" } } }, "outgoing": { "type": "INTERCEPT_ALL", "transferEnabled": true, "destination": "+12145551003" } }, "schema": { "$ref": "#/components/schemas/InterceptPatch" } } } } } }, "/workspaces/{workspaceId}/features/outgoingPermission/autoTransferNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransferNumberGet" }, "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" } } } }, "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": "Retrieve Transfer Numbers Settings for a Workspace", "operationId": "Retrieve Transfer Numbers Settings for a Workspace", "description": "Retrieve Transfer Numbers Settings for a Workspace.\n\nWhen calling a specific call type, this workspace will be automatically transferred to another number. The person assigned the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Transfer Numbers Settings for a Workspace", "operationId": "Modify Transfer Numbers Settings for a Workspace", "description": "Modify Transfer Numbers Settings for a place.\n\nWhen calling a specific call type, this workspace will be automatically transferred to another number. The person assigned the Auto Transfer Number can then approve the call and send it through or reject the call type. You can add up to 3 numbers.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with `spark:workspaces_write` scope can be used to update workspace settings.", "tags": [ "Workspace Call Settings (1/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomTransferNumbers": true, "autoTransferNumber1": "+1205553650", "autoTransferNumber2": "+1205553651", "autoTransferNumber3": "+1205553652" }, "schema": { "$ref": "#/components/schemas/TransferNumberPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/musicOnHold": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMusicOnHoldObject" }, "example": { "mohEnabled": true, "mohLocationEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } } } } }, "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": "Retrieve Music On Hold Settings for a Workspace", "operationId": "Retrieve Music On Hold Settings for a Workspace", "description": "Retrieve Music On Hold Settings for a Workspace.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nRetrieving a workspace's music on hold settings requires a full, device or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Music On Hold Settings for a Workspace", "operationId": "Modify Music On Hold Settings for a Workspace", "description": "Modify music on hold settings for a Workspace.\n\nMusic on hold is played when a caller is put on hold, or the call is parked.\n\nTo configure music on hold setting for a workspace, music on hold setting must be enabled for this location.\n\nThis API requires a full or device administrator or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the person resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "mohEnabled": true, "greeting": "CUSTOM", "audioAnnouncementFile": { "id": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jZWRkODcwYS1lMTkzLTQxNmQtYmM3OS1mNzkyYmUyMzlhOGI", "fileName": "AUDIO_FILE.wav", "mediaFileType": "WAV", "level": "ORGANIZATION" } }, "schema": { "$ref": "#/components/schemas/PutMusicOnHoldObject" } } } } } }, "/telephony/config/workspaces/{workspaceId}/features/accessCodes/{accessCode}": { "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 Specific Access Code for a Workspace", "operationId": "Delete a Specific Access Code for a Workspace", "description": "Deletes a specific access code for the given workspace.\n\nAccess codes are used to bypass permissions.\n\nThis API requires a full, device or location administrator auth token with the scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "accessCode", "in": "path", "description": "Access code for outgoing calls.", "required": true, "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/outgoingPermission/digitPatterns": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceOutgoingPermissionDigitPatternGetListObject" }, "example": { "useCustomDigitPatterns": false, "digitPatterns": [ { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern1", "pattern": "2XXXX", "action": "ALLOW", "transferEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V5", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve all Digit Patterns for a Workspace", "operationId": "Retrieve all Digit Patterns for a Workspace", "description": "Retrieve all digit patterns for a Workspace.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "ID of the newly created digit pattern." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3" } } } }, "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 Digit Pattern for a Workspace", "operationId": "Create Digit Pattern for a Workspace", "description": "Create a new digit pattern for the given workspace.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern3", "pattern": "3XXX", "action": "ALLOW", "transferEnabled": false }, "schema": { "$ref": "#/components/schemas/WorkspaceOutgoingPermissionDigitPatternPostObject" } } } } }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify the Digit Pattern Category Control Settings for the Workspace", "operationId": "Modify the Digit Pattern Category Control Settings for the Workspace", "description": "Modifies whether this workspace uses the specified digit patterns when placing outbound calls or not.\n\nUpdating the digit pattern category control settings requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "useCustomDigitPatterns": true }, "schema": { "$ref": "#/components/schemas/WorkspaceOutgoingPermissionDigitPatternCategoryControlPatchObject" } } } } }, "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 all Digit Patterns for a Workspace", "operationId": "Delete all Digit Patterns for a Workspace", "description": "Delete all digit patterns for a Workspace.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/outgoingPermission/digitPatterns/{digitPatternId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceDigitPatternObject" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "name": "DigitPattern2", "pattern": "1XXXX", "action": "ALLOW", "transferEnabled": 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": "Retrieve a Digit Pattern details for the Workspace", "operationId": "Retrieve a Digit Pattern details for the Workspace", "description": "Retrieve the designated digit pattern.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify a Digit Pattern for the Workspace", "operationId": "Modify a Digit Pattern for the Workspace", "description": "Modify the designated digit pattern.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "name": "DigitPattern4", "pattern": "3XXX2" }, "schema": { "$ref": "#/components/schemas/WorkspaceOutgoingPermissionDigitPatternPatchObject" } } } } }, "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 Digit Pattern for the Workspace", "operationId": "Delete a Digit Pattern for the Workspace", "description": "Delete a digit pattern for a Workspace.\n\nDigit patterns are used to bypass permissions.\n\nThis API requires a full or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFkNjAzZTljLWJmM2QtNDA5OS05MGFiLTkyZWFlZWE3MjEzNw", "schema": { "type": "string" } }, { "name": "digitPatternId", "in": "path", "description": "Unique identifier for the digit pattern.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/features/intercept/actions/announcementUpload/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Upload Call Intercept Announcement file for a Workspace", "operationId": "Upload Call Intercept Announcement file for a Workspace", "description": "Upload call intercept announcement file for a workspace.\n\nThe upload announcement feature for a call intercept is used to play custom announcements for a workspace.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full, device or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "orgId", "in": "query", "description": "Create an announcement in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/features/callRecordings": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallRecordingInfo" }, "example": { "enabled": true, "record": "Never", "recordVoicemailEnabled": false, "notification": { "enabled": true, "type": "None" }, "repeat": { "interval": 15, "enabled": false }, "serviceProvider": "WSWYZ25455", "externalGroup": "WSWYZ25455L31161", "externalIdentifier": "a34iidrh5o@64941297.int10.bcld.webex.com", "startStopAnnouncement": { "internalCallsEnabled": false, "pstnCallsEnabled": 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": "Retrieve Call Recording Settings for a Workspace", "operationId": "Retrieve Call Recording Settings for a Workspace", "description": "Retrieve call recording settings for a workspace.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThis API requires a full, read-only, device or location administrator auth token with the `spark-admin:telephony_config_read` scope.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callRecordingResponse" }, "example": { "vendorId": "53dc4c87-8408-4882-9570-dca2bcdb9280", "vendorName": "Dubber", "termsOfServiceUrl": "https://www.dubber.net/terms" } } } }, "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": "Modify Call Recording Settings for a Workspace", "operationId": "Modify Call Recording Settings for a Workspace", "description": "Modify call forwarding settings for a workspace.\n\nThe Call Recording feature provides a hosted mechanism to record the calls placed and received on the Carrier platform for replay and archival. This feature is helpful for quality assurance, security, training, and more.\n\nThe vendor's terms of service have to be accepted to enable call recording. Vendor details along with the terms of service URL are shared when the vendor's terms of service are not accepted yet.\n\nThis API requires a full, device or location administrator auth token with the `spark-admin:telephony_config_write` scope.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "record": "Always with Pause/Resume", "notification": { "enabled": true, "type": "Play Announcement" }, "recordVoicemailEnabled": true, "repeat": { "enabled": true }, "startStopAnnouncement": { "internalCallsEnabled": true, "pstnCallsEnabled": true } }, "schema": { "$ref": "#/components/schemas/CallRecordingPut" } } } } } }, "/telephony/config/workspaces/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "includedTelephonyTypes": "PSTN_NUMBER", "isServiceNumber": false, "telephonyType": "PSTN_NUMBER" }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Workspace Available Phone Numbers", "operationId": "Get Workspace Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a workspace's phone number.\nBy default, this API returns numbers from all locations that are unassigned. To select the suitable number for assignment, ensure the workspace's location ID is provided as the `locationId` request parameter.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Return the list of phone numbers for this location within the given organization. The maximum length is 36.", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2YwYzRhOTcyLWIxNjQtMTFlZS05MWVhLWZiYjliMTkwMjI2Yg", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/workspaces/{workspaceId}/emergencyCallbackNumber/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceECBNAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NWQ3MmYwNS00NDYzLTQxYzktYjI0Ni01MDhkMDM2YzJhOTE", "type": "VIRTUAL_LINE", "displayName": "Test VL" } }, { "phoneNumber": "+12056350004", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvWnpOcmEybHNkalV3ZDBCbWJHVjRNaTVqYVhOamJ5NWpiMjA9", "type": "HUNT_GROUP", "displayName": "Test HG" } } ] } } } }, "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 Workspace ECBN Available Phone Numbers", "operationId": "Get Workspace ECBN Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a workspace's emergency callback number.\nThese numbers are associated with the location of the workspace specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/callForwarding/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceCallForwardAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9lZjJkMjg3Ny1hYTY0LTRkMjQtYTFjNi02OWExMmNhMWI2YTA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYm1kMmVIcHNabTgwWVVBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "type": "CALL_QUEUE", "displayName": "Test call queue" } } ] } } } }, "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 Workspace Call Forward Available Phone Numbers", "operationId": "Get Workspace Call Forward Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a workspace's call forward number.\nThese numbers are associated with the location of the workspace specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/callIntercept/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceCallInterceptAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": true, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Test", "lastName": "Person" } }, { "phoneNumber": "+12056350002", "extension": "1235", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9iMzRmZjk3ZC1jMDkzLTRiYTMtOTEyMC0yMDc1M2U3Yjg3YjA=", "type": "PLACE", "displayName": "TestWorkSpace" } }, { "phoneNumber": "+12056350003", "extension": "1236", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "tollFreeNumber": true, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2RtbHRNWFV6WjJkaWRFQTJORGswTVRJNU55NXBiblF4TUM1aVkyeGtMbmRsWW1WNExtTnZiUT09", "type": "AUTO_ATTENDANT", "displayName": "Test Autoattendant" } } ] } } } }, "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 Workspace Call Intercept Available Phone Numbers", "operationId": "Get Workspace Call Intercept Available Phone Numbers", "description": "List the service and standard PSTN numbers that are available to be assigned as a workspace's call intercept number.\nThese numbers are associated with the location of the workspace specified in the request URL, can be active or inactive, and are assigned to an owning entity.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } }, { "name": "ownerName", "in": "query", "description": "Return the list of phone numbers that are owned by the given `ownerName`. Maximum length is 255.", "example": "Test", "schema": { "type": "string" } }, { "name": "extension", "in": "query", "description": "Returns the list of PSTN phone numbers with the given `extension`.", "example": "1234", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/anonymousCallReject": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AnonymousCallRejectionGet" }, "example": { "enabled": 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": "Retrieve Anonymous Call Settings for a Workspace", "operationId": "Retrieve Anonymous Call Settings for a Workspace", "description": "Retrieve Anonymous Call Settings for a Workspace.\n\nAnonymous Call Rejection, when enabled, blocks all incoming calls from unidentified or blocked caller IDs.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Anonymous Call Settings for a Workspace", "operationId": "Modify Anonymous Call Settings for a Workspace", "description": "Modify Anonymous Call Settings for a Workspace.\n\nAnonymous Call Rejection, when enabled, blocks all incoming calls from unidentified or blocked caller IDs.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/AnonymousCallRejectionPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/bargeIn": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserBargeInGet" }, "example": { "enabled": true, "toneEnabled": 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": "Retrieve Barge In Call Settings for a Workspace", "operationId": "Retrieve Barge In Call Settings for a Workspace", "description": "Retrieve Barge In Call Settings for a Workspace.\n\nBarge In, when enabled, allows you to use the Feature Access Code (FAC) on your desk phone to answer someone else’s phone call or barge in on a call they’ve already answered.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Barge In Call Settings for a Workspace", "operationId": "Modify Barge In Call Settings for a Workspace", "description": "Modify Barge In Call Settings for a Workspace.\n\nBarge In, when enabled, allows you to use the Feature Access Code (FAC) on your desk phone to answer someone else’s phone call or barge in on a call they’ve already answered.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "toneEnabled": false }, "schema": { "$ref": "#/components/schemas/UserBargeInPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/doNotDisturb": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceDoNotDisturbGet" }, "example": { "enabled": true, "ringSplashEnabled": 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": "Retrieve DoNotDisturb Settings for a Workspace", "operationId": "Retrieve DoNotDisturb Settings for a Workspace", "description": "Retrieve DoNotDisturb Settings for a Workspace.\n\nSilence incoming calls with the Do Not Disturb feature.\nWhen enabled, callers hear the busy signal.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is available for professional and common area licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify DoNotDisturb Settings for a Workspace", "operationId": "Modify DoNotDisturb Settings for a Workspace", "description": "Modify DoNotDisturb Settings for a Workspace.\n\nSilence incoming calls with the Do Not Disturb feature.\nWhen enabled, callers hear the busy signal.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional and common area licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "ringSplashEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceDoNotDisturbPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/callBridge": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallBridgeGet" }, "example": { "warningToneEnabled": 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": "Retrieve Call Bridge Warning Tone Settings for a Workspace", "operationId": "Retrieve Call Bridge Warning Tone Settings for a Workspace", "description": "Retrieve Call Bridge Warning Tone Settings for a Workspace.\n\nCall Bridge Warning Tone, when enabled, ensures that users hear a warning tone when other users bridge into an active call on the same shared line appearance.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with `spark:workspaces_read` scope can be used to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Call Bridge Warning Tone Settings for a Workspace", "operationId": "Modify Call Bridge Warning Tone Settings for a Workspace", "description": "Modify Call Bridge Warning Tone Settings for a Workspace.\n\nCall Bridge Warning Tone, when enabled, ensures that users hear a warning tone when other users bridge into an active call on the same shared line appearance.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "warningToneEnabled": false }, "schema": { "$ref": "#/components/schemas/CallBridgePatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/pushToTalk": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PushToTalkInfo" }, "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "location": { "name": "Paragville", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhjOWZkMjg1LTY1MDAtNDUxOC04NTZlLWViODM2YzY3NjFkOA" }, "numbers": [ { "external": "+19845551088", "extension": "1088", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE", "lastName": "Johnson", "firstName": "Bob", "displayName": "Bob Johnson", "type": "PEOPLE", "email": "bob@example.com", "numbers": [ { "external": "+198455501099", "extension": "1099", "primary": true } ] } ] } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Push-to-Talk Settings for a Workspace", "operationId": "Read Push-to-Talk Settings for a Workspace", "description": "Retrieve Push-to-Talk settings for a workspace.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people/workspaces in different parts of your organization.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` scope can be used to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Push-to-Talk Settings for a Workspace", "operationId": "Configure Push-to-Talk Settings for a Workspace", "description": "Configure Push-to-Talk settings for a workspace.\n\nPush-to-Talk allows the use of desk phones as either a one-way or two-way intercom that connects people/workspaces in different parts of your organization.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "allowAutoAnswer": true, "connectionType": "ONE_WAY", "accessType": "ALLOW_MEMBERS", "members": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTQzMzhkNS02YTdjLTRiZjYtOTFiMS0zYmM2ZWMzMGJiMTE" ] }, "schema": { "$ref": "#/components/schemas/PushToTalkPut" } } } } } }, "/telephony/config/workspaces/{workspaceId}/privacy": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrivacyGet" }, "example": { "aaExtensionDialingEnabled": true, "aaNamingDialingEnabled": true, "enablePhoneStatusDirectoryPrivacy": true, "enablePhoneStatusPickupBargeInPrivacy": true, "monitoringAgents": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "lastName": "Little", "firstName": "Alice", "displayName": "Alice Little", "type": "PEOPLE", "email": "alice@example.com", "numbers": [ { "external": "+19845551088", "extension": "1088", "routingPrefix": "1234", "esn": "12341088", "primary": true } ] }, { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMGMxYmFlNi1iMDU4LTRkYzItYmMyZC01NDYwOTFlOTkwOTk", "lastName": "Doe", "firstName": "John", "displayName": "John Doe", "type": "PEOPLE", "email": "johnDoe@gmail.com", "numbers": [ { "extension": "25789", "esn": "25789", "primary": 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": "Retrieve Privacy Settings for a Workspace", "operationId": "Retrieve Privacy Settings for a Workspace", "description": "Retrieve Privacy Settings for a Workspace.\n\nThe privacy feature enables the Workspaces line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` scope to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Privacy Settings for a Workspace", "operationId": "Modify Privacy Settings for a Workspace", "description": "Modify Privacy Settings for a Workspace.\n\nThe privacy feature enables the Workspaces line to be monitored by others and determine if they can be reached by Auto Attendant services.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "aaExtensionDialingEnabled": true, "aaNamingDialingEnabled": true, "enablePhoneStatusDirectoryPrivacy": true, "enablePhoneStatusPickupBargeInPrivacy": true, "monitoringAgents": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kMWQyY2JmNy1jMTY5LTVlZDMtY2QzZS03NTcxMDJmMDAxMDA=", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMmUzZGNnOC1kMjcwLTZmZTQtZGU0Zi04NjgyMTNnMTEyMTE=" ] }, "schema": { "$ref": "#/components/schemas/PrivacyPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/voicemail": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoicemailInfo" }, "example": { "enabled": true, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": false }, "sendUnansweredCalls": { "enabled": false, "greeting": "DEFAULT", "greetingUploaded": true, "numberOfRings": 3, "systemMaxNumberOfRings": 20 }, "notifications": { "enabled": true, "destination": "julie@example.com" }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@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": "Read Voicemail Settings for a Workspace", "operationId": "Read Voicemail Settings for a Workspace", "description": "Retrieve a workspace Voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. Voicemail audio is sent in Waveform Audio File Format, `.wav`, format.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` scope can be used to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Voicemail Settings for a Workspace", "operationId": "Configure Voicemail Settings for a Workspace", "description": "Configure a workspace Voicemail settings.\n\nThe voicemail feature transfers callers to voicemail based on your settings. You can then retrieve voice messages via Voicemail. Voicemail audio is sent in Waveform Audio File Format, `.wav`, format.\n\nOptionally, notifications can be sent to a mobile phone via text or email. These notifications will not include the voicemail files.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "notifications": { "enabled": true, "destination": "julie@example.com" }, "sendAllCalls": { "enabled": true }, "sendBusyCalls": { "enabled": false, "greeting": "DEFAULT" }, "sendUnansweredCalls": { "enabled": false, "greeting": "CUSTOM", "numberOfRings": 3 }, "transferToNumber": { "enabled": false }, "emailCopyOfMessage": { "enabled": false, "emailId": "julie@example.com" } }, "schema": { "$ref": "#/components/schemas/VoicemailPut" } } } } } }, "/telephony/config/workspaces/{placeId}/voicemail/passcode": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Voicemail Passcode for a Workspace", "operationId": "Modify Voicemail Passcode for a Workspace", "description": "Modify voicemail passcode for a workspace.\n\nModifying the voicemail passcode for a workspace requires a full administrator, device administrator or location administrator auth token with a scope of `spark-admin:telephony_config_write`.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "placeId", "in": "path", "description": "Modify voicemail passcode for this workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzU2ZGIyNGQzLTdhN2EtNDBhMi05YWM5LWIyMzMyNzc5MjFO77+9", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "Modify voicemail passcode for a workspace in this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "passcode": "1551234" }, "schema": { "$ref": "#/components/schemas/ModifyVoicemailPasscode" } } } } } }, "/telephony/config/workspaces/{workspaceId}/sequentialRing/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "phoneNumbers": [ "+442071838750", "+442071839751" ], "ringEnabled": 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": "Retrieve Sequential Ring Criteria for a Workspace", "operationId": "Retrieve Sequential Ring Criteria for a Workspace", "description": "Retrieve sequential ring criteria for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\nThe sequential ring criteria specify settings such as schedule and incoming numbers for which to sequentially ring or not.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Sequential Ring Criteria for a Workspace", "operationId": "Modify Sequential Ring Criteria for a Workspace", "description": "Modify sequential ring criteria for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\nThe sequential ring criteria specify settings such as schedule and incoming numbers for which to sequentially ring or not.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "phoneNumbers": [ "+442071838750", "+442071839751" ], "ringEnabled": true }, "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaPatch" } } } } }, "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 Sequential Ring Criteria for a Workspace", "operationId": "Delete Sequential Ring Criteria for a Workspace", "description": "Delete sequential ring criteria for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\nThe sequential ring criteria specify settings such as schedule and incoming numbers for which to sequentially ring or not.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/callPolicies": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCallPoliciesGet" }, "example": { "connectedLineIdPrivacyOnRedirectedCalls": "" } } } }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Read Call Policy Settings for a Workspace", "operationId": "Read Call Policy Settings for a Workspace", "description": "Retrieve a workspace Call Policies settings.\n\nThe call policy feature enables administrator to configure call policy settings such as Connected Line Identification Privacy on Redirected Calls for a professional workspace.\n\nThis API requires a full or read-only administrator or location administrator auth token with a scope of `spark-admin:workspaces_read` scope can be used to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Call Policy Settings for a Workspace", "operationId": "Configure Call Policy Settings for a Workspace", "description": "Configure a workspace Call Policies settings.\n\nThe call policy feature enables administrator to configure call policy settings such as Connected Line Identification Privacy on Redirected Calls for a professional workspace.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "connectedLineIdPrivacyOnRedirectedCalls": "" }, "schema": { "$ref": "#/components/schemas/UserCallPoliciesPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/voicemail/actions/uploadBusyGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure Busy Voicemail Greeting for a Place", "operationId": "Configure Busy Voicemail Greeting for a Place", "description": "Configure a workspace's Busy Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/voicemail/actions/uploadNoAnswerGreeting/invoke": { "post": { "responses": { "201": { "description": "Created", "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": "Configure No Answer Voicemail Greeting for a Place", "operationId": "Configure No Answer Voicemail Greeting for a Place", "description": "Configure a workspace's No Answer Voicemail Greeting by uploading a Waveform Audio File Format, `.wav`, encoded audio file.\n\nYour request will need to be a `multipart/form-data` request rather than JSON, using the `audio/wav` Content-Type.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/sequentialRing/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Sequential Ring Criteria for a Workspace", "operationId": "Create Sequential Ring Criteria for a Workspace", "description": "Create sequential ring criteria for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\nThe sequential ring criteria specify settings such as schedule and incoming numbers for which to sequentially ring or not.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "phoneNumbers": [ "+442071838750", "+442071839751" ], "ringEnabled": true }, "schema": { "$ref": "#/components/schemas/SequentialRingCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/sequentialRing": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SequentialRingGet" }, "example": { "enabled": true, "ringBaseLocationFirstEnabled": true, "baseLocationNumberOfRings": "2", "continueIfBaseLocationIsBusyEnabled": true, "callsToVoicemailEnabled": true, "phoneNumbers": [ { "phoneNumber": "+442071838750", "answerConfirmationRequiredEnabled": true, "numberOfRings": 3 } ], "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "ringEnabled": 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": "Retrieve Sequential Ring Settings for a Workspace", "operationId": "Retrieve Sequential Ring Settings for a Workspace", "description": "Retrieve sequential ring settings for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Sequential Ring Settings for a Workspace", "operationId": "Modify Sequential Ring Settings for a Workspace", "description": "Modify sequential ring settings for a workspace.\n\nThe sequential ring feature enables you to create a list of up to five phone numbers. When the workspace receives incoming calls, these numbers will ring one after another.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": true, "ringBaseLocationFirstEnabled": true, "baseLocationNumberOfRings": "2", "continueIfBaseLocationIsBusyEnabled": true, "callsToVoicemailEnabled": true, "phoneNumbers": [ { "phoneNumber": "+442071838750", "answerConfirmationRequiredEnabled": true, "numberOfRings": 3 } ] }, "schema": { "$ref": "#/components/schemas/SequentialRingPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/simultaneousRing": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SimultaneousRingGet" }, "example": { "enabled": true, "doNotRingIfOnCallEnabled": true, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationRequiredEnabled": true }, { "phoneNumber": "+19186663950", "answerConfirmationRequiredEnabled": false } ], "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "ringEnabled": true } ], "criteriasEnabled": 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": "Retrieve Simultaneous Ring Settings for a Workspace", "operationId": "Retrieve Simultaneous Ring Settings for a Workspace", "description": "Retrieve Simultaneous Ring Settings for a Workspace.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously.\nSchedules can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Simultaneous Ring Settings for a Workspace", "operationId": "Modify Simultaneous Ring Settings for a Workspace", "description": "Modify Simultaneous Ring Settings for a Workspace.\n\nThe Simultaneous Ring feature allows you to configure the workspace phones of your choice to ring simultaneously.\nSchedules can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "doNotRingIfOnCallEnabled": false, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationRequiredEnabled": false } ], "criteriasEnabled": false }, "schema": { "$ref": "#/components/schemas/SimultaneousRingPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/simultaneousRing/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceSimultaneousRingCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "ringEnabled": 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": "Retrieve Simultaneous Ring Criteria for a Workspace", "operationId": "Retrieve Simultaneous Ring Criteria for a Workspace", "description": "Retrieve Simultaneous Ring Criteria Settings for a Workspace.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously.\nSimultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Simultaneous Ring Criteria for a Workspace", "operationId": "Modify Simultaneous Ring Criteria for a Workspace", "description": "Modify Simultaneous Ring Criteria Settings for a Workspace.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously.\nSimultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "ringEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSimultaneousRingCriteriaPatch" } } } } }, "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 Simultaneous Ring Criteria for a Workspace", "operationId": "Delete Simultaneous Ring Criteria for a Workspace", "description": "Delete simultaneous ring criteria Settings for a workspace.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously.\nSimultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/simultaneousRing/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Simultaneous Ring Criteria for a Workspace", "operationId": "Create Simultaneous Ring Criteria for a Workspace", "description": "Create Simultaneous Ring Criteria Settings for a Workspace.\n\nThe Simultaneous Ring feature allows you to configure your office phone and other phones of your choice to ring simultaneously.\nSimultaneous Ring Criteria (Schedules) can also be set up to ring these phones during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "ringEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSimultaneousRingCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveReject": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveRejectCallGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "rejectEnabled": 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": "Retrieve Selective Reject Settings for a Workspace", "operationId": "Retrieve Selective Reject Settings for a Workspace", "description": "Retrieve Selective Reject Settings for a Workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Reject Settings for a Workspace", "operationId": "Modify Selective Reject Settings for a Workspace", "description": "Modify Selective Reject Settings for a Workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveRejectCallSettingPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveReject/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceSelectiveRejectCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "rejectEnabled": 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": "Retrieve Selective Reject Criteria for a Workspace", "operationId": "Retrieve Selective Reject Criteria for a Workspace", "description": "Retrieve Selective Reject Criteria Settings for a Workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Reject Criteria for a Workspace", "operationId": "Modify Selective Reject Criteria for a Workspace", "description": "Modify Selective Reject Criteria Settings for a Workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "rejectEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveRejectCallCriteriaPatch" } } } } }, "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 Selective Reject Criteria for a Workspace", "operationId": "Delete Selective Reject Criteria for a Workspace", "description": "Delete Selective Reject criteria Settings for a workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/selectiveReject/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Selective Reject Criteria for a Workspace", "operationId": "Create Selective Reject Criteria for a Workspace", "description": "Create Selective Reject Criteria Settings for a Workspace.\n\nWith the Selective Reject feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "rejectEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveRejectCallCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/numbers": { "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "description": "Service Unavailable: Server is overloaded with requests. Try again later." }, "504": { "description": "Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it." } }, "summary": "Assign or Unassign numbers associated with a specific workspace", "operationId": "Assign or Unassign numbers associated with a specific workspace", "description": "Assign or unassign alternate phone numbers associated with a specific workspace.\n\nEach location has a set of phone numbers that can be assigned to people, workspaces, or features. Phone numbers must follow the E.164 format for all countries, except for the United States, which can also follow the National format. Active phone numbers are in service.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserNumbersPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveAccept": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "acceptEnabled": 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": "Retrieve Selective Accept Settings for a Workspace", "operationId": "Retrieve Selective Accept Settings for a Workspace", "description": "Retrieve Selective Accept Settings for a Workspace.\n\nWith the Selective Accept feature, you can accept calls at specific times from specific callers.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Accept Settings for a Workspace", "operationId": "Modify Selective Accept Settings for a Workspace", "description": "Modify Selective Accept Settings for a Workspace.\n\nWith the Selective Accept feature, you can accept calls at specific times from specific callers.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveAcceptCallSettingPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveAccept/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceSelectiveAcceptCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "acceptEnabled": 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": "Retrieve Selective Accept Criteria for a Workspace", "operationId": "Retrieve Selective Accept Criteria for a Workspace", "description": "Retrieve Selective Accept Criteria Settings for a Workspace.\n\nWith the Selective Accept feature, you can accept calls at specific times from specific callers.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Accept Criteria for a Workspace", "operationId": "Modify Selective Accept Criteria for a Workspace", "description": "Modify Selective Accept Criteria Settings for a Workspace.\n\nWith the Selective Accept feature, you can accept calls at specific times from specific callers\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "acceptEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveAcceptCallCriteriaPatch" } } } } }, "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 Selective Accept Criteria for a Workspace", "operationId": "Delete Selective Accept Criteria for a Workspace", "description": "Delete Selective Accept criteria Settings for a workspace.\n\nWith the Selective Accept feature, you can accept calls at specific times from specific callers.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/selectiveAccept/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Selective Accept Criteria for a Workspace", "operationId": "Create Selective Accept Criteria for a Workspace", "description": "Create Selective Accept Criteria Settings for a Workspace.\n\nWith the Selective Accept feature, you can reject calls at specific times from specific callers. This setting takes precedence over Selectively Accept Calls.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "acceptEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveAcceptCallCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/priorityAlert": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PriorityAlertGet" }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "notificationEnabled": 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": "Retrieve Priority Alert Settings for a Workspace", "operationId": "Retrieve Priority Alert Settings for a Workspace", "description": "Retrieve Priority Alert Settings for a Workspace.\n\nThe priority alert feature enables administrators to configure priority alert settings for a professional workspace.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Configure Priority Alert Settings for a Workspace", "operationId": "Configure Priority Alert Settings for a Workspace", "description": "Configure a workspace Priority Alert Settings.\n\nThe priority alert feature enables administrator to configure priority alert settings for a professional workspace.\n\nThis API requires a full or user administrator or location administrator auth token with the `spark-admin:workspaces_write` scope that can be used to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization in which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false }, "schema": { "$ref": "#/components/schemas/PriorityAlertPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/priorityAlert/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlacePriorityAlertCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "Holidays", "scheduleLevel": "GROUP", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "notificationEnabled": 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": "Retrieve Priority Alert Criteria for a Workspace", "operationId": "Retrieve Priority Alert Criteria for a Workspace", "description": "Retrieve Priority Alert Criteria Settings for a Workspace.\n\nThe priority alert feature enables administrators to configure priority alert settings for a professional workspace.\nPriority Alert Criteria (Schedules) can also be set up to alert these phones during certain times of the day or days of the week.\n\nThis API requires a full, user, or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Priority Alert Criteria for a Workspace", "operationId": "Modify Priority Alert Criteria for a Workspace", "description": "Modify Priority Alert Criteria Settings for a Workspace.\n\nThe priority alert feature enables administrators to configure priority alert settings for a professional workspace.\nPriority Alert Criteria (Schedules) can also be set up to alert these phones during certain times of the day or days of the week.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "Holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "notificationEnabled": false }, "schema": { "$ref": "#/components/schemas/PlacePriorityAlertCriteriaPatch" } } } } }, "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 Priority Alert Criteria for a Workspace", "operationId": "Delete Priority Alert Criteria for a Workspace", "description": "Delete Priority Alert criteria Settings for a workspace.\n\nThe priority alert feature enables administrators to configure priority alert settings for a professional workspace.\nPriority Alert Criteria (Schedules) can also be set up to alert these phones during certain times of the day or days of the week.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/priorityAlert/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Priority Alert Criteria for a Workspace", "operationId": "Create Priority Alert Criteria for a Workspace", "description": "Create Priority Alert Criteria Settings for a Workspace.\n\nThe priority alert feature enables administrators to configure priority alert settings for a professional workspace.\nPriority Alert Criteria (Schedules) can also be set up to alert these phones during certain times of the day or days of the week.\n\nThis API requires a full, user, or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "scheduleName": "Business Vacation YearEnd", "scheduleType": "Holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19064441748", "+19186663950" ], "notificationEnabled": false }, "schema": { "$ref": "#/components/schemas/PlacePriorityAlertCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveForward": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SelectiveForwardCallGet" }, "example": { "enabled": true, "defaultPhoneNumberToForward": "+1934898988", "ringReminderEnabled": true, "destinationVoicemailEnabled": false, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "source": "ALL_NUMBERS", "forwardEnabled": 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": "Retrieve Selective Forward Settings for a Workspace", "operationId": "Retrieve Selective Forward Settings for a Workspace", "description": "Retrieve Selective Forward Call Settings for a Workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Forward Settings for a Workspace", "operationId": "Modify Selective Forward Settings for a Workspace", "description": "Modify Selective Forward Call Settings for a Workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "enabled": false, "defaultPhoneNumberToForward": "+1934898988", "ringReminderEnabled": false, "destinationVoicemailEnabled": false }, "schema": { "$ref": "#/components/schemas/SelectiveForwardCallSettingPatch" } } } } } }, "/telephony/config/workspaces/{workspaceId}/selectiveForward/criteria/{id}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlaceSelectiveForwardCallCriteriaGet" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "forwardToPhoneNumber": "+1934898988", "sendToVoicemailEnabled": true, "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "ANY_PHONE_NUMBER", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "numbers": [ "+19075552859", "+19186663950" ], "forwardEnabled": 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": "Retrieve Selective Forward Criteria for a Workspace", "operationId": "Retrieve Selective Forward Criteria for a Workspace", "description": "Retrieve Selective Forward Criteria Settings for a Workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, read-only or location administrator auth token with a scope of `spark-admin:workspaces_read` or a user auth token with a scope of `spark:workspaces_read` to read workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] }, "put": { "responses": { "204": { "description": "No Content", "headers": {}, "content": {} }, "400": { "description": "Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further." }, "401": { "description": "Unauthorized: Authentication credentials were missing or incorrect." }, "403": { "description": "Forbidden: The request is understood, but it has been refused or access is not allowed." }, "404": { "description": "Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method." }, "405": { "description": "Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported." }, "409": { "description": "Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once." }, "410": { "description": "Gone: The requested resource is no longer available." }, "415": { "description": "Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported." }, "423": { "description": "Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again." }, "428": { "description": "Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded." }, "429": { "description": "Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made." }, "500": { "description": "Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support)." }, "502": { "description": "Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later." }, "503": { "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": "Modify Selective Forward Criteria for a Workspace", "operationId": "Modify Selective Forward Criteria for a Workspace", "description": "Modify Selective Forward Call Criteria Settings for a Workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "forwardToPhoneNumber": "+1934898988", "destinationVoicemailEnabled": true, "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "numbers": [ "+19064441748", "+19186663950" ], "forwardEnabled": false }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveForwardCallCriteriaPatch" } } } } }, "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 Selective Forward Criteria for a Workspace", "operationId": "Delete Selective Forward Criteria for a Workspace", "description": "Delete Selective Forward Call criteria Settings for a workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Unique identifier for the criteria.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ] } }, "/telephony/config/workspaces/{workspaceId}/selectiveForward/criteria": { "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the newly created criteria." } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ" } } } }, "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 Selective Forward Criteria for a Workspace", "operationId": "Create Selective Forward Criteria for a Workspace", "description": "Create Selective Forward Call Criteria Settings for a Workspace.\n\nWith the Selective Forward feature, you can forward calls at specific times from specific callers. This setting takes precedence over call forwarding.\nSchedules can also be set up for this feature during certain times of the day or days of the week.\n\nThis API requires a full, user or location administrator auth token with the `spark-admin:workspaces_write` scope or a user auth token with a scope of `spark:workspaces_write` to update workspace settings.\n\n**NOTE**: This API is only available for professional licensed workspaces.", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "ID of the organization within which the workspace resides. Only admin users of another organization (such as partners) may use this parameter as the default is the same organization as the token used to access the API.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "forwardToPhoneNumber": "+1934898988", "destinationVoicemailEnabled": true, "scheduleName": "Business Vacation YearEnd", "scheduleType": "holidays", "scheduleLevel": "GROUP", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "numbers": [ "+19064441748", "+19186663950" ], "forwardEnabled": true }, "schema": { "$ref": "#/components/schemas/PlaceSelectiveForwardCallCriteriaPost" } } } } } }, "/telephony/config/workspaces/{workspaceId}/faxMessage/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceFaxMessageAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Workspace Fax Message Available Phone Numbers", "operationId": "Get Workspace Fax Message Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a workspace's FAX message number.\nThese numbers are associated with the location of the workspace specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n
Only available for workspaces with the professional license entitlement.
", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/telephony/config/workspaces/{workspaceId}/secondary/availableNumbers": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceSecondaryAvailableNumberListGetObject" }, "example": { "phoneNumbers": [ { "phoneNumber": "+12056350001", "state": "ACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350002", "state": "ACTIVE", "isMainNumber": true, "telephonyType": "PSTN_NUMBER", "isServiceNumber": false }, { "phoneNumber": "+12056350003", "state": "INACTIVE", "isMainNumber": false, "telephonyType": "PSTN_NUMBER", "isServiceNumber": 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 Workspace Secondary Available Phone Numbers", "operationId": "Get Workspace Secondary Available Phone Numbers", "description": "List standard numbers that are available to be assigned as a workspace's secondary number.\nThese numbers are associated with the location of the workspace specified in the request URL, can be active or inactive, and are unassigned.\n\nThe available numbers APIs help identify candidate numbers and their owning entities to simplify the assignment or association of these numbers to members or features.\n\nRetrieving this list requires a full, read-only or location administrator auth token with a scope of `spark-admin:telephony_config_read`.\n\n
Only available for workspaces with the professional license entitlement.
", "tags": [ "Workspace Call Settings (2/2)" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "Unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "schema": { "type": "string" } }, { "name": "orgId", "in": "query", "description": "List numbers for this organization.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Limit the number of phone numbers returned to this maximum count. The default is 2000.", "example": "5", "schema": { "type": "number" } }, { "name": "start", "in": "query", "description": "Start at the zero-based offset in the list of matching phone numbers. The default is 0.", "example": "0", "schema": { "type": "number" } }, { "name": "phoneNumber", "in": "query", "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array.", "example": "+12056852221,+12056852222", "schema": { "type": "array", "items": { "type": "string", "example": "+12056852221,+12056852222" }, "description": "Filter phone numbers based on the comma-separated list provided in the `phoneNumber` array." } } ] } }, "/workspaces": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkspaceCollectionResponse" }, "example": { "items": [ { "id": "Y2lzY28zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "Y2lzY29z...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "displayName": "SFO-12 Capanina", "capacity": 5, "type": "notSet", "sipAddress": "test_workspace_1@trialorg.room.ciscospark.com", "created": "2016-04-21T17:00:00.000Z", "calling": { "type": "hybridCalling", "hybridCalling": { "emailAddress": "workspace@example.com" }, "webexCalling": { "licenses": [ "Y2lzY29g4..." ] } }, "notes": "this is a note", "hotdeskingStatus": "on", "supportedDevices": "collaborationDevices", "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com" }, "deviceHostedMeetings": { "enabled": true, "siteUrl": "'example.webex.com'" }, "devicePlatform": "cisco", "indoorNavigation": {}, "health": { "level": "error", "issues": [ { "id": "", "createdAt": "", "title": "", "description": "", "recommendedAction": "", "level": { "Members": "error" } } ] }, "devices": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag, Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org, another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "cisco" } ], "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 } }, "plannedMaintenance": { "mode": "upcoming", "startTime": "2026-10-01T00:00:00.000Z", "endTime": "2026-10-02T00:00:00.000Z", "description": "Scheduled maintenance for the workspace." }, "customAttributes": { "myKey": { "value": "123456789", "type": "external_id" } } } ] } } } }, "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 Workspaces", "operationId": "listWorkspaces", "description": "List workspaces.\n\nUse query parameters to filter the response. The `orgId` parameter can only be used by admin users of another organization (such as partners). The `locationId`, `workspaceLocationId`, `indoorNavigation`, `floorId`, `capacity` and `type` fields will only be present for workspaces that have a value set for them. The special values `notSet` (for filtering on category) and `-1` (for filtering on capacity) can be used to filter for workspaces without a type and/or capacity.", "tags": [ "Workspaces" ], "parameters": [ { "name": "orgId", "in": "query", "description": "List workspaces in this organization. Only admin users of another organization (such as partners) may use this parameter.", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "schema": { "type": "string" } }, { "name": "locationId", "in": "query", "description": "Location associated with the workspace. Values must originate from the /locations API and not the legacy /workspaceLocations API.", "example": "YL34GrT...", "schema": { "type": "string" } }, { "name": "workspaceLocationId", "in": "query", "description": "Location associated with the workspace. Both values from the /locations API and the legacy /workspaceLocations API are supported. This field is deprecated and integrations should prefer `locationId` going forward.", "example": "YL34GrT...", "schema": { "type": "string" } }, { "name": "floorId", "in": "query", "description": "Floor associated with the workspace.", "example": "Y2lzY29z...", "schema": { "type": "string" } }, { "name": "displayName", "in": "query", "description": "List workspaces by display name.", "example": "SFO-12 Capanina", "schema": { "type": "string" } }, { "name": "capacity", "in": "query", "description": "List workspaces with the given capacity. Must be -1 or higher. A value of -1 lists workspaces with no capacity set.", "example": 5, "schema": { "type": "number" } }, { "name": "type", "in": "query", "description": "List workspaces by type.", "example": "focus", "schema": { "type": "string", "enum": [ "notSet", "focus", "huddle", "meetingRoom", "open", "desk", "other" ] } }, { "name": "start", "in": "query", "description": "Offset. Default is 0.", "example": 50, "schema": { "type": "number" } }, { "name": "max", "in": "query", "description": "Limit the maximum number of workspaces in the response.", "example": 100, "schema": { "type": "number" } }, { "name": "calling", "in": "query", "description": "List workspaces by calling type.", "example": "freeCalling", "schema": { "type": "string", "enum": [ "freeCalling", "hybridCalling", "webexCalling", "webexEdgeForDevices", "thirdPartySipCalling", "none" ] } }, { "name": "supportedDevices", "in": "query", "description": "List workspaces by supported devices.", "example": "collaborationDevices", "schema": { "type": "string", "enum": [ "collaborationDevices", "phones" ] } }, { "name": "calendar", "in": "query", "description": "List workspaces by calendar type.", "example": "none", "schema": { "type": "string", "enum": [ "none", "google", "microsoft" ] } }, { "name": "deviceHostedMeetingsEnabled", "in": "query", "description": "List workspaces enabled for device hosted meetings.", "example": true, "schema": { "type": "boolean" } }, { "name": "devicePlatform", "in": "query", "description": "List workspaces by device platform.", "example": "cisco", "schema": { "type": "string", "enum": [ "cisco", "microsoftTeamsRoom" ] } }, { "name": "healthLevel", "in": "query", "description": "List workspaces by health level.", "example": "error", "schema": { "type": "string", "enum": [ "error", "warning", "info", "ok" ] } }, { "name": "includeDevices", "in": "query", "description": "Flag identifying whether to include the devices associated with the workspace in the response.", "example": false, "schema": { "type": "boolean" } }, { "name": "includeCapabilities", "in": "query", "description": "Flag identifying whether to include the workspace capabilities in the response.", "example": false, "schema": { "type": "boolean" } }, { "name": "plannedMaintenance", "in": "query", "description": "List workspaces with given maintenance mode.", "example": "off", "schema": { "type": "string", "enum": [ "off", "on", "upcoming" ] } }, { "name": "customAttribute", "in": "query", "description": "List workspaces with given custom attribute key.", "example": "myKey", "schema": { "type": "string" } } ] }, "post": { "responses": { "201": { "description": "Created", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Workspace" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "YL34GrT...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "displayName": "SFO-12 Capanina", "capacity": 5, "sipAddress": "test_workspace_1@trialorg.room.ciscospark.com", "created": "2016-04-21T17:00:00.000Z", "calling": { "type": "webexCalling", "webexCalling": { "licenses": [ "Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvMmQzMzIyZDItYTAzNS00YmEzLWI3ZjYtNDc1ODM3Y2UzOTVhOkJDQ0FfNDZlM2YxYWQtZGJhYi00YmQ0LTg3YTAtOWExZmVhNzMxN2Jm" ] } }, "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com" }, "notes": "this is a note", "supportedDevices": "collaborationDevices", "indoorNavigation": { "url": "https://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 a Workspace", "operationId": "createWorkspace", "description": "Create a workspace.\n\nThe `locationId`, `workspaceLocationId`, `floorId`, `indoorNavigation`, `capacity`, `type`, `notes` and `hotdeskingStatus` parameters are optional, and omitting them will result in the creation of a workspace without these values set, or set to their default. A `locationId` must be provided when the `floorId` is set. Calendar and calling can also be set for a new workspace. Omitting them will default to free calling and no calendaring. The `orgId` parameter can only be used by admin users of another organization (such as partners).\n\n* Information for Webex Calling fields may be found here: [locations](/docs/api/v1/locations/list-locations), [available numbers](/docs/api/v1/numbers/get-phone-numbers-for-an-organization-with-given-criterias) and [licenses](/docs/api/v1/licenses).\n\n* The `locationId` and `supportedDevices` fields cannot be changed once configured.\n\n* When creating a `webexCalling` workspace that is not hot desk only, a `locationId` and either a `phoneNumber` or `extension` or both is required. Furthermore, it is possible to set the `licenses` field with a list of Webex Calling license IDs, if desired. If multiple license IDs are provided, the oldest suitable one will be applied. If no licenses are supplied, the oldest suitable one from the active subscriptions will be automaticaly applied.\n\n* When creating a hot desk only workspace, `phoneNumber` and `extension` fields are not applicable. Furthermore, `deviceHostedMeetingsEnabled`, and `calendar` services are not applicable. If any of these fields are provided the API will return an error. The `calling` type is `webexCalling`.", "tags": [ "Workspaces" ], "parameters": [], "requestBody": { "content": { "application/json": { "example": { "displayName": "SFO-12 Capanina", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "YL34GrT...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "capacity": 5, "type": "notSet", "calling": { "type": "webexCalling", "webexCalling": { "phoneNumber": "+12145654032", "extension": "28278", "locationId": "Y2lzY29g4...", "licenses": [ "Y2lzY29g4...1,Y2lzY29g4...2,Y2lzY29g4...n" ] } }, "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com", "resourceGroupId": "Y2lzY29zcGFyazovL3VybjpURUFNOk5vcndheS9SRVNPVVJDRV9HUk9VUC9jOGFiMDJhNC01NjI5LTRiNTctOGUyNy03ZDZkZjJlN2YzNzA=" }, "notes": "this is a note", "hotdeskingStatus": "on", "deviceHostedMeetings": { "enabled": true, "siteUrl": "'example.webex.com'" }, "supportedDevices": "collaborationDevices", "indoorNavigation": {} }, "schema": { "$ref": "#/components/schemas/WorkspaceCreationRequest" } } } } } }, "/workspaces/{workspaceId}": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Workspace" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "Y2lzY29...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "displayName": "SFO-12 Capanina", "capacity": 5, "type": "notSet", "sipAddress": "test_workspace_1@trialorg.room.ciscospark.com", "created": "2016-04-21T17:00:00.000Z", "calling": { "type": "hybridCalling", "hybridCalling": { "emailAddress": "workspace@example.com" }, "webexCalling": { "licenses": [ "Y2lzY29g4..." ] } }, "notes": "this is a note", "hotdeskingStatus": "on", "supportedDevices": "collaborationDevices", "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com" }, "deviceHostedMeetings": { "enabled": true, "siteUrl": "'example.webex.com'" }, "devicePlatform": "cisco", "indoorNavigation": {}, "health": { "level": "error", "issues": [ { "id": "", "createdAt": "", "title": "", "description": "", "recommendedAction": "", "level": { "Members": "error" } } ] }, "devices": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "displayName": "SFO12-3-PanHandle", "placeId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "workspaceId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "capabilities": [ "xapi" ], "permissions": [ "xapi:readonly" ], "connectionStatus": "connected", "product": "Cisco Webex DX80", "type": "roomdesk", "tags": [ "First Tag, Second Tag" ], "ip": "100.110.120.130", "activeInterface": "wired", "mac": "11:22:33:44:AA:FF", "primarySipUrl": "sample_device@sample_workspacename.orgname.org", "sipUrls": [ "sample_device@sample_workspacename.orgname.org, another_device@sample_workspacename.orgname.org" ], "serial": "FOC1923NVVN", "software": "RoomOS 2018-06-01 608dcdbb6e1", "upgradeChannel": "beta", "created": "2016-04-21T17:00:00.000Z", "locationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "workspaceLocationId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "errorCodes": [ "sipprofileregistration" ], "firstSeen": "2021-02-24T09:08:38.822Z", "lastSeen": "2023-08-15T14:04:00.444Z", "managedBy": "CISCO", "devicePlatform": "cisco" } ], "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 } } } } } }, "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 Workspace Details", "operationId": "getWorkspaceDetails", "description": "Shows details for a workspace, by ID.\n\nThe `locationId`, `workspaceLocationId`, `floorId`, `indoorNavigation`, `capacity`, `type` and `notes` fields will only be present if they have been set for the workspace. Specify the workspace ID in the `workspaceId` parameter in the URI.", "tags": [ "Workspaces" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "A unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "schema": { "type": "string" } }, { "name": "includeDevices", "in": "query", "description": "Flag identifying whether to include the devices associated with the workspace in the response.", "example": false, "schema": { "type": "boolean" } }, { "name": "includeCapabilities", "in": "query", "description": "Flag identifying whether to include the workspace capabilities in the response.", "example": false, "schema": { "type": "boolean" } } ] }, "put": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Workspace" }, "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "orgId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xZWI2NWZkZi05NjQzLTQxN2YtOTk3NC1hZDcyY2FlMGUxMGY", "locationId": "YL34GrT...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "displayName": "SFO-12 Capanina", "capacity": 5, "sipAddress": "test_workspace_1@trialorg.room.ciscospark.com", "created": "2016-04-21T17:00:00.000Z", "calling": { "type": "webexCalling", "webexCalling": { "licenses": [ "Y2lzY29z..." ] } }, "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com" }, "notes": "this is a note", "supportedDevices": "collaborationDevices", "devicePlatform": "cisco", "indoorNavigation": { "url": "https://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 a Workspace", "operationId": "updateWorkspace", "description": "Updates details for a workspace by ID.\n\nSpecify the workspace ID in the `workspaceId` parameter in the URI. Include all details for the workspace that are present in a [GET request for the workspace details](/docs/api/v1/workspaces/get-workspace-details). Not including the optional `capacity`, `type` or `notes` fields will result in the fields no longer being defined for the workspace. A `locationId` must be provided when the `floorId` is set. The `locationId`, `workspaceLocationId`, `floorId`, `supportedDevices`, `calendar` and `calling` fields do not change when omitted from the update request.\n\n* Information for Webex Calling fields may be found here: [locations](/docs/api/v1/locations/list-locations) and [available numbers](/docs/api/v1/numbers/get-phone-numbers-for-an-organization-with-given-criterias).\n\n* Updating the `calling` parameter is only supported if the existing `calling` type is `freeCalling`, `none`, `thirdPartySipCalling` or `webexCalling`.\n\n* Updating the `calling` parameter to `none`, `thirdPartySipCalling` or `webexCalling` is not supported if the workspace contains any devices.\n\n* The `locationId` and `supportedDevices` fields cannot be changed once configured.\n\n* When updating `webexCalling` information on a workspace that is not hot desk only, a `locationId` and either a `phoneNumber` or `extension` or both is required. Furthermore, the `licenses` field can be set with a list of Webex Calling license IDs, if desired. If multiple license IDs are provided, the oldest suitable one will be applied. If a previously applied license ID is omitted, it will be replaced with one from the list provided. If the `licenses` field is omitted, the current calling license will be retained.\n\n* When specifying a hot desk only license on a hot desk only workspace, `deviceHostedMeetingsEnabled`, and `calendar` services are not supported and will be automatically disabled. In addition to this, the `phoneNumber` and `extension` will be removed from the workspace. Attempting to enable any of these services, or provide a `phoneNumber` or `extension` will result in an error. The `calling` type for these requests is `webexCalling`.", "tags": [ "Workspaces" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "A unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "example": { "displayName": "SFO-12 Capanina", "locationId": "YL34GrT...", "workspaceLocationId": "YL34GrT...", "floorId": "Y2lzY29z...", "capacity": 5, "type": "focus", "calendar": { "type": "microsoft", "emailAddress": "workspace@example.com", "resourceGroupId": "Y2lzY29zcGFyazovL3VybjpURUFNOk5vcndheS9SRVNPVVJDRV9HUk9VUC9jOGFiMDJhNC01NjI5LTRiNTctOGUyNy03ZDZkZjJlN2YzNzA=" }, "calling": { "type": "webexCalling", "webexCalling": { "phoneNumber": "+12145654032", "extension": "28278", "locationId": "Y2lzY29g4...", "licenses": [ "Y2lzY29g4...1,Y2lzY29g4...2,Y2lzY29g4...n" ] } }, "notes": "this is a note", "hotdeskingStatus": "on", "deviceHostedMeetings": { "enabled": true, "siteUrl": "'example.webex.com'" }, "indoorNavigation": {} }, "schema": { "$ref": "#/components/schemas/WorkspaceUpdateRequest" } } } } }, "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 Workspace", "operationId": "deleteWorkspace", "description": "Deletes a workspace by ID.\n\nAlso deletes all devices associated with the workspace. Any deleted devices will need to be reactivated. Specify the workspace ID in the `workspaceId` parameter in the URI.", "tags": [ "Workspaces" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "A unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "schema": { "type": "string" } } ] } }, "/workspaces/{workspaceId}/capabilities": { "get": { "responses": { "200": { "description": "OK", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CapabilityResponse" }, "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 } } } } } }, "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 Workspace Capabilities", "operationId": "getWorkspaceCapabilities", "description": "Shows the capabilities for a workspace by ID.\n\nReturns a set of capabilities, including whether or not the capability is supported by any device in the workspace, and if the capability is configured (enabled). For example for a specific capability like `occupancyDetection`, the API will return if the capability is supported and/or configured such that occupancy detection data will flow from the workspace (device) to the cloud. Specify the workspace ID in the `workspaceId` parameter in the URI.", "tags": [ "Workspaces" ], "parameters": [ { "name": "workspaceId", "in": "path", "description": "A unique identifier for the workspace.", "required": true, "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFUy81MTAxQjA3Qi00RjhGLTRFRjctQjU2NS1EQjE5QzdCNzIzRjc", "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": [ "totalMoves", "moved", "failed", "pending", "skipped" ], "properties": { "totalMoves": { "type": "number", "example": 100, "description": "Total number of user moves requested." }, "moved": { "type": "number", "example": 50, "description": "Total number of user moves completed successfully." }, "failed": { "type": "number", "example": 50, "description": "Total number of user moves that were completed with failures." }, "pending": { "type": "number", "example": 50, "description": "Total number of user moves that were pending with number orders." }, "skipped": { "type": "number", "example": 50, "description": "Total number of user moves that were skipped." } } }, "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/JobDetailsResponse" }, "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" ], "description": " * `PEOPLE` - Indicates the associated member is a person.\n * `PLACE` - Indicates the associated member is a workspace.\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", "example": "managenumbers", "description": "Job name." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "description": "Unique identifier of the job." }, "jobType": { "type": "string", "example": "managenumbers", "description": "Job type." }, "trackingId": { "type": "string", "example": "ATLAS_06a92f81-244d-4fd2-b8db-121bc1eeb6c8_11", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "example": 238972, "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", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "operationType": { "type": "string", "example": "MOVE", "description": "The operation type that was carried out." }, "sourceLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E2MmRlOWRkLWRmODEtNDg3My04MGY5LTY2MmYyZmM3ZTI2NQ", "description": "Unique location identifier for which the job was run." }, "targetLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "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", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2J6QjJlRGd6Ym1GeU5rQm1iR1Y0TWk1amFYTmpieTVqYjIw", "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", "example": "Christian", "description": "First name of device owner." }, "lastName": { "type": "string", "example": "Smith", "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": [ "DEVICE", "APPLICATION" ], "description": " * `DEVICE` - The endpoint is a device.\n * `APPLICATION` - The endpoint is a application.\n" }, "jobIdResponseObject": { "type": "object", "required": [ "name", "id", "jobType", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "operationType", "sourceLocationId", "targetLocationId", "counts" ], "properties": { "name": { "type": "string", "example": "managenumbers", "description": "Job name." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "description": "Unique identifier of the job." }, "jobType": { "type": "string", "example": "managenumbers", "description": "Job type." }, "trackingId": { "type": "string", "example": "ATLAS_06a92f81-244d-4fd2-b8db-121bc1eeb6c8_11", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "example": 238972, "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", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "operationType": { "type": "string", "example": "MOVE", "description": "The operation type that was carried out." }, "sourceLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E2MmRlOWRkLWRmODEtNDg3My04MGY5LTY2MmYyZmM3ZTI2NQ", "description": "Unique location identifier for which the job was run." }, "targetLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "description": "Unique location identifier 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": [ "ADD", "DELETE" ], "description": " * `ADD` - Add action.\n * `DELETE` - Delete action.\n" }, "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` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has been completed.\n * `FAILED` - Job has failed.\n" }, "JobExecutionStatusObject": { "type": "object", "required": [ "id", "lastUpdated", "statusMessage", "createdTime", "timeElapsed" ], "properties": { "id": { "type": "number", "example": 735206, "description": "Unique identifier that identifies each instance of the job." }, "startTime": { "type": "string", "example": "2023-05-30T13:04:00.469Z", "description": "The date and time with seconds, the job has started in UTC format." }, "endTime": { "type": "string", "example": "2023-05-30T13:04:03.245Z", "description": "The date and time with seconds, the job has ended in UTC format." }, "lastUpdated": { "type": "string", "example": "2023-05-30T13:04:03.574Z", "description": "The date and time with seconds, the job has last updated in UTC format post one of the step execution completion." }, "statusMessage": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Displays status for overall steps that are part of the job.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "exitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "description": "Exit Code for a job.\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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "createdTime": { "type": "string", "example": "2023-05-30T13:04:00.457Z", "description": "The date and time with seconds, the job has created in UTC format." }, "timeElapsed": { "type": "string", "example": "PT2.752S", "description": "Time lapsed in seconds 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", "lastUpdated", "statusMessage", "createdTime", "timeElapsed" ], "properties": { "id": { "type": "number", "example": 239748, "description": "Unique identifier that identifies each instance of the job." }, "lastUpdated": { "type": "string", "example": "2022-08-24T06:18:38.825Z", "description": "Last updated time (in UTC format) post one of the step execution completion." }, "statusMessage": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Displays status for overall steps that are part of the job.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "exitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "description": "Exit Code for a job.\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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "createdTime": { "type": "string", "example": "2022-08-24T06:18:31.070Z", "description": "Job creation time in UTC format." }, "timeElapsed": { "type": "string", "example": "PT7.22S", "description": "Time lapsed since the job execution started." } } }, "stepExecutionStatusesObject": { "type": "object", "required": [ "id", "lastUpdated", "statusMessage", "name", "timeElapsed" ], "properties": { "id": { "type": "number", "example": 3624681, "description": "Unique identifier that identifies each step in a job." }, "startTime": { "type": "string", "example": "2023-05-30T13:04:00.469Z", "description": "The date and time with seconds, the step execution has started in UTC format." }, "endTime": { "type": "string", "example": "2023-05-30T13:04:03.245Z", "description": "The date and time with seconds, the step execution has ended in UTC format." }, "lastUpdated": { "type": "string", "example": "2023-05-30T13:04:03.574Z", "description": "The date and time with seconds, the step has last updated in UTC format." }, "statusMessage": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Displays status for a step.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "exitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "description": "Exit Code for a step.\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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "name": { "type": "string", "example": "moveusersvalidateAndMove", "description": "Step name." }, "timeElapsed": { "type": "string", "example": "PT2.752S", "description": "Time lapsed in seconds since the job 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", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ItemObject" } } } }, "ItemObject": { "type": "object", "properties": { "item": { "type": "string", "description": "Phone number" }, "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", "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. For a move operation, this is the target location ID." } } }, "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": [ "id", "model", "primaryOwner", "type", "owner", "activationState", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "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", "example": "DMS Cisco 6871", "description": "Identifier for device model." }, "mac": { "type": "string", "example": "123451234502", "description": "MAC 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." }, "owner": { "$ref": "#/components/schemas/deviceOwner", "description": "Owner of the device." }, "activationState": { "$ref": "#/components/schemas/DeviceActivationStates", "description": "Activation state of a device." }, "location": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location associated with virtual line." }, "name": { "type": "string", "example": "Main Location Test", "description": "Name of location associated with virtual line." } }, "description": "Location details of virtual line." } } }, "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", "required": [ "created" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9ERVZJQ0UvNTEwMUIwN0ItNEY4Ri00RUY3LUI1NjUtREIxOUM3QjcyM0Y3", "description": "A unique identifier for the device." }, "displayName": { "type": "string", "example": "SFO12-3-PanHandle", "description": "A friendly name for the device." }, "placeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The `placeId` field has been deprecated. Please use `workspaceId` instead." }, "workspaceId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The workspace associated with the device." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83MTZlOWQxYy1jYTQ0LTRmZWQtOGZjYS05ZGY0YjRmNDE3ZjU", "description": "The person associated with the device." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The organization associated with the device." }, "capabilities": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceCapabilities" }, "description": "The capabilities of the device.", "example": [ "xapi" ] }, "permissions": { "type": "array", "items": { "$ref": "#/components/schemas/DevicePermissions" }, "description": "The permissions the user has for this device. For example, `xapi` means this user is entitled to using the `xapi` against this device.", "example": [ "xapi:readonly", "xapi:all" ] }, "connectionStatus": { "$ref": "#/components/schemas/DeviceConnectionStatus" }, "product": { "type": "string", "example": "Cisco Webex DX80", "description": "The product name. A display friendly version of the device's `model`." }, "type": { "type": "string", "example": "roomdesk", "description": "The product type." }, "tags": { "type": "array", "items": { "type": "string", "example": "First Tag, Second Tag" }, "description": "Tags assigned to the device.", "example": [ "First Tag", "Second Tag" ] }, "ip": { "type": "string", "example": "100.110.120.130", "description": "The current IP address of the device." }, "activeInterface": { "$ref": "#/components/schemas/NetworkConnectivityType" }, "mac": { "type": "string", "example": "11:22:33:44:AA:FF", "description": "The unique address for the network adapter." }, "primarySipUrl": { "type": "string", "example": "sample_device@sample_workspacename.orgname.org", "description": "The primary SIP address to dial this device." }, "sipUrls": { "example": [ "sample_device@sample_workspacename.orgname.org", "another_device@sample_workspacename.orgname.org" ], "type": "array", "items": { "type": "string", "example": "sample_device@sample_workspacename.orgname.org, another_device@sample_workspacename.orgname.org" }, "description": "All SIP addresses to dial this device." }, "serial": { "type": "string", "example": "FOC1923NVVN", "description": "Serial number for the device." }, "software": { "type": "string", "example": "RoomOS 2018-06-01 608dcdbb6e1", "description": "The operating system name data and version tag." }, "upgradeChannel": { "type": "string", "example": "beta", "description": "The upgrade channel the device is assigned to." }, "created": { "type": "string", "example": "2016-04-21T17:00:00.000Z", "description": "The date and time that the device was registered, in ISO8601 format." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The location associated with the device." }, "workspaceLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "The workspace location associated with the device. Deprecated, prefer `locationId`." }, "errorCodes": { "example": [ "sipprofileregistration" ], "type": "array", "items": { "type": "string", "example": "sipprofileregistration" }, "description": "Error codes coming from the device." }, "firstSeen": { "type": "string", "example": "2021-02-24T09:08:38.822Z", "description": "Timestamp of the first time device sent a status post." }, "lastSeen": { "type": "string", "example": "2023-08-15T14:04:00.444Z", "description": "Timestamp of the last time device sent a status post." }, "managedBy": { "$ref": "#/components/schemas/ManagedBy" }, "devicePlatform": { "$ref": "#/components/schemas/DevicePlatform" }, "plannedMaintenance": { "type": "object", "description": "The planned maintenance for the device.", "properties": { "mode": { "type": "string", "enum": [ "off", "on", "upcoming" ], "description": "The planned maintenance mode for the device" } } } } }, "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", "description": "Details of the location for the assigned assistant.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg", "name": "Bangalore" }, "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "Bangalore", "description": "Name of the location." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg", "description": "Unique identifier of 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": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL1dPUktTUEFDRV9MT0NBVElPTl9GTE9PUi83NDhkZDNmMS1iYmE5LTQxMDItODk5NC00M2IyOTM2MzNlNjY", "description": "Unique identifier for the floor." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "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": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL1dPUktTUEFDRV9MT0NBVElPTl9GTE9PUi83NDhkZDNmMS1iYmE5LTQxMDItODk5NC00M2IyOTM2MzNlNj", "description": "Unique identifier for the floor." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4NjczZDIwLWM0M2EtNDQ5Ni1iYWIxLTNiMjhhZGJjMjViYQ", "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", "description": "Recording details", "required": [ "id", "topic", "createTime", "timeRecorded", "format", "serviceType", "durationSeconds", "sizeBytes", "status", "ownerId", "ownerEmail", "ownerType", "storageRegion" ], "properties": { "id": { "type": "string", "example": "4f914b1dfe3c4d11a61730f18c0f5387", "description": "A unique identifier for the recording." }, "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." }, "format": { "type": "string", "enum": [ "MP3" ], "description": " * `MP3` - Recording file format is MP3.\n" }, "serviceType": { "type": "string", "enum": [ "calling", "customerAssist" ], "description": " * `calling` - Recording service type is Webex Call.\n * `customerAssist` - Call Recordings of a Customer Assist Queue.\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." }, "status": { "type": "string", "enum": [ "available", "deleted" ], "description": " * `available` - Recording is available.\n * `deleted` - Recording has been moved into recycle bin.\n" }, "ownerId": { "type": "string", "example": "24683d6c-5529-4b60-a6c7-91e8b293bbab", "description": "Webex UUID for recording owner/host." }, "ownerEmail": { "type": "string", "example": "nshtestwebex+crctestuser1@gmail.com", "description": "Webex email for recording owner/host." }, "ownerType": { "type": "string", "enum": [ "user", "place", "virtualLine", "callQueue" ], "description": " * `user` - Recording belongs to a user.\n * `place` - Recording belongs to a workspace device.\n * `virtualLine` - Recording belongs to a workspace device.\n" }, "storageRegion": { "type": "string", "example": "United States", "description": "Storage location for recording within Webex datacenters." }, "serviceData": { "type": "object", "properties": { "locationId": { "type": "string", "description": "Webex calling location for recording user." }, "callSessionId": { "type": "string", "description": "Call ID for which recording was done." } }, "description": "Fields relevant to each service Type." } } }, "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", "description": "Recording details by ID", "required": [ "id", "topic", "createTime", "timeRecorded", "format", "serviceType", "durationSeconds", "sizeBytes", "status", "ownerId", "ownerEmail", "ownerType", "storageRegion" ], "properties": { "id": { "type": "string", "example": "7ee40776779243b4b3da448d941b34dc", "description": "A unique identifier for recording." }, "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." }, "format": { "type": "string", "enum": [ "MP3" ], "description": " * `MP3` - Recording file format is MP3.\n" }, "serviceType": { "type": "string", "enum": [ "calling", "customerAssist" ], "description": " * `calling` - Recording service-type is calling.\n * `customerAssist` - Call Recordings of a Customer Assist Queue.\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." }, "temporaryDirectDownloadLinks": { "type": "object", "properties": { "audioDownloadLink": { "type": "string", "description": "The download link for recording audio file without HTML page rendering in browser or HTTP redirect. 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. Expires 3 hours after the API request." }, "suggestedNotesDownloadLink": { "type": "string", "description": "The download API for recording notes. The user access token is required to download the recording notes. Expires 3 hours after the API request." }, "shortNotesDownloadLink": { "type": "string", "description": "The download API for recording short notes. The user access token is required to download the recording short notes. Expires 3 hours after the API request." }, "actionItemsDownloadLink": { "type": "string", "description": "The download API for recording action items. The user access token is required to download the recording action items. Expires 3 hours after the API request." }, "expiration": { "type": "string", "description": "The date and time when `recordingDownloadLink`, `audioDownloadLink`, `transcriptDownloadLink`, `suggestedNotesDownloadLink`, `shortNotesDownloadLink` and `actionItemsDownloadLink` expire in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format." } }, "description": "The download links for the MP3 audio of the recordings without rendering an HTML page in a browser or an HTTP redirect. This attribute is available only for authorized users or a [Compliance Officer](/docs/compliance#compliance). This attribute is not available if the user is an admin with scope `spark-admin:recordings_read` or if **Prevent Downloading** has been turned on for the recording being requested." }, "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" }, "ownerId": { "type": "string", "example": "24683d6c-5529-4b60-a6c7-91e8b293bbab", "description": "Webex UUID for recording owner/host." }, "ownerEmail": { "type": "string", "example": "nshtestwebex+crctestuser1@gmail.com", "description": "Webex email for recording owner/host." }, "ownerType": { "type": "string", "enum": [ "user", "place", "virtualLine", "callQueue" ], "description": " * `user` - Recording belongs to a user.\n * `place` - Recording belongs to a workspace device.\n * `virtualLine` - Recording belongs to a workspace device.\n" }, "storageRegion": { "type": "string", "example": "United States", "description": "Storage location for recording within Webex datacenters." }, "serviceData": { "type": "object", "properties": { "locationId": { "type": "string", "description": "Webex calling location for recording user." }, "callSessionId": { "type": "string", "description": "Call ID for which recording was done." } }, "description": "Fields relevant to each service Type." } } }, "DeleteRecordingObject": { "type": "object", "description": "Delete Recording details", "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": { "description": "Bulk Soft Delete Recording details", "type": "object", "properties": { "trashAll": { "type": "boolean", "description": "If not specified or `false`, moves the recordings specified by `recordingIds` to the recycle bin. If `true`, moves all recordings owned by the caller in case of `user`, and all recordings owned by `ownerEmail` in case of `administrator` to the recycle bin." }, "ownerEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the recording owner. This parameter is only used if `trashAll` is set to `true` and the user or application calling the API has the required administrator scope `spark-admin:recordings_write`. The administrator may specify the email of a user from an org they manage and the API will move all the recordings of that user into the recycle bin." }, "recordingIds": { "type": "array", "items": { "type": "string", "example": "81bb582c-e93e-40aa-abf6-962b620f6db4, 81bb582c-e93e-40aa-abf6-962b620f6db5" }, "description": "Recording IDs for moving recordings to the recycle bin in batch." } } }, "BulkRestoreRecordingObject": { "type": "object", "description": "Bulk Restore Recording details", "properties": { "restoreAll": { "type": "boolean", "example": false, "description": "If not specified or `false`, restores the recordings specified by `recordingIds` from the recycle bin. If `true`, restores all recordings owned by the caller in case of `user`, and all recordings owned by `ownerEmail` in case of `administrator` from the recycle bin." }, "ownerEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the recording owner. This parameter is only used if `restoreAll` is set to `true` and the user or application calling the API has the required administrator scope `spark-admin:recordings_write`. The administrator may specify the email of a user from an org they manage and the API will restore all the recordings of that user from the recycle bin." }, "recordingIds": { "type": "array", "items": { "type": "string", "example": "81bb582c-e93e-40aa-abf6-962b620f6db4, 81bb582c-e93e-40aa-abf6-962b620f6db5" }, "description": "Recording IDs for restoring recordings from the recycle bin in batch." } } }, "BulkPurgeRecordingObject": { "type": "object", "description": "Bulk Purge Recording details", "properties": { "purgeAll": { "type": "boolean", "example": false, "description": "If not specified or `false`, purges the recordings specified by `recordingIds` from the recycle bin. If `true`, purges all recordings owned by the caller in case of `user`, and all recordings owned by `ownerEmail` in case of `administrator` from the recycle bin." }, "ownerEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Email address for the recording owner. This parameter is only used if `purgeAll` is set to `true` and the user or application calling the API has the required administrator scope `spark-admin:recordings_write`. The administrator may specify the email of a user from an org they manage and the API will purge all the recordings of that user from the recycle bin." }, "recordingIds": { "type": "array", "items": { "type": "string", "example": "81bb582c-e93e-40aa-abf6-962b620f6db4, 81bb582c-e93e-40aa-abf6-962b620f6db5" }, "description": "Recording IDs for purging recordings from the recycle bin in batch." } } }, "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 } }, "CreateDECTNetwork": { "type": "object", "required": [ "name", "model", "defaultAccessCodeEnabled", "defaultAccessCode" ], "properties": { "name": { "type": "string", "example": "test-dect", "description": "Name of the DECT network. Min and max length supported for the DECT network name are 1 and 40 respectively." }, "displayName": { "type": "string", "example": "test-dect", "description": "Add a default name (11 characters max) to display for all handsets. If left blank, the default name will be an indexed number followed by the DECT network name." }, "model": { "type": "string", "enum": [ "DMS Cisco DBS110", "Cisco DECT 110 Base", "DMS Cisco DBS210", "Cisco DECT 210 Base" ], "description": "Select a device model type depending on the number of base stations and handset lines needed in the DECT network. The corresponding device model display name sometimes called the product name, can also be used to specify the model.\n * `DMS Cisco DBS110` - Model name supporting 1 base station and 30 line ports.\n * `Cisco DECT 110 Base` - Alternate product/display name which also specifies the model `DMS Cisco DBS110`.\n * `DMS Cisco DBS210` - Supports 250 base stations and 1000 line ports.\n * `Cisco DECT 210 Base` - Alternate product/display name which also specifies the model `DMS Cisco DBS210`.\n" }, "defaultAccessCodeEnabled": { "type": "boolean", "example": true, "description": "If set to true, need to provide a default access code that will be shared for all users in this network to pair their lines to the next available handset. Otherwise, each user will get a unique 4-digit access code that will be auto-generated. Note: There is currently no public API to retrieve the auto generated access codes for handsets. Use Control Hub instead." }, "defaultAccessCode": { "type": "string", "example": "1551", "description": "If `defaultAccessCodeEnabled` is set to true, then provide a default access code that needs to be a 4-numeric digit. The access code should be unique to the DECT network for the location." } } }, "AddDECTHandsetBulkRequest": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AddDECTHandset" }, "maxItems": 50, "minItems": 1, "description": "List of handsets that are to be added to the DECT network." } } }, "AddDECTHandsetBulkSuccessResponse": { "type": "object", "required": [ "customDisplayName", "result" ], "properties": { "customDisplayName": { "type": "string", "example": "handsetDisplayName", "description": "The custom display name on the handset." }, "result": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "number", "example": 201, "description": "The status of the add handset request." } }, "description": "The result of the add handset request." } } }, "AddDECTHandsetBulkPartialResponse": { "type": "object", "required": [ "customDisplayName", "result" ], "properties": { "customDisplayName": { "type": "string", "example": "handsetDisplayName", "description": "The custom display name on the handset." }, "result": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "number", "example": 400, "description": "The status of the add handset request. 200 indicates the handset was added successfully." }, "error": { "type": "object", "required": [ "message", "errorCode" ], "properties": { "message": { "type": "string", "example": "[Error 4516] Cannot assign user to device: {0} with line/Port: {1}", "description": "The error message." }, "errorCode": { "type": "number", "example": 4516, "description": "The error code." } }, "description": "The error message if the add handset request failed." } }, "description": "The result of the add handset request." } } }, "BaseStationsPostResponse": { "type": "object", "required": [ "baseStations" ], "properties": { "baseStations": { "type": "array", "items": { "$ref": "#/components/schemas/BaseStationResponse" }, "description": "List of base station MAC addresses that have to be added to the DECT network." } } }, "BaseStationResponse": { "type": "object", "required": [ "mac", "result" ], "properties": { "mac": { "type": "string", "example": "6DDE9EBDE1C9", "description": "MAC Address added to the base station." }, "result": { "$ref": "#/components/schemas/BaseStationPostResult", "description": "Object with base station POST Result." } } }, "BaseStationPostResult": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "number", "example": 201, "description": "HTTP status code indicating the creation of base station. 201 status code indicates the successful creation of base stations." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "description": "Unique identifier of the base station." } } }, "AddDECTHandset": { "type": "object", "required": [ "line1MemberId", "customDisplayName" ], "properties": { "line1MemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the member on line1 of the handset. Members can be PEOPLE or PLACE." }, "line2MemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the member on line2 of the handset. Members can be PEOPLE, PLACE, or VIRTUAL_LINE." }, "customDisplayName": { "type": "string", "example": "handsetDisplayName", "description": "Custom display name on the handset. Min and max length supported for the custom display name is 1 and 16 respectively." } } }, "AvailableMembersResponse": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableMember" } } } }, "AvailableMember": { "type": "object", "required": [ "id", "firstName", "lastName", "lineType", "memberType", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier for the member." }, "firstName": { "type": "string", "example": "John", "description": "First name of the member." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of the member." }, "phoneNumber": { "type": "string", "example": "+12055552221", "description": "Phone Number of the member." }, "extension": { "type": "string", "example": "1234", "description": "Extension of the member." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Line type indicates if the associated line is a primary line or a shared line." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Indicates the type of the member." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object having a unique identifier for the location and its name." } } }, "DECTHandsetGet": { "type": "object", "required": [ "id", "index", "defaultDisplayName", "baseStationId", "mac", "lines" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxTrd", "description": "Unique identifier of the handset." }, "index": { "type": "string", "example": "1", "description": "Index of the handset." }, "customDisplayName": { "type": "string", "example": "Demo_Handset", "description": "Custom display name for the handset." }, "defaultDisplayName": { "type": "string", "example": "Demo_Handset", "description": "Default display name for the handset." }, "baseStationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYzRhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNTNj", "description": "Unique identifier of the associated base station." }, "mac": { "type": "string", "example": "1357D4A1B492", "description": "MAC Address associated with the handset." }, "accessCode": { "type": "string", "example": "4788", "description": "Access code used to pair handsets to the DECT Network for the first time or if a handset becomes disconnected." }, "lines": { "type": "array", "items": { "$ref": "#/components/schemas/lines" }, "description": "Array of lines associated with the handset. Maximum: 2 lines." } } }, "DECTHandsetList": { "type": "object", "required": [ "numberOfHandsetsAssigned", "numberOfLinesAssigned", "handsets" ], "properties": { "numberOfHandsetsAssigned": { "type": "number", "example": 1, "description": "Number of handsets associated." }, "numberOfLinesAssigned": { "type": "number", "example": 1, "description": "Total number of lines assigned." }, "handsets": { "type": "array", "items": { "$ref": "#/components/schemas/DECTHandsetItem" }, "description": "Array of `DECTHandsetItem` objects, each representing a handset with its associated details and lines." } } }, "DECTHandsetItem": { "type": "object", "required": [ "id", "index", "defaultDisplayName", "lines" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz", "description": "Unique identifier of the handset." }, "index": { "type": "string", "example": "1", "description": "Index of the handset." }, "defaultDisplayName": { "type": "string", "example": "Demo_Handset", "description": "Default display name for the handset." }, "customDisplayName": { "type": "string", "example": "Demo_Handset", "description": "Custom display name on the handset." }, "accessCode": { "type": "string", "example": "4788", "description": "Access code is used to pair handsets to the DECT Network for the first time or if a handset becomes disconnected." }, "primaryEnabled": { "type": "boolean", "example": true, "description": "Flags the handset as a primary line if `true`." }, "lines": { "type": "array", "items": { "$ref": "#/components/schemas/lines" }, "description": "Array of lines associated to the handset up to a maximum of 2." } } }, "DECTNetworkHandsetsDeleteItem": { "type": "object", "required": [ "handsetIds" ], "properties": { "handsetIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX0hBTkRTRVQvYjE0MDYyOWUtZTExMy00ODQyLWIxMmMtMDVjODEwYTRjYjIz,Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX1NUQVRJT04vYjVhMTQxN2ItZGNiYi00MGMzLWE3YWQtNTY1MGZkZGRkNQ" }, "description": "Array of the handset IDs to be deleted." }, "deleteAll": { "type": "boolean", "example": true, "description": "If present the items array is ignored and all items in the context are deleted." } } }, "DECTNetworkHandsetPatch": { "type": "object", "required": [ "line1MemberId", "customDisplayName" ], "properties": { "line1MemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMlm", "description": "ID of the member on line1 of the handset. Members can be PEOPLE or PLACE." }, "line2MemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the member on line2 of the handset. Members can be PEOPLE, PLACE, or VIRTUAL_LINE." }, "customDisplayName": { "type": "string", "example": "handsetDisplayName", "description": "Custom display name on the handset." } } }, "lines": { "type": "object", "required": [ "memberId", "firstName", "lastName", "location", "memberType" ], "properties": { "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the member on line1 of the handset. Members can be PEOPLE or PLACE." }, "firstName": { "type": "string", "example": "John", "description": "Line members's first name." }, "lastName": { "type": "string", "example": "Smith", "description": "Line members's last name." }, "external": { "type": "string", "example": "+14088571272", "description": "Line members primary number." }, "extension": { "type": "string", "example": "3459", "description": "Line members extension." }, "lastRegistrationTime": { "type": "string", "example": "1611229671234", "description": "Last registration timestamp." }, "hostIP": { "type": "string", "example": "10.0.0.45", "description": "Registration host IP address for the line port." }, "remoteIP": { "type": "string", "example": "76.102.12.84", "description": "Registration remote IP address for the line port." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object including a unique identifier for the location and its name." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Indicates member type." } } }, "BaseStationsListResponse": { "type": "object", "required": [ "baseStations" ], "properties": { "baseStations": { "type": "array", "items": { "$ref": "#/components/schemas/BaseStationsResponse" }, "description": "List of base stations in a DECT Network." } } }, "BaseStationsResponse": { "type": "object", "required": [ "id", "mac", "numberOfLinesRegistered" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "description": "Unique identifier of the base station." }, "mac": { "type": "string", "example": "ABBD45856978", "description": "Mac address of the DECT base station device." }, "numberOfLinesRegistered": { "type": "number", "example": 2, "description": "Number of handset member lines registered with the base station." } } }, "BaseStationDetailResponse": { "type": "object", "required": [ "id", "mac", "handsets" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "description": "Unique identifier of the base station." }, "mac": { "type": "string", "example": "ABBD45856978", "description": "Mac address of the DECT base station device." }, "handsets": { "type": "array", "items": { "$ref": "#/components/schemas/HandsetsResponse" }, "description": "List of handset and member line details registered with the base station." } } }, "HandsetsResponse": { "type": "object", "required": [ "id", "displayName", "accessCode", "lines" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5RG", "description": "Unique identifier of the DECT handset." }, "displayName": { "type": "string", "example": "Inventory-handset-1", "description": "Display name of the DECT handset." }, "accessCode": { "type": "string", "example": "1558", "description": "Access code for the DECT handset." }, "lines": { "type": "array", "items": { "$ref": "#/components/schemas/DECTHandsetLineResponse" }, "description": "Details of the handset member lines registered with the base station. The maximum number of lines supported is 2." } } }, "DECTHandsetLineResponse": { "type": "object", "required": [ "memberId", "firstName", "lastName", "external", "extension", "location", "memberType" ], "properties": { "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5RG", "description": "Unique identifier of the handset line member." }, "firstName": { "type": "string", "example": "John", "description": "First name of handset line member." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of handset line member." }, "external": { "type": "string", "example": "+12555533333", "description": "Primary number of handset line member." }, "extension": { "type": "string", "example": "1551", "description": "Extension of handset line member." }, "location": { "$ref": "#/components/schemas/location", "description": "Location details of the handset line member." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Indicates handset line member type." } } }, "DECTNetworkList": { "type": "object", "required": [ "dectNetworks" ], "properties": { "dectNetworks": { "type": "array", "items": { "$ref": "#/components/schemas/DECTNetworkDetail" }, "description": "List of DECT networks in an organization." } } }, "DECTNetworkDetail": { "type": "object", "required": [ "id", "name", "chainId", "model", "defaultAccessCodeEnabled", "defaultAccessCode", "numberOfBaseStations", "numberOfHandsetsAssigned", "numberOfLines", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf", "description": "Unique identifier for the DECT network." }, "name": { "type": "string", "example": "Demo-DectNetwork", "description": "Name of the DECT network. This should be unique across the location." }, "displayName": { "type": "string", "example": "Demo-DectNetwork", "description": "DECT network name displayed on the handset." }, "chainId": { "type": "number", "example": 1356802345, "description": "Chain ID of the DECT network." }, "model": { "$ref": "#/components/schemas/BaseStationType", "description": "Base station model deployed in the DECT network." }, "defaultAccessCodeEnabled": { "type": "boolean", "example": true, "description": "Default access code is enabled. If true, the default access code is mandatory. If false, auto-generated access code is used." }, "defaultAccessCode": { "type": "string", "example": "1234", "description": "Default access code for the DECT network. The default access code should be unique within the same location to avoid the handset accidentally registering with base stations from different DECT networks in range. This is mandatory when `defaultAccessCodeEnabled` is true." }, "numberOfBaseStations": { "type": "number", "example": 2, "description": "Number of base stations in the DECT network." }, "numberOfHandsetsAssigned": { "type": "number", "example": 5, "description": "Number of handsets assigned to the DECT network." }, "numberOfLines": { "type": "number", "example": 2, "description": "Number of lines in the DECT network." }, "location": { "$ref": "#/components/schemas/location", "description": "Location of the DECT network." } } }, "BaseStationType": { "type": "string", "enum": [ "DMS Cisco DBS210", "DMS Cisco DBS110" ], "description": " * `DMS Cisco DBS210` - Cisco DBS210 base station model.\n * `DMS Cisco DBS110` - Cisco DBS110 base station model.\n" }, "DECTNetworkPatch": { "type": "object", "required": [ "name", "defaultAccessCodeEnabled", "defaultAccessCode" ], "properties": { "name": { "type": "string", "example": "Demo-DectNetwork", "description": "Name of the DECT network. This should be unique across the location." }, "displayName": { "type": "string", "example": "Demo-DectNetwork", "description": "DECT network name that will be displayed on the handset." }, "defaultAccessCodeEnabled": { "type": "boolean", "example": true, "description": "Default access code is enabled. If true, the default access code is mandatory. If false, an auto-generated access code is used." }, "defaultAccessCode": { "type": "string", "example": "1234", "description": "Default access code for the DECT network. The default access code should be unique within the same location to avoid the handset accidentally registering with base stations from different DECT networks in range. This is mandatory when `defaultAccessCodeEnabled` is true." } } }, "DECTNetworkListPerson": { "type": "object", "properties": { "dectNetworks": { "type": "array", "items": { "$ref": "#/components/schemas/DECTNetworkItem" }, "description": "List of DECT networks associated with the person." } } }, "DECTNetworkListWorkspace": { "type": "object", "properties": { "dectNetworks": { "type": "array", "items": { "$ref": "#/components/schemas/DECTNetworkItem" }, "description": "List of DECT networks associated with the workspace." } } }, "DECTNetworkItem": { "type": "object", "required": [ "id", "name", "numberOfHandsetsAssigned" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFQ1RfREVWX05FVC81NmRiMjRkMy03YTdhLTQwYTItOWFjOS1iMjMzMjc3OTIxNzf", "description": "Unique identifier for the DECT network." }, "name": { "type": "string", "example": "Demo-DectNetwork", "description": "Name of the DECT network. This should be unique across the location." }, "numberOfHandsetsAssigned": { "type": "number", "example": 5, "description": "Number of handsets assigned to the DECT network." } } }, "PostDECTServiceabilityPasswordResponse": { "type": "object", "required": [ "password" ], "properties": { "password": { "type": "string", "example": "?i@9$?F)iR?rHNsu", "description": "16-character serviceability password." } } }, "DECTServiceabilityPassword": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "DECT serviceability password status. When `enabled` is set to `true`, the serviceability password can be used to manage DECT. When `enabled` is set to `false`, the serviceability password is disabled and the password owned and known by Cisco is required to perform serviceability and troubleshooting." } } }, "RejectActionEnum": { "type": "string", "enum": [ "busy", "temporarilyUnavailable", "ignore" ], "description": " * `busy` - Send the call to busy.\n * `temporarilyUnavailable` - Send the call to temporarily unavailable.\n * `ignore` - Ignore the call by continuing ringback to the caller while no longer alerting the called user's devices.\n" }, "Call": { "type": "object", "required": [ "id", "callSessionId", "personality", "state", "remoteParty", "created", "muteCapable", "muted" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTEwvQkNMRC9jYWxsaGFsZi00ODg6MA", "description": "The call identifier of the call." }, "callSessionId": { "type": "string", "example": "MmFmNThiZjktYWE3Ny00NWE5LThiMDEtYzI4NDMxZWYwNzRm", "description": "The call session identifier of the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session." }, "personality": { "allOf": [ { "$ref": "#/components/schemas/CallPersonalityEnum" } ], "description": " The personality of the call." }, "state": { "allOf": [ { "$ref": "#/components/schemas/CallStateEnum" } ], "description": "The current state of the call." }, "remoteParty": { "allOf": [ { "$ref": "#/components/schemas/PartyInformation" } ], "description": "The remote party's details. For example, if user A calls user B then B is the remote party in A's outgoing call details and A is the remote party in B's incoming call details." }, "appearance": { "type": "number", "example": 1, "description": "The appearance value for the call. The appearance value can be used to display the user's calls in an order consistent with the user's devices. Only present when the call has an appearance value assigned." }, "created": { "type": "string", "example": "2016-04-21T17:00:00.000Z", "description": "The date and time the call was created." }, "answered": { "type": "string", "example": "2016-04-21T17:00:00.000Z", "description": "The date and time the call was answered. Only present when the call has been answered." }, "redirections": { "type": "array", "items": { "$ref": "#/components/schemas/RedirectionInformation" }, "description": "The list of details for previous redirections of the incoming call ordered from most recent to least recent. For example, if user B forwards an incoming call to user C, then a redirection entry is present for B's forwarding in C's incoming call details. Only present when there were previous redirections and the incoming call's state is alerting." }, "recall": { "allOf": [ { "$ref": "#/components/schemas/RecallInformation" } ], "description": "The recall details for the incoming call. Only present when the incoming call is for a recall." }, "recordingState": { "allOf": [ { "$ref": "#/components/schemas/RecordingStateEnum" } ], "description": "The call's current recording state. Only present when the user's call recording has been invoked during the life of the call." }, "muteCapable": { "type": "boolean", "description": "Indicates whether the call is capable of using the [mute](/docs/api/v1/call-controls/mute) and [unmute](/docs/api/v1/call-controls/unmute) APIs.​" }, "muted": { "type": "boolean", "description": "Indicates whether the call is currently muted." } }, "example": { "id": "string", "callSessionId": "string", "personality": "originator", "state": "connecting", "remoteParty": { "name": "string", "number": "string", "personId": "string", "placeId": "string", "privacyEnabled": true, "callType": "location" }, "appearance": 1.23, "created": "string", "answered": "string", "redirections": [ { "reason": "busy", "redirectingParty": { "status": "ok", "privacyEnabled": false, "callType": "external" } } ], "recall": { "type": "park", "party": { "status": "ok", "privacyEnabled": false, "callType": "external" } }, "recordingState": "pending", "muteCapable": true, "muted": true } }, "CallPersonalityEnum": { "type": "string", "enum": [ "originator", "terminator", "clickToDial" ], "description": " * `originator` - An outgoing call originated by the user.\n * `terminator` - An incoming call received by the user.\n * `clickToDial` - A call that is alerting the user's devices for a Click to Dial action. When the user answers on one of these alerting devices, the call's personality is updated to originator.\n" }, "CallStateEnum": { "type": "string", "enum": [ "connecting", "alerting", "connected", "held", "remoteHeld", "disconnected" ], "description": " * `connecting` - The remote party is being alerted.\n * `alerting` - The user's devices are alerting for the incoming or Click to Dial call.\n * `connected` - The call is connected.\n * `held` - The user has placed the call on hold.\n * `remoteHeld` - The remote party within the same organization has placed the call on hold.\n * `disconnected` - The call has been disconnected.\n" }, "RecallTypeEnum": { "type": "string", "enum": [ "park" ], "description": " * `park` - The user is being recalled for a call park they initiated.\n" }, "RecallInformation": { "type": "object", "required": [ "type" ], "properties": { "type": { "allOf": [ { "$ref": "#/components/schemas/RecallTypeEnum" } ], "description": "The type of recall the incoming call is for. Park is the only type of recall currently supported but additional values may be added in the future." }, "party": { "allOf": [ { "$ref": "#/components/schemas/PartyInformation" } ], "description": "If the type is park, contains the details of where the call was parked. For example, if user A parks a call against user B and A is recalled for the park, then this field contains B's information in A's incoming call details. Only present when the type is park." } } }, "RecordingStateEnum": { "type": "string", "enum": [ "pending", "started", "paused", "stopped", "failed" ], "description": " * `pending` - Recording has been requested for the call but has not yet started.\n * `started` - Recording is active for the call.\n * `paused` - Recording has been paused for the call.\n * `stopped` - Recording has been stopped for the call.\n * `failed` - Recording failed for the call.\n" }, "PartyInformation": { "type": "object", "required": [ "privacyEnabled", "callType" ], "properties": { "name": { "type": "string", "example": "John Smith", "description": "The party's name. Only present when the name is available and privacy is not enabled." }, "number": { "type": "string", "example": "+12223334444", "description": "The party's number. Only present when the number is available and privacy is not enabled. The number can be digits or a URI. Some examples for number include: `1234`, `2223334444`, `+12223334444`, `*73`, `user@company.domain`" }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "description": "The party's person ID. Only present when the person ID is available and privacy is not enabled." }, "placeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ4MmEyLTRlNjktNTlhYS05ZjJmLWJjYTYzMTAxM2E2OA==", "description": "The party's place ID. Only present when the place ID is available and privacy is not enabled." }, "privacyEnabled": { "type": "boolean", "description": "Indicates whether privacy is enabled for the name, number and personId/placeId." }, "callType": { "allOf": [ { "$ref": "#/components/schemas/CallTypeEnum" } ], "description": "The call type for the party." } } }, "CallTypeEnum": { "type": "string", "enum": [ "location", "organization", "external", "emergency", "repair", "other" ], "description": " * `location` - The party is within the same location.\n * `organization` - The party is within the same organization but not within the same location.\n * `external` - The party is outside the organization.\n * `emergency` - The party is an emergency call destination.\n * `repair` - The party is a repair call destination.\n * `other` - The party does not belong to one of the defined call types. For example, a call to a Call Forwarding Always feature activation code.\n" }, "RedirectionReasonEnum": { "type": "string", "enum": [ "busy", "noAnswer", "unavailable", "unconditional", "timeOfDay", "divert", "followMe", "huntGroup", "callQueue", "unknown" ], "description": " * `busy` - The call was redirected on a busy condition. For example, the call was forwarded by Call Forwarding Busy.\n * `noAnswer` - The call was redirected on a no answer condition. For example, the call was forwarded by Call Forwarding No Answer.\n * `unavailable` - The call was redirected on an unavailable condition. For example, the call was forwarded by Business Continuity.\n * `unconditional` - The call was redirected unconditionally. For example, the call was forwarded by Call Forwarding Always.\n * `timeOfDay` - The call was redirected by a service schedule. For example, the call was forwarded by Selective Call Forwarding.\n * `divert` - The call was redirected by divert action.\n * `followMe` - The call was redirected by a follow me service. For example, the call was redirected by Simultaneous Ring.\n * `huntGroup` - The call was redirected by Hunt Group routing.\n * `callQueue` - The call was redirected by Call Queue routing.\n * `unknown` - The call was redirected on an unknown condition.\n" }, "RedirectionInformation": { "type": "object", "required": [ "reason", "redirectingParty" ], "properties": { "reason": { "allOf": [ { "$ref": "#/components/schemas/RedirectionReasonEnum" } ], "description": "The reason the incoming call was redirected." }, "redirectingParty": { "allOf": [ { "$ref": "#/components/schemas/PartyInformation" } ], "description": "The details of a party who redirected the incoming call." } } }, "CallHistoryRecord": { "type": "object", "required": [ "type", "privacyEnabled", "time" ], "properties": { "type": { "allOf": [ { "$ref": "#/components/schemas/CallHistoryRecordTypeEnum" } ], "description": "The type of call history record." }, "name": { "type": "string", "example": "John Smith", "description": "The name of the called/calling party. Only present when the name is available and privacy is not enabled." }, "number": { "type": "string", "example": "+12225554444", "description": "The number of the called/calling party. Only present when the number is available and privacy is not enabled. The number can be digits or a URI. Some examples for number include: `1234`, `2223334444`, `+12223334444`, `*73`, `user@company.domain`" }, "privacyEnabled": { "type": "boolean", "description": "Indicates whether privacy is enabled for the name and number." }, "time": { "type": "string", "example": "2016-04-21T17:00:00.000Z", "description": "The date and time the call history record was created. For a placed call history record, this is when the call was placed. For a missed call history record, this is when the call was disconnected. For a received call history record, this is when the call was answered." } } }, "CallHistoryRecordTypeEnum": { "type": "string", "enum": [ "placed", "missed", "received" ], "description": " * `placed` - A call history record for an outgoing call placed by the user.\n * `missed` - A call history record for an incoming call to the user that was not answered.\n * `received` - A call history record for an incoming call to the user that was answered.\n" }, "ExternalVoicemailMwiRequest": { "type": "object", "required": [ "action" ], "properties": { "action": { "type": "string", "enum": [ "SET", "CLEAR" ], "description": "Indicates whether to SET or CLEAR the MWI status.", "example": "SET" } } }, "ActionOnRouteList": { "type": "string", "enum": [ "ADD", "DELETE" ], "description": " * `ADD` - Add a phone number to the Route List.\n * `DELETE` - Delete a phone number from the Route List.\n" }, "AppliedServices": { "type": "object", "properties": { "translationPattern": { "$ref": "#/components/schemas/TranslationPattern", "description": "Returns the details of the Translation Pattern if applied." }, "interceptDetails": { "$ref": "#/components/schemas/CallInterceptDetails", "description": "Returns the details of call intercept if applied." }, "outgoingCallingPlanPermissionsByType": { "$ref": "#/components/schemas/OutgoingCallingPlanPermissionsByType", "description": "Returns the details of permissions by type configuration if applied under OCP." }, "outgoingCallingPlanPermissionsByDigitPattern": { "$ref": "#/components/schemas/OutgoingCallingPlanPermissionsByDigitPattern", "description": "Returns the details of the digit pattern configuration if applied under OCP." } } }, "CallInterceptDetails": { "type": "object", "required": [ "configurationLevel", "permission" ], "properties": { "configurationLevel": { "$ref": "#/components/schemas/ConfigurationLevelType", "description": "The level from which the configuration is applied." }, "permission": { "type": "string", "enum": [ "DISALLOW", "TRANSFER" ], "description": "The choices that indicate call intercept permissions.\n * `DISALLOW` - Call intercept is disabled.\n * `TRANSFER` - Call intercept is transferred to a number.\n" }, "transferNumber": { "type": "string", "example": "+14157279300", "description": "The number to which the outgoing permission by type is to be transferred." } } }, "CallSourceInfo": { "type": "object", "required": [ "callSourceType" ], "properties": { "callSourceType": { "$ref": "#/components/schemas/CallSourceType", "description": "Type of call source." }, "routeListName": { "type": "string", "example": "routeList1", "description": "Name of a route list. When `originatorType` is `trunk`, `originatorId` is a valid trunk and the trunk belongs to a route group which is assigned to a route list with the name `routeListA` and also `originatorNumber` is a number assigned to `routeListA`, then `routeListA` is returned here. This element is returned when `callSourceType` is `ROUTE_LIST`." }, "routeListId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvZDA2YWQ5M2QtY2NkOC00MzI1LTg0YzUtMDA2NThhYTdhMDBj", "description": "Unique identifier for the route list." }, "dialPlanName": { "type": "string", "example": "dialPlan1", "description": "Name of a dial plan. When `originatorType` is `trunk`, `originatorId` is a valid trunk with the name `trunkA`, `trunkA` belongs to a route group which is assigned to a route list with the name `routeListA`, `trunkA` is also assigned to `dialPlanA` as routing choice, `dialPlanA` has `dialPattern` xxxx assigned. If the `originatorNumber` matches the `dialPattern` `xxxx`, `dialPlanA` is returned. This element is returned when `callSourceType` is `DIAL_PATTERN`." }, "dialPattern": { "type": "string", "example": "*888", "description": "Pattern given to a dial plan. When `originatorType` is `trunk`, `originatorId` is a valid trunk with the name `trunkA`, `trunkA` belongs to a route group which is assigned to a route list with the name `routeListA`, `trunkA` is also assigned to `dialPlanA` as routing choice, `dialPlanA` has `dialPattern` `xxxx` assigned. If the `originatorNumber` matches the `dialPattern` `xxxx`, `dialPattern` `xxxx` is returned. This element is returned when `callSourceType` is `DIAL_PATTERN`." }, "dialPlanId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for dial plan." } } }, "CallSourceType": { "type": "string", "enum": [ "ROUTE_LIST", "DIAL_PATTERN", "UNKOWN_EXTENSION", "UNKOWN_NUMBER" ], "description": " * `ROUTE_LIST` - Route list is a type of call source.\n * `DIAL_PATTERN` - Dial pattern is a type of call source.\n * `UNKOWN_EXTENSION` - The call source extension is unknown.\n * `UNKOWN_NUMBER` - The call source phone number is unknown.\n" }, "Customer": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE", "description": "ID of the customer/organization." }, "name": { "type": "string", "example": "test_org", "description": "Name of the customer/organization." } } }, "CallDestinationType": { "type": "string", "enum": [ "HOSTED_AGENT", "HOSTED_FEATURE", "PBX_USER", "PSTN_NUMBER", "VIRTUAL_EXTENSION", "VIRTUAL_EXTENSION_RANGE", "ROUTE_LIST", "FAC", "EMERGENCY", "REPAIR", "UNKNOWN_EXTENSION", "UNKNOWN_NUMBER" ], "description": " * `HOSTED_AGENT` - A destination is a person or workspace with details in the `hostedAgent` field.\n * `HOSTED_FEATURE` - Destination is a calling feature like auto-attendant or hunt group with details in the `hostedFeature` field.\n * `PBX_USER` - Destination routes into a separate PBX with details in the `pbxUser` field.\n * `PSTN_NUMBER` - Destination routes into a PSTN phone number with details in the `pstnNumber` field.\n * `VIRTUAL_EXTENSION` - Destination routes into a virtual extension with details in the `virtualExtension` field.\n * `VIRTUAL_EXTENSION_RANGE` - Destination routes into a virtual extension range with details in the `virtualExtensionRange` field.\n * `ROUTE_LIST` - Destination routes into a route list with details in the `routeList` field.\n * `FAC` - Destination routes into a feature access code (FAC) with details in the `featureAccessCode` field.\n * `EMERGENCY` - Destination routes into an emergency service like Red Sky, with details in the `emergency` field.\n * `REPAIR` - The route is in a repair state with routing choice details in the `repair` field.\n * `UNKNOWN_EXTENSION` - Target extension is unknown with routing choice details in the `unknownExtension` field.\n * `UNKNOWN_NUMBER` - The target phone number is unknown with routing choice details in the `unknownNumber` field.\n" }, "CallingPermissionAction": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": " * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "CallingPlanReason": { "type": "string", "enum": [ "FRAUD_CONTAINMENT", "CISCO_CALLING_PLAN", "TRANSFER_NUMBER_1_NOT_CONFIGURED", "TRANSFER_NUMBER_2_NOT_CONFIGURED", "TRANSFER_NUMBER_3_NOT_CONFIGURED", "WEBEX_MOBILE_PREMIUM_INTERNATIONAL_TRANSFER_FORWARD" ], "description": " * `FRAUD_CONTAINMENT` - Calling plan gives the Fraud Containment reason.\n * `CISCO_CALLING_PLAN` - The Cisco calling plan reason.\n * `TRANSFER_NUMBER_1_NOT_CONFIGURED` - The reason if the transfer number 1 is not configured.\n * `TRANSFER_NUMBER_2_NOT_CONFIGURED` - The reason if the transfer number 2 is not configured.\n * `TRANSFER_NUMBER_3_NOT_CONFIGURED` - The reason if the transfer number 3 is not configured.\n * `WEBEX_MOBILE_PREMIUM_INTERNATIONAL_TRANSFER_FORWARD` - The reason for Webex mobile international transfer forward.\n" }, "ConfigurationLevelType": { "type": "string", "enum": [ "LOCATION", "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": " * `LOCATION` - The applied services at the location level.\n * `PEOPLE` - The applied services at the people level.\n * `PLACE` - The applied services at the place level.\n * `VIRTUAL_LINE` - The applied services at the virtual line level.\n" }, "DeviceStatus": { "type": "string", "enum": [ "ONLINE", "OFFLINE", "UNKNOWN" ], "description": " * `ONLINE` - Device is online\n * `OFFLINE` - Device is offline\n * `UNKNOWN` - Unknown. Default\n" }, "DialPattern": { "type": "object", "properties": { "dialPattern": { "type": "string", "example": "+5555", "description": "A unique dial pattern." }, "action": { "$ref": "#/components/schemas/DialPatternAction", "description": "Action to add or delete a pattern." } } }, "DialPatternAction": { "type": "string", "enum": [ "ADD", "DELETE" ], "description": " * `ADD` - Add action, when adding a new dial pattern\n * `DELETE` - Delete action, when deleting an existing dial pattern\n" }, "DialPatternPut": { "type": "object", "properties": { "dialPatterns": { "type": "array", "items": { "$ref": "#/components/schemas/DialPattern" }, "description": "Array of dial patterns to add or delete. Dial Pattern that is not present in the request is not modified." }, "deleteAllDialPatterns": { "type": "boolean", "example": true, "description": "Delete all the dial patterns for a dial plan." } } }, "DialPatternStatus": { "type": "string", "enum": [ "INVALID", "DUPLICATE", "DUPLICATE_IN_LIST" ], "description": " * `INVALID` - Invalid pattern\n * `DUPLICATE` - Duplicate pattern\n * `DUPLICATE_IN_LIST` - Duplicate in input\n" }, "DialPatternValidate": { "type": "object", "properties": { "dialPattern": { "type": "string", "example": "+4555", "description": "Input dial pattern that is being validated." }, "patternStatus": { "$ref": "#/components/schemas/DialPatternStatus", "description": "Validation status." }, "message": { "type": "string", "example": "invalid format for premises dial pattern +4555", "description": "Failure details." } } }, "DialPatternValidateResult": { "type": "object", "properties": { "status": { "$ref": "#/components/schemas/DialPatternValidationStatus", "description": "Overall validation result status." }, "dialPatternStatus": { "type": "array", "items": { "$ref": "#/components/schemas/DialPatternValidate" }, "description": "Patterns validation result." } } }, "DialPatternValidationStatus": { "type": "string", "enum": [ "ERRORS", "OK" ], "description": " * `ERRORS` - In case one or more dial pattern validation failed\n * `OK` - If all the patterns are validated successfully\n" }, "DialPlan": { "type": "object", "required": [ "id", "name", "routeId", "routeName", "routeType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for the dial plan." }, "name": { "type": "string", "example": "dialPlanName", "description": "A unique name for the dial plan." }, "routeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of route type associated with the dial plan." }, "routeName": { "type": "string", "example": "routeName", "description": "Name of route type associated with the dial plan." }, "routeType": { "$ref": "#/components/schemas/RouteType", "description": "Route Type associated with the dial plan." } } }, "DialPlanGet": { "type": "object", "required": [ "id", "name", "routeId", "routeName", "routeType", "customer" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for the dial plan." }, "name": { "type": "string", "example": "dialPlanName", "description": "A unique name for the dial plan." }, "routeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of route type associated with the dial plan." }, "routeName": { "type": "string", "example": "routeName", "description": "Name of route type associated with the dial plan." }, "routeType": { "$ref": "#/components/schemas/RouteType", "description": "Route Type associated with the dial plan." }, "customer": { "$ref": "#/components/schemas/Customer", "description": "Customer information." } } }, "DialPlanPost": { "type": "object", "required": [ "name", "routeId", "routeType" ], "properties": { "name": { "type": "string", "example": "dialPlanName", "description": "A unique name for the dial plan." }, "routeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of route type associated with the dial plan." }, "routeType": { "$ref": "#/components/schemas/RouteType", "description": "Route Type associated with the dial plan." }, "dialPatterns": { "type": "array", "items": { "type": "string", "example": "+5555,+5556" }, "description": "An Array of dial patterns." } } }, "DialPlanPut": { "type": "object", "required": [ "name", "routeId", "routeType" ], "properties": { "name": { "type": "string", "example": "dialPlanName", "description": "A unique name for the dial plan." }, "routeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of route type associated with the dial plan." }, "routeType": { "$ref": "#/components/schemas/RouteType", "description": "Route Type associated with the dial plan." } } }, "DialPlanUsageGetResponse": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for the dial plan." }, "name": { "type": "string", "example": "dialPlanName", "description": "Name of a dial plan." } } }, "Emergency": { "type": "object", "required": [ "isRedSky" ], "properties": { "isRedSky": { "type": "boolean", "example": true, "description": "If `RedSky` is in use." }, "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group that is associated with trunk specified by `trunkId`." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Unique identifier of the location of the trunk; required if `trunkName` is returned." } } }, "FeatureAccessCode": { "type": "object", "description": "Details of a feature access code configured for services that are assigned to the authenticated user.", "example": { "name": "Call Forwarding Busy Interrogation", "code": "*67*", "alternateCode": "*18" }, "required": [ "name", "code" ], "properties": { "name": { "type": "string", "example": "Call Forwarding Busy Interrogation", "description": "Feature Access Code name." }, "code": { "type": "string", "example": "*67*", "description": "Feature Access Code." }, "alternateCode": { "type": "string", "example": "*18", "description": "Alternate Code for the Feature Access Code." } } }, "HostedAgent": { "type": "object", "required": [ "id", "type", "firstName", "lastName", "locationName", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMjU4YjhmZi1lODIxLTQ3MDktYTI2My1mMmI4OWZjN2FlYmQ", "description": "Unique identifier for the person or workspace agent identified as call destination." }, "type": { "$ref": "#/components/schemas/HostedAgentType", "description": "Type of agent for call destination." }, "firstName": { "type": "string", "example": "firstName", "description": "First name for the hosted agent specified by `id`." }, "lastName": { "type": "string", "example": "lastName", "description": "Last name for the hosted agent specified by `id`." }, "locationName": { "type": "string", "example": "locationName", "description": "Name of hosted agent's location." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Unique identifier for hosted agent's location." }, "phoneNumber": { "type": "string", "example": "9874531287", "description": "Phone number for the hosted agent." }, "extension": { "type": "string", "example": "111", "description": "Extension for the hosted agent." } } }, "HostedAgentType": { "type": "string", "enum": [ "PEOPLE", "PLACE" ], "description": " * `PEOPLE` - This object is a person.\n * `PLACE` - A workspace that is not assigned to a specific person such as for a shared device in a common area.\n" }, "HostedFeature": { "type": "object", "required": [ "type", "name", "id", "locationName", "locationId" ], "properties": { "type": { "$ref": "#/components/schemas/ServiceType", "description": "Type of the service identified as call destination." }, "name": { "type": "string", "example": "name1", "description": "Name of the service identified as call destination." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QyRXdhV2R5TVRCamIwQTJORGswTVRJNU55NXBiblF4TUM1aVkyeGtMbmRsWW1WNExtTnZiUT09", "description": "Unique identifier of the service identified as call destination." }, "locationName": { "type": "string", "example": "locationName1", "description": "Name of the location with which the service is associated." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Unique identifier for the location of the service." }, "phoneNumber": { "type": "string", "example": "9874531287", "description": "Phone number of the service." }, "extension": { "type": "string", "example": "111", "description": "Extension of the service." } } }, "LocalGatewayUsageCount": { "type": "object", "required": [ "pstnConnectionCount", "callToExtensionCount", "dialPlanCount", "routeGroupCount" ], "properties": { "pstnConnectionCount": { "type": "number", "example": 1, "description": "The count where the local gateway is used as a PSTN Connection setting." }, "callToExtensionCount": { "type": "number", "example": 1, "description": "The count where the given local gateway is used as call to extension setting." }, "dialPlanCount": { "type": "number", "example": 1, "description": "The count where the given local gateway is used by the dial plan." }, "routeGroupCount": { "type": "number", "example": 1, "description": "The count where the given local gateway is used by the route group." } } }, "LocalGateways": { "type": "object", "required": [ "id", "priority" ], "properties": { "id": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL1RSVU5LLzY1Zjc4YzgxLTcwMTYtNDc0Ny05M2EyLWIxMGVlZjBhMWI1Ng'", "description": "ID of type local gateway." }, "name": { "type": "string", "example": "'localGatewayName'", "description": "Name of the local gateway." }, "locationId": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL1dTV1laMjEyODA2TDIxMjgwNw'", "description": "Location ID to which local gateway belongs." }, "priority": { "type": "number", "example": 1, "description": "Prioritizes local gateways based on these numbers; the lowest number gets the highest priority." } } }, "LocationTranslationPatternGet": { "type": "object", "required": [ "id", "name", "matchingPattern", "replacementPattern" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "description": "Unique identifier for a translation pattern." }, "name": { "type": "string", "example": "CHNHelpDesk", "description": "A name given to a translation pattern for a location." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "A matching pattern given to a translation pattern for a location." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "A replacement pattern given to a translation pattern for a location." } } }, "LocationTranslationPatternCreateRequest": { "type": "object", "required": [ "name", "matchingPattern", "replacementPattern" ], "properties": { "name": { "type": "string", "example": "CHNHelpDesk", "description": "A name given to a translation pattern for a location." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "A matching pattern given to a translation pattern for a location." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "A replacement pattern given to a translation pattern for a location." } } }, "LocationTranslationPatternModifyRequest": { "type": "object", "properties": { "name": { "type": "string", "example": "CHNHelpDesk", "description": "A name given to a translation pattern for a location." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "A matching pattern given to a translation pattern for a location." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "A replacement pattern given to a translation pattern for a location." } } }, "NumberStatus": { "type": "string", "enum": [ "INVALID", "DUPLICATE", "DUPLICATE_IN_LIST", "UNAVAILABLE" ] }, "Organization": { "type": "object", "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "'ATLAS_TEST_LIEM_RL'", "description": "Name of the organization." }, "id": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi80MWQxNDNiYi1hMjEwLTQ5YTQtOGNkZC1hYzc2YzYxMmE0YzM'", "description": "ID of the organization." } } }, "OriginatorType": { "type": "string", "enum": [ "PEOPLE", "TRUNK" ], "description": " * `PEOPLE` - The originator type object is a person.\n * `TRUNK` - Connection between Webex Calling and the premises.\n" }, "OutgoingCallingPlanPermissionsByType": { "type": "object", "required": [ "number" ], "properties": { "configurationLevel": { "$ref": "#/components/schemas/ConfigurationLevelType", "description": "The level from which the configuration is applied." }, "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Designates the action to be taken for each call type and if transferring the call type is allowed.\n * `INTERNAL_CALL` - Controls calls within your own company.\n * `TOLL_FREE` - Controls calls to a telephone number that is billed for all arriving calls instead of incurring charges to the originating caller, usually free of charge from a landline.\n * `INTERNATIONAL` - Controls calls to locations outside of the long-distance areas that require an international calling code before the number is dialed.\n * `OPERATOR_ASSISTED` - Controls calls requiring Operator Assistance.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Controls calls to Directory Assistant companies that require a charge to connect the call.\n * `SPECIAL_SERVICES_I` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `SPECIAL_SERVICES_II` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `PREMIUM_SERVICES_I` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `PREMIUM_SERVICES_II` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `NATIONAL` - Controls calls that are within your country of origin, both within and outside of your local area code.\n" }, "permission": { "$ref": "#/components/schemas/CallingPermissionAction", "description": "Action to be performed on the input number that matches with the OCP." }, "transferNumber": { "type": "string", "example": "+14157279300", "description": "The number to which the outgoing permission by type is to be transferred." }, "reason": { "$ref": "#/components/schemas/CallingPlanReason", "description": "The reason for the result reported for non-standard OCP service." }, "number": { "type": "string", "example": "+14157279300", "description": "A transfer number is present in case it gets transferred to some other number." } } }, "OutgoingCallingPlanPermissionsByDigitPattern": { "type": "object", "required": [ "name", "transferNumber", "pattern", "number" ], "properties": { "configurationLevel": { "$ref": "#/components/schemas/ConfigurationLevelType", "description": "The level from which the configuration is applied." }, "name": { "type": "string", "example": "DPattern", "description": "Name given to a digit pattern." }, "permission": { "$ref": "#/components/schemas/CallingPermissionAction", "description": "Action to be performed on the input number that matches with the digit pattern." }, "transferNumber": { "type": "string", "example": "+14157279300" }, "pattern": { "type": "string", "example": "+91!", "description": "Pattern for the digit pattern." }, "reason": { "$ref": "#/components/schemas/CallingPlanReason", "description": "The reason for the result reported for a non-standard OCP service." }, "number": { "type": "string", "example": "+14157279300", "description": "A transfer number is present in case of a transfer to another number." } } }, "PbxUser": { "type": "object", "required": [ "dialPlanName", "dialPlanId", "dialPattern" ], "properties": { "dialPlanName": { "type": "string", "example": "dialPlan1", "description": "Dial plan name that the called string matches." }, "dialPlanId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for the dial plan." }, "dialPattern": { "type": "string", "example": "442xxx", "description": "Dial pattern that the called string matches." }, "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "PostResponse": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzE4YzFhMGRkLWJhMjctNDkwMS1hNGUxLTBlNWIyNzM1YzlkZg'", "description": "ID of the Route Group." } } }, "PstnNumber": { "type": "object", "properties": { "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "Repair": { "type": "object", "properties": { "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "ResponseId": { "type": "object", "description": "Response object that contains the unique identifier for the created or updated criteria.", "properties": { "id": { "type": "string", "description": "The unique identifier for the criteria." } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0" } }, "ResponseStatus": { "type": "object", "required": [ "code", "type", "summaryEnglish", "detail", "trackingId" ], "properties": { "code": { "type": "number", "example": 25013, "description": "Error Code. 25013 for error retrieving the outbound proxy. 25014 for error retrieving the status" }, "type": { "$ref": "#/components/schemas/ResponseStatusType", "description": "Status type." }, "summaryEnglish": { "type": "string", "example": "CPAPI: Error retrieving outboundproxy.", "description": "Error summary in English." }, "detail": { "type": "array", "items": { "type": "string", "example": "OCI-P GroupOutboundProxyGetRequest: [Error 26088] Cloud PBX Console is not configured properly., OCI-P Error code: [Error 26088] Cloud PBX Console is not configured properly." }, "description": "Error Details." }, "trackingId": { "type": "string", "example": "CPAPI_2da34568-1e72-4196-b613-905ce45ec592_0", "description": "Error Tracking ID." } } }, "ResponseStatusType": { "type": "string", "enum": [ "ERROR", "WARNING" ], "description": " * `ERROR` - Error\n * `WARNING` - Warning\n" }, "RouteGroup": { "type": "object", "required": [ "id", "name", "inUse" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "description": "Route group ID the Route list is associated with." }, "name": { "type": "string", "example": "Route Group 01", "description": "Name of the Route group the Route list associated with." }, "inUse": { "type": "boolean", "example": true, "description": "Flag to indicate if the route group is used." } } }, "RouteGroupGet": { "type": "object", "required": [ "name", "organization", "localGateways" ], "properties": { "name": { "type": "string", "example": "'Route Group One'", "description": "Name of the route group." }, "organization": { "$ref": "#/components/schemas/Organization", "description": "Organization details." }, "localGateways": { "type": "array", "items": { "$ref": "#/components/schemas/LocalGateways" }, "description": "Local Gateways that are part of this Route Group." } } }, "RouteGroupPatch": { "type": "object", "required": [ "name", "localGateways" ], "properties": { "name": { "type": "string", "example": "routeGroupName", "description": "A unique name for the Route Group." }, "localGateways": { "type": "array", "items": { "$ref": "#/components/schemas/LocalGateways" }, "description": "Local Gateways that are part of this Route Group." } } }, "RouteGroupPost": { "type": "object", "required": [ "name", "localGateways" ], "properties": { "name": { "type": "string", "example": "routeGroupName", "description": "A unique name for the Route Group." }, "localGateways": { "type": "array", "items": { "$ref": "#/components/schemas/LocalGateways" }, "description": "Local Gateways that are part of this Route Group." } } }, "RouteGroupUsageGetResponse": { "type": "object", "required": [ "id", "name", "inUse" ], "properties": { "id": { "type": "string", "example": "NTJiZmUxNDAtYjIwMS00NTUzLWI1OGQtMmVkNDU1NTFmYTUy", "description": "UUID of the route group associated with the Trunk." }, "name": { "type": "string", "example": "RouteGroup01", "description": "Name of the Route Group associated with the Trunk." }, "inUse": { "type": "boolean", "example": true, "description": "In use flag." } } }, "RouteGroupUsageRouteListGet": { "type": "object", "properties": { "routeLists": { "type": "array", "items": { "$ref": "#/components/schemas/RouteGroupUsageRouteListItem" }, "description": "List of route lists for this route group." } } }, "RouteGroupUsageRouteListItem": { "type": "object", "required": [ "id", "name", "locationId", "locationName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvOTljNjJkMGQtNmFhYi00NGQ0LWE0ZTctZjk0MjQ4OWVhMWJj", "description": "Route list ID." }, "name": { "type": "string", "example": "routeListName", "description": "Route list name." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2JjNWUwNWFjLTI5ZmEtNGY0NS05MmM1LWUxZTExMDc0OTIwZg", "description": "Location ID for route list." }, "locationName": { "type": "string", "example": "locationName", "description": "Location name for route list." } } }, "RouteList": { "type": "object", "required": [ "id", "name", "routeGroupName", "routeGroupId", "locationName", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvZDA2YWQ5M2QtY2NkOC00MzI1LTg0YzUtMDA2NThhYTdhMDBj", "description": "Unique identifier of the route list." }, "name": { "type": "string", "example": "routeListName1", "description": "Name of the route list." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group the route list is associated with." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group the route list is associated with." }, "locationName": { "type": "string", "example": "locationName1", "description": "Location name of the route list." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the route list." } } }, "RouteListGet": { "type": "object", "required": [ "name", "location" ], "properties": { "name": { "type": "string", "example": "Route List 01", "description": "Route list name." }, "location": { "$ref": "#/components/schemas/Location", "description": "Location associated with the Route List." }, "routeGroup": { "$ref": "#/components/schemas/RouteGroup", "description": "Route group associated with the Route list." } } }, "RouteListListGet": { "type": "object", "required": [ "id", "name", "locationId", "locationName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0xJU1QvOTljNjJkMGQtNmFhYi00NGQ0LWE0ZTctZjk0MjQ4OWVhMWJj", "description": "ID of the Route List." }, "name": { "type": "string", "example": "RouteList Name", "description": "Name of the Route List." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2JjNWUwNWFjLTI5ZmEtNGY0NS05MmM1LWUxZTExMDc0OTIwZg", "description": "Location associated with the Route List." }, "locationName": { "type": "string", "example": "locationName", "description": "Location associated with the Route List." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "description": "ID of the route group associated with Route List." }, "routeGroupName": { "type": "string", "example": "RouteGroup01", "description": "Name of the Route Group associated with Route List." } } }, "RouteListNumberListGet": { "type": "object", "required": [ "numbers" ], "properties": { "numbers": { "type": "array", "items": { "type": "string" }, "description": "Numbers assigned to the Route list." } } }, "RouteListNumberPatch": { "type": "object", "required": [ "number", "action" ], "properties": { "number": { "type": "string", "example": "+2147891122", "description": "Number to be deleted/added." }, "action": { "$ref": "#/components/schemas/ActionOnRouteList", "description": "Possible value, `ADD` or `DELETE`." } } }, "RouteListNumberPatchResponse": { "type": "object", "required": [ "phoneNumber", "numberStatus", "message" ], "properties": { "phoneNumber": { "type": "string", "example": "+2147891122", "description": "Phone Number whose status is being reported." }, "numberStatus": { "$ref": "#/components/schemas/NumberStatus", "description": "Status of the number. Possible values are `INVALID`, `DUPLICATE`, `DUPLICATE_IN_LIST`, or `UNAVAILABLE`." }, "message": { "type": "string", "example": "Invalid Number", "description": "Message of the number add status." } } }, "RouteListPatch": { "type": "object", "properties": { "name": { "type": "string", "example": "New Route List", "description": "Route List new name." }, "routeGroupId": { "type": "string", "example": "NTJiZmUxNDAtYjIwMS00NTUzLWI1OGQtMmVkNDU1NTFmYTUy", "description": "New route group ID." } } }, "RouteListPost": { "type": "object", "required": [ "name", "locationId", "routeGroupId" ], "properties": { "name": { "type": "string", "example": "RouteList01", "description": "Name of the Route List" }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2JjNWUwNWFjLTI5ZmEtNGY0NS05MmM1LWUxZTExMDc0OTIwZg", "description": "Location associated with the Route List." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2ZjN2EzZDU2LTg1OGMtNDVkZC1iZDA1LTE2OWM2NGU1OTRmMQ", "description": "ID of the route group associated with Route List." } } }, "RouteType": { "type": "string", "enum": [ "ROUTE_GROUP", "TRUNK" ], "description": " * `ROUTE_GROUP` - Route group must include at least one trunk with a maximum of 10 trunks per route group.\n * `TRUNK` - Connection between Webex Calling and the premises.\n" }, "ServiceType": { "type": "string", "enum": [ "AUTO_ATTENDANT", "BROADWORKS_ANYWHERE", "CALL_QUEUE", "CONTACT_CENTER_LINK", "GROUP_PAGING", "HUNT_GROUP", "VOICE_MESSAGING", "VOICE_MAIL_GROUP" ], "description": " * `AUTO_ATTENDANT` - The destination is an auto attendant.\n * `BROADWORKS_ANYWHERE` - The destination is the Office (Broadworks) Anywhere feature.\n * `CALL_QUEUE` - The destination is the Call Queue feature.\n * `CONTACT_CENTER_LINK` - The destination is the Contact Center Link feature.\n * `GROUP_PAGING` - The destination is the Group Paging feature.\n * `HUNT_GROUP` - The destination is the Hunt Group feature.\n * `VOICE_MESSAGING` - The destination is the Voice Messaging feature.\n * `VOICE_MAIL_GROUP` - The destination is the Voice Mail Group feature.\n" }, "TestCallRoutingPostResponse": { "type": "object", "required": [ "destinationType", "routingAddress", "isRejected" ], "properties": { "callSourceInfo": { "$ref": "#/components/schemas/CallSourceInfo", "description": "Only returned when `originatorNumber` is specified in the request." }, "destinationType": { "$ref": "#/components/schemas/CallDestinationType", "description": "Destination type for the call." }, "routingAddress": { "type": "string", "example": "007", "description": "FAC code if `destinationType` is FAC. The routing address will be returned for all other destination types." }, "outsideAccessCode": { "type": "string", "example": "1234", "description": "Outside access code." }, "isRejected": { "type": "boolean", "description": "`true` if the call would be rejected." }, "hostedAgent": { "$ref": "#/components/schemas/HostedAgent", "description": "Returned when `destinationType` is `HOSTED_AGENT`." }, "hostedFeature": { "$ref": "#/components/schemas/HostedFeature", "description": "Returned when `destinationType` is `HOSTED_FEATURE`." }, "pbxUser": { "$ref": "#/components/schemas/PbxUser", "description": "Returned when `destinationType` is `PBX_USER`." }, "pstnNumber": { "$ref": "#/components/schemas/PstnNumber", "description": "Returned when `destinationType` is `PSTN_NUMBER`." }, "virtualExtension": { "$ref": "#/components/schemas/VirtualExtension", "description": "Returned when `destinationType` is `VIRTUAL_EXTENSION`." }, "virtualExtensionRange": { "$ref": "#/components/schemas/VirtualExtensionRange", "description": "Returned when `destinationType` is `VIRTUAL_EXTENSION_RANGE`." }, "routeList": { "$ref": "#/components/schemas/RouteList", "description": "Returned when `destinationType` is `ROUTE_LIST`." }, "featureAccessCode": { "$ref": "#/components/schemas/FeatureAccessCode", "description": "Returned when `destinationType` is `FAC`." }, "emergency": { "$ref": "#/components/schemas/Emergency", "description": "Returned when `destinationType` is `EMERGENCY`." }, "repair": { "$ref": "#/components/schemas/Repair", "description": "Returned when `destinationType` is `REPAIR`." }, "unknownExtension": { "$ref": "#/components/schemas/UnknownExtension", "description": "Returned when `destinationType` is `UNKNOWN_EXTENSION`." }, "unknownNumber": { "$ref": "#/components/schemas/UnknownNumber", "description": "Returned when `destinationType` is `UNKNOWN_NUMBER`." }, "appliedServices": { "type": "array", "items": { "$ref": "#/components/schemas/AppliedServices" }, "description": "Returned if any origin is configured with intercept details, outgoing permissions by type, or translation pattern." } } }, "TranslationPattern": { "type": "object", "properties": { "configurationLevel": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "The level from which the configuration is applied.\n * `LOCATION` - The applied services of location level.\n * `ORGANIZATION` - The applied services of the organization level.\n" }, "name": { "type": "string", "example": "TP1", "description": "Name given to a translation pattern." }, "matchingPattern": { "type": "string", "example": "+91XXX", "description": "Matching pattern given to a translation pattern." }, "replacementPattern": { "type": "string", "example": "+91234", "description": "Replacement pattern given to a translation pattern." }, "matchedNumber": { "type": "string", "example": "+91236", "description": "The original called number." }, "translatedNumber": { "type": "string", "example": "+91234", "description": "The modified number after matching against `matchingPattern` and replacing with corresponding `replacementPattern`." } } }, "TranslationPatternGetList": { "type": "object", "required": [ "translationPatterns" ], "properties": { "translationPatterns": { "type": "array", "items": { "$ref": "#/components/schemas/TranslationPatternItem" }, "description": "List of translation pattern information." } } }, "TranslationPatternItem": { "type": "object", "required": [ "id", "name", "matchingPattern", "replacementPattern", "level" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "description": "Unique identifier for a translation pattern." }, "name": { "type": "string", "example": "CHNHelpDesk", "description": "Name given to a translation pattern for an organization." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "Matching pattern given to a translation pattern for an organization." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "Replacement pattern given to a translation pattern for an organization." }, "level": { "type": "string", "example": "Location", "description": "Level at which the translation pattern is created. The level can either be `Organization` or `Location`." }, "location": { "$ref": "#/components/schemas/Location", "description": "Location details for the translation pattern when the level is `Location`." } } }, "TranslationPatternGet": { "type": "object", "required": [ "id", "name", "matchingPattern", "replacementPattern" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJR0lUX1BBVFRFUk5TLzg3NGRjMjM1LTgwNTktNGM4OC05ZjU5LTRiNjdkZDJhZTZjMg", "description": "Unique identifier for a translation pattern." }, "name": { "type": "string", "example": "CHNHelpDesk", "description": "Name given to a translation pattern for an organization." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "Matching pattern given to a translation pattern for an organization." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "Replacement pattern given to a translation pattern for an organization." } } }, "TranslationPatternCreateRequest": { "type": "object", "required": [ "name", "matchingPattern", "replacementPattern" ], "properties": { "name": { "type": "string", "example": "CHNHelpDesk", "description": "Name given to a translation pattern for an organization." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "Matching pattern given to a translation pattern for an organization." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "Replacement pattern given to a translation pattern for an organization." } } }, "TranslationPatternModifyRequest": { "type": "object", "properties": { "name": { "type": "string", "example": "CHNHelpDesk", "description": "Name given to a translation pattern for an organization." }, "matchingPattern": { "type": "string", "example": "+91[2-7]XX21", "description": "Matching pattern given to a translation pattern for an organization." }, "replacementPattern": { "type": "string", "example": "+91352133", "description": "Replacement pattern given to a translation pattern for an organization." } } }, "Trunk": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RJQUxfUExBTi8wNTlhMjczZS1iYmIwLTExZWMtODQyMi0wMjQyYWMxMjAwMDI", "description": "Unique identifier for the trunk." }, "name": { "type": "string", "example": "trunkName", "description": "A unique name for the trunk." }, "location": { "$ref": "#/components/schemas/Location", "description": "Location associated with the trunk." }, "inUse": { "type": "boolean", "example": true, "description": "Trunk in use flag." }, "trunkType": { "$ref": "#/components/schemas/TrunkType", "description": "Trunk Type associated with the trunk." }, "isRestrictedToDedicatedInstance": { "type": "boolean", "example": true, "description": "Flag to indicate if the trunk is restricted to a dedicated instance." } } }, "TrunkFQDNValidatePost": { "type": "object", "properties": { "address": { "type": "string", "example": "lgw1.london", "description": "FQDN or SRV address of the trunk." }, "domain": { "type": "string", "example": "acme.corp", "description": "Domain name of the trunk." }, "port": { "type": "number", "example": 5000, "description": "FQDN port of the trunk." } } }, "TrunkGet": { "type": "object", "required": [ "name", "customer", "status", "trunkType", "port", "pChargeInfoSupportPolicy" ], "properties": { "name": { "type": "string", "example": "trunkName", "description": "A unique name for the trunk." }, "customer": { "$ref": "#/components/schemas/Customer", "description": "Customer associated with the trunk." }, "location": { "$ref": "#/components/schemas/Location", "description": "Location associated with the trunk." }, "otgDtgId": { "type": "string", "example": "lg1_sias10_cpapi12446_lgu", "description": "Unique Outgoing and Destination trunk group associated with the dial plan." }, "linePort": { "type": "string", "example": "lg1_sias10_cpapi16004_LGU@64941297.int10.bcld.webex.com", "description": "The Line/Port identifies a device endpoint in standalone mode or a SIP URI public identity in IMS mode." }, "locationsUsingTrunk": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "description": "Locations using trunk." }, "pilotUserId": { "type": "string", "example": "lg1_sias10_cpapi12446_LGU@64941297.int10.bcld.webex.com", "description": "User ID." }, "outboundProxy": { "type": "object", "properties": {}, "description": "Contains the body of the HTTP response received following the request to Console API and will not be set if the response has no body." }, "sipAuthenticationUserName": { "type": "string", "example": "lg1_sias10_cpapi12446_LGU", "description": "User's authentication service information." }, "status": { "$ref": "#/components/schemas/DeviceStatus", "description": "Device status." }, "errorCodes": { "type": "array", "items": { "type": "string", "example": "errorCodes" }, "description": "Error codes." }, "responseStatus": { "$ref": "#/components/schemas/ResponseStatus", "description": "Present partial error/warning status information included when the http response is 206." }, "dualIdentitySupportEnabled": { "type": "boolean", "example": true, "description": "Determines the behavior of the From and PAI headers on outbound calls." }, "trunkType": { "$ref": "#/components/schemas/TrunkType", "description": "Trunk Type associated with the trunk." }, "deviceType": { "type": "string", "example": "Cisco Unified Border Element", "description": "Device type assosiated with trunk." }, "address": { "type": "string", "example": "lgw1.london", "description": "FQDN or SRV address. Required to create a static certificate-based trunk." }, "domain": { "type": "string", "example": "acme.corp", "description": "Domain name. Required to create a static certificate based trunk." }, "port": { "type": "number", "example": 5000, "description": "FQDN port. Required to create a static certificate-based trunk." }, "maxConcurrentCalls": { "type": "number", "example": 1000, "description": "Max Concurrent call. Required to create a static certificate based trunk." }, "isRestrictedToDedicatedInstance": { "type": "boolean", "example": true, "description": "Flag to indicate if the trunk is restricted to a dedicated instance." }, "pChargeInfoSupportPolicy": { "$ref": "#/components/schemas/PChargeInfoSupportPolicyType" } } }, "TrunkPost": { "type": "object", "required": [ "name", "locationId", "password", "trunkType" ], "properties": { "name": { "type": "string", "example": "trunkName", "description": "A unique name for the trunk." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of location associated with the trunk." }, "password": { "type": "string", "example": "password", "description": "A password to use on the trunk." }, "dualIdentitySupportEnabled": { "type": "boolean", "example": true, "description": "Dual Identity Support setting impacts the handling of the From header and P-Asserted-Identity header when sending an initial SIP `INVITE` to the trunk for an outbound call." }, "trunkType": { "$ref": "#/components/schemas/TrunkType", "description": "Trunk Type associated with the trunk." }, "deviceType": { "type": "string", "example": "Cisco Unified Border Element", "description": "Device type assosiated with trunk." }, "address": { "type": "string", "example": "lgw1.london", "description": "FQDN or SRV address. Required to create a static certificate-based trunk." }, "domain": { "type": "string", "example": "acme.corp", "description": "Domain name. Required to create a static certificate based trunk." }, "port": { "type": "number", "example": 5000, "description": "FQDN port. Required to create a static certificate-based trunk." }, "maxConcurrentCalls": { "type": "number", "example": 1000, "description": "Max Concurrent call. Required to create a static certificate based trunk." }, "pChargeInfoSupportPolicy": { "$ref": "#/components/schemas/PChargeInfoSupportPolicyType" } } }, "TrunkPut": { "type": "object", "required": [ "name", "password" ], "properties": { "name": { "type": "string", "example": "dialPlanName", "description": "A unique name for the dial plan." }, "password": { "type": "string", "example": "password", "description": "A password to use on the trunk." }, "dualIdentitySupportEnabled": { "type": "boolean", "example": true, "description": "Determines the behavior of the From and PAI headers on outbound calls." }, "maxConcurrentCalls": { "type": "number", "example": 1000, "description": "Max Concurrent call. Required to create a static certificate-based trunk." }, "pChargeInfoSupportPolicy": { "$ref": "#/components/schemas/PChargeInfoSupportPolicyType" } } }, "PChargeInfoSupportPolicyType": { "type": "string", "example": "CONFIGURABLE_CHARGE_NUMBER", "enum": [ "DISABLED", "ASSERTED_IDENTITY", "CONFIGURABLE_CHARGE_NUMBER" ], "description": " * `DISABLED` - The P-Charge-Info header support policy is disabled.\n * `ASSERTED_IDENTITY` - The P-Charge-Info header is always included in outbound PSTN calls using Webex Calling primary number or location’s main number.\n * `CONFIGURABLE_CHARGE_NUMBER` - The P-Charge-Info header is included in outbound PSTN calls using the originating or redirecting Webex Calling entity's location charge number if set, else the entity's primary number if set and not toll-free, else the main number of the entity's location if set and not toll-free. If none of these are set or not toll-free, it uses the same number as the ASSERTED_IDENTITY option.\n" }, "TrunkType": { "type": "string", "enum": [ "REGISTERING", "CERTIFICATE_BASED" ], "description": " * `REGISTERING` - For Cisco CUBE Local Gateway.\n * `CERTIFICATE_BASED` - For Cisco Unified Border Element, Oracle ACME Session Border Controller, AudioCodes Session Border Controller, Ribbon Session Border Controller.\n" }, "TrunkTypeGetList": { "type": "object", "required": [ "trunkTypes" ], "properties": { "trunkTypes": { "type": "array", "items": { "$ref": "#/components/schemas/TrunkTypeWithDeviceType" }, "description": "Trunk type with device types." } } }, "TrunkTypeWithDeviceType": { "type": "object", "required": [ "trunkType", "deviceTypes" ], "properties": { "trunkType": { "$ref": "#/components/schemas/TrunkType", "description": "Trunk Type associated with the trunk." }, "deviceTypes": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceType" }, "description": "Device types for trunk configuration." } } }, "UnknownExtension": { "type": "object", "properties": { "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "UnknownNumber": { "type": "object", "properties": { "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "VirtualExtension": { "type": "object", "required": [ "id", "displayName", "extension", "phoneNumber" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OL2U4NTU0MGJjLWFiNDMtNGZjOS05ZThlLTkxZjRkN2E3ZjU5Ng", "description": "Unique identifier for the virtual extension." }, "firstName": { "type": "string", "example": "firstName1", "description": "First name of the virtual extension." }, "lastName": { "type": "string", "example": "lastName1", "description": "Last name of the virtual extension." }, "displayName": { "type": "string", "example": "displayName1", "description": "Full name of the virtual extension." }, "extension": { "type": "string", "example": "0007", "description": "Extension that the virtual extension is associated with." }, "phoneNumber": { "type": "string", "example": "8701278963", "description": "Phone number that the virtual extension is associated with." }, "locationName": { "type": "string", "example": "locationName1", "description": "Location name if the virtual extension is at the location level, empty if it is at the customer level." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID if the virtual extension is at the location level, empty if it is at the customer level." }, "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "VirtualExtensionRange": { "type": "object", "required": [ "id", "prefix", "pattern" ], "properties": { "id": { "type": "string", "example": "OTI0NzM1OTQtZGU1Mi00ZjViLTk0YjItN2Y5MzRmY2Y2NDk3", "description": "Unique identifier for virtual extension range." }, "name": { "type": "string", "example": "firstName1", "description": "Name of the virtual extension range." }, "prefix": { "type": "string", "example": "+1214555", "description": "Prefix that the virtual extension range is associated with (Note: Standard mode must have leading '+' in prefix; BCD/Enhanced mode can have any valid prefix)." }, "pattern": { "type": "string", "example": "2XXX", "description": "Pattern associated with the virtual extension range." }, "locationName": { "type": "string", "example": "locationName1", "description": "Location name if the virtual extension range is at the location level, empty if it is at the customer level." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID if the virtual extension range is at the location level, empty if it is at customer level." }, "trunkName": { "type": "string", "example": "trunkName1", "description": "Name of the trunk." }, "trunkId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzA4Yjc2MmZlLWJmYWItNGFmYi04ODQ1LTNhNzJjNGQ0NjZiOQ", "description": "Unique identifier of the trunk." }, "routeGroupName": { "type": "string", "example": "routeGroupName1", "description": "Name of the route group." }, "routeGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQL2YyODkyMTc0LWYxM2YtNDhjYy1iMmJhLWQ4ZmM4Yzg4MzJhYg", "description": "Unique identifier of the route group." }, "trunkLocationName": { "type": "string", "example": "trunkLocationName1", "description": "Location of the trunk; required if `trunkName` is returned." }, "trunkLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVlZmI5MTFhLThmNmUtNGU2Ny1iOTZkLWNkM2VmNmRhNDE2OA", "description": "Location ID of the trunk; required if `trunkName` is returned." } } }, "CallQueueSettingsPut": { "type": "object", "description": "Request body for modifying call center settings and availability for an agent in one or more call centers.", "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "available": true }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "available": false } ] }, "properties": { "agentACDState": { "$ref": "#/components/schemas/AgentACDStateType" }, "queues": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueuePut" }, "description": "Indicates a list of call centers the agent has joined or may join." } } }, "CallQueuePut": { "type": "object", "description": "Request body for modifying call center within queues settings for a user.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "available": true }, "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "description": "Unique call queue identifier." }, "available": { "type": "boolean", "example": true, "description": "When `true`, the agent has joined the call center." } } }, "CallQueueSettingsGetResponseObject": { "type": "object", "description": "Response object containing the call center settings and list of all call centers the logged in user belongs to.", "example": { "agentACDState": "AVAILABLE", "queues": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "hasCxEssentials": true, "available": true, "skillLevel": 1, "phoneNumber": "+18555550101", "extension": "50002", "allowLogOffEnabled": false }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "hasCxEssentials": false, "available": false, "extension": "50001", "allowLogOffEnabled": true } ] }, "properties": { "agentACDState": { "$ref": "#/components/schemas/AgentACDStateType" }, "queues": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueueGet" }, "description": "Indicates a list of call centers the agent has joined or may join." } } }, "CallQueueGet": { "type": "object", "description": "Details of a call queue that the agent has joined or may join.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "hasCxEssentials": true, "available": true, "skillLevel": 1, "phoneNumber": "+18555550101", "extension": "50001", "allowLogOffEnabled": false }, "required": [ "id", "allowLogOffEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "description": "Unique call queue identifier." }, "hasCxEssentials": { "type": "boolean", "example": true, "description": "Indicates if the call queue is `normal` or `CxEssentials`." }, "available": { "type": "boolean", "example": true, "description": "When `true` it indicates agent has joined the call center." }, "skillLevel": { "type": "number", "example": 1, "description": "Call center skill level." }, "phoneNumber": { "type": "string", "example": "+18555550101", "description": "Call center phone number." }, "extension": { "type": "string", "example": "50001", "description": "Call center extension." }, "allowLogOffEnabled": { "type": "boolean", "example": false, "description": "Determines whether a queue can be joined or not." } } }, "AgentACDStateType": { "type": "string", "example": "AVAILABLE", "enum": [ "SIGN_IN", "SIGN_OUT", "AVAILABLE", "UNAVAILABLE", "WRAP_UP" ], "description": " * `SIGN_IN` - Agent has signed in.\n * `SIGN_OUT` - Agent has signed out.\n * `AVAILABLE` - Agent is available.\n * `UNAVAILABLE` - Agent is unavailable.\n * `WRAP_UP` - Agent has wrapped up.\n" }, "MonitoringSettingsGetResponseObject": { "type": "object", "description": "Response object containing the monitoring settings for the logged in person.", "example": { "callParkNotificationEnabled": true, "monitoredElements": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85M2JjZWQ2Mi1lYWRmLTQ0MGItYThiYi03ZWQ5ZWEwNzExMTg", "lastName": "Nelson", "firstName": "John", "displayName": "John Nelson", "type": "PEOPLE", "email": "john.nelson@gmail.com", "extension": "50003", "esn": "50003", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" }, { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vNDk1ZTgxMTEtY2U4My00ZTc5LWJjOTAtODM2OWQxZjY0NTQ2", "displayName": "Dallas-Test", "type": "CALL_PARK_EXTENSION", "extension": "10082", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" }, { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS9mZTg5NmVmMC1iYTk3LTQ3NGYtOTMwZS03ODQxYzUwMjFhNDU=", "displayName": "TXS16 ConfRoom1", "type": "PLACE", "email": "fe896ef0-ba97-474f-930e-7841c5021a45@csg1test.room.wbx2.com", "directNumber": "+15594015485", "locationName": "San Francisco", "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzFiNDIzN2U4LWE2MDYtNGM5Ni1iMDZmLTYzMmU5N2FjZmQxNg" } ] }, "required": [ "callParkNotificationEnabled", "monitoredElements" ], "properties": { "callParkNotificationEnabled": { "type": "boolean", "example": true, "description": "Call park notification is enabled or disabled. Only applies to monitored users, workspaces, and virtual lines. Does not apply to call park extensions." }, "monitoredElements": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredElementItem" }, "description": "Settings of monitored elements which can be person, place, virtual line or call park extension." } } }, "MonitoredElementItem": { "type": "object", "properties": { "callparkextension": { "$ref": "#/components/schemas/MonitoredElementCallParkExtension", "description": "Monitored Call Park extension." }, "member": { "$ref": "#/components/schemas/MonitoredElementUser", "description": "Monitored member for this workspace." } } }, "UserBlockStateGetResponseObject": { "type": "object", "description": "Response object containing the call block state for a specific phone number.", "example": { "blockCallsEnabled": true }, "required": [ "blockCallsEnabled" ], "properties": { "blockCallsEnabled": { "type": "boolean", "description": "Returns true if number is found in user call block list." } } }, "CallBlockNumberPost": { "type": "object", "description": "Request object for adding a phone number to the user's call block list.", "example": { "phoneNumber": "+19075552859" }, "required": [ "phoneNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12025551212", "description": "Phone number which is blocked by user." } } }, "UserBlockGetResponseObject": { "type": "object", "description": "Response object containing the list of blocked phone numbers for a user.", "example": { "numbers": [ { "id": "KzE4OTc2NTQzMjE1", "phoneNumber": "+18976543215" }, { "id": "KzE4OTc2NTQzMzE1", "phoneNumber": "+18976543315" }, { "id": "KzE4OTc2NTQzNDE1", "phoneNumber": "+18976543415" }, { "id": "KzE5OTc2NTQzNDE1", "phoneNumber": "+19976543415" } ] }, "required": [ "numbers" ], "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/Numbers" }, "description": "Numbers for the call block list." } } }, "Numbers": { "type": "object", "description": "Phone number details in the call block list.", "example": { "id": "KzE5OTc2NTQzNDE1", "phoneNumber": "+19976543415" }, "required": [ "id", "phoneNumber" ], "properties": { "id": { "type": "string", "example": "KzEyMDI1NTUxMjEy", "description": "Unique identifier of the phone number." }, "phoneNumber": { "type": "string", "example": "+12025551212", "description": "Phone number which is blocked by user." } } }, "VoicemailInfo": { "type": "object", "required": [ "enabled", "sendAllCalls", "sendBusyCalls", "sendUnansweredCalls", "notifications", "transferToNumber", "emailCopyOfMessage", "messageStorage", "faxMessage" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Voicemail is enabled or disabled." }, "sendAllCalls": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "All calls will be sent to voicemail." } }, "description": "Settings for sending all calls to voicemail." }, "sendBusyCalls": { "type": "object", "required": [ "enabled", "greeting", "greetingUploaded" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Calls will be sent to voicemail when busy." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "`DEFAULT` indicates the default greeting will be played. `CUSTOM` indicates a custom `.wav` file will be played.\n * `DEFAULT` - The default greeting will be played.\n * `CUSTOM` - Designates that a custom `.wav` file will be played.\n" }, "greetingUploaded": { "type": "boolean", "example": true, "description": "A custom greeting has been uploaded." } }, "description": "Settings for sending calls to voicemail when the line is busy." }, "sendUnansweredCalls": { "type": "object", "required": [ "enabled", "greeting", "greetingUploaded", "numberOfRings", "systemMaxNumberOfRings" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enables and disables sending unanswered calls to voicemail." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "`DEFAULT` indicates the default greeting will be played. `CUSTOM` indicates a custom `.wav` file will be played.\n * `DEFAULT` - The default greeting will be played.\n * `CUSTOM` - Designates that a custom `.wav` file will be played.\n" }, "greetingUploaded": { "type": "boolean", "example": true, "description": "A custom greeting has been uploaded" }, "numberOfRings": { "type": "number", "example": 3, "description": "Number of rings before unanswered call will be sent to voicemail." }, "systemMaxNumberOfRings": { "type": "number", "example": 15, "description": "System-wide maximum number of rings allowed for `numberOfRings` setting." } } }, "notifications": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Send of unanswered calls to voicemail is enabled or disabled." }, "destination": { "type": "string", "example": "2025551212@txt.att.net", "description": "Email address to which the notification will be sent. For text messages, use an email to text message gateway like `2025551212@txt.example.net`." } }, "description": "Settings for notifications when there are any new voicemails." }, "transferToNumber": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enabled or disabled state of giving caller option to transfer to destination when pressing zero (0)." }, "destination": { "type": "string", "example": "6527", "description": "Number voicemail caller will be transferred to when they press zero (0)." } }, "description": "Settings for voicemail caller to transfer to a different number by pressing zero (0)." }, "emailCopyOfMessage": { "type": "object", "required": [ "enabled", "emailId" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "When `true` copy of new voicemail message audio will be sent to the designated email." }, "emailId": { "type": "string", "example": "dummy@example.com", "description": "Email address to which the new voicemail audio will be sent." } }, "description": "Settings for sending a copy of new voicemail message audio via email." }, "messageStorage": { "type": "object", "required": [ "mwiEnabled", "storageType", "externalEmail" ], "properties": { "mwiEnabled": { "type": "boolean", "example": true, "description": "When `true` desktop phone will indicate there are new voicemails." }, "storageType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL" ], "description": "Designates which type of voicemail message storage is used.\n * `INTERNAL` - For message access via phone or the Calling User Portal.\n * `EXTERNAL` - For sending all messages to the person's email.\n" }, "externalEmail": { "type": "string", "example": "dummy@example.com", "description": "External email address to which the new voicemail audio will be sent. A value for this field must be provided in the request if a `storageType` of `EXTERNAL` is given in the request." } } }, "faxMessage": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "When `true` FAX messages for new voicemails will be sent to the designated number." }, "phoneNumber": { "type": "string", "example": "2025551212", "description": "Designates phone number for the FAX. A value for this field must be provided in the request if faxMessage `enabled` field is given as `true` in the request." }, "extension": { "type": "string", "example": "1234", "description": "Designates optional FAX extension." } } } } }, "VoicemailPut": { "type": "object", "required": [ "notifications", "transferToNumber" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Voicemail is enabled or disabled." }, "sendAllCalls": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "All calls will be sent to voicemail." } }, "description": "Settings for sending all calls to voicemail." }, "sendBusyCalls": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Calls will be sent to voicemail when busy." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "`DEFAULT` indicates the default greeting will be played. `CUSTOM` indicates a custom `.wav` file will be played.\n * `DEFAULT` - The default greeting will be played.\n * `CUSTOM` - Designates that a custom `.wav` file will be played.\n" } }, "description": "Settings for sending calls to voicemail when the line is busy." }, "sendUnansweredCalls": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Unanswered call sending to voicemail is enabled or disabled." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "`DEFAULT` indicates the default greeting will be played. `CUSTOM` indicates a custom `.wav` file will be played.\n * `DEFAULT` - The default greeting will be played.\n * `CUSTOM` - Designates that a custom `.wav` file will be played.\n" }, "numberOfRings": { "type": "number", "example": 3, "description": "Number of rings before an unanswered call will be sent to voicemail. `numberOfRings` must be between 2 and 20, inclusive." } } }, "notifications": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Notifications for voicemails will be sent." }, "destination": { "type": "string", "example": "2025551212@txt.example.net", "description": "Email address to which the notification will be sent. For text messages, use an email to text message gateway like `2025551212@txt.att.net`." } }, "description": "Settings for notifications when there are any new voicemails." }, "transferToNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable or disable voicemail caller transfer to a destination by pressing zero (0)." }, "destination": { "type": "string", "example": "6527", "description": "Number voicemail caller will be transferred to when they press zero (0)." } }, "description": "Settings for voicemail caller to transfer to a different number by pressing zero (0)." }, "emailCopyOfMessage": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "When `true` copy of new voicemail message audio will be sent to the designated email." }, "emailId": { "type": "string", "example": "dummy@example.com", "description": "Email address to which the new voicemail audio will be sent." } }, "description": "Settings for sending a copy of new voicemail message audio via email." }, "messageStorage": { "type": "object", "properties": { "mwiEnabled": { "type": "boolean", "example": true, "description": "When `true` desktop phone will indicate there are new voicemails." }, "storageType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL" ], "description": "Designates which type of voicemail message storage is used.\n * `INTERNAL` - Internal mailbox storage has the following limitations: Single message limit of 10 minutes and total mailbox limit of 100 minutes.\n * `EXTERNAL` - If `EXTERNAL` is selected, all messages will be sent to the email address entered. Messages will not be accessible via phone, clients, or the end user's calling portal.\n" }, "externalEmail": { "type": "string", "example": "dummy@example.com", "description": "External email address to which the new voicemail audio will be sent." } } }, "faxMessage": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "When `true` FAX messages for new voicemails are sent to the designated number." }, "phoneNumber": { "type": "string", "example": "2025551212", "description": "Designates FAX number." }, "extension": { "type": "string", "example": "1234", "description": "Designates Optional FAX extension." } } } } }, "UserCallParkSettingsGetResponseObject": { "type": "object", "description": "Represents the call park settings for a user.", "example": { "groupName": "technical support - cards - customer 1", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "displayName": "John Doe" }, { "id": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzgzYjQ0OTIyLWZlOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "type": "PLACE", "displayName": "Jack Hughes" }, { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85M2I0NDkyMi1mZTlmLTExZWItYTRiOC0zMzYyN2JlZDY3YjY", "type": "VIRTUAL_LINE", "firstName": "Smith", "lastName": "Bob", "displayName": "Bob Smith" } ] }, "required": [ "groupName", "memberList" ], "properties": { "groupName": { "type": "string", "example": "technical support - cards - customer 1", "description": "Unique name for the call park. The maximum length is 80.." }, "memberList": { "type": "array", "items": { "$ref": "#/components/schemas/CallParkMember" }, "description": "List of members in the call park group." } } }, "CallParkMember": { "type": "object", "description": "Represents a member of a call park group.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85M2I0NDkyMi1mZTlmLTExZWItYTRiOC0zMzYyN2JlZDY3YjY", "type": "VIRTUAL_LINE", "firstName": "Smith", "lastName": "Bob", "displayName": "Smith Bob" }, "required": [ "id", "type", "displayName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "description": "Unique identifier of the member." }, "type": { "$ref": "#/components/schemas/MemberType" }, "firstName": { "type": "string", "example": "doe", "description": "First name of the member." }, "lastName": { "type": "string", "example": "John", "description": "Last name of the member." }, "displayName": { "type": "string", "example": "John Doe", "description": "Display name of the member." } } }, "CallPickupGroupSettingsGet": { "type": "object", "description": "Represents the call pickup group settings for a user.", "example": { "groupName": "Business Agents Call Pickup", "memberList": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "departmentName": "Electric", "directNumber": "+19075551234", "extension": "1234", "email": "abc@gmail.com" } ] }, "required": [ "groupName", "memberList" ], "properties": { "groupName": { "type": "string", "example": "Business Agents Call Pickup", "description": "Name of the call pickup group." }, "memberList": { "type": "array", "items": { "$ref": "#/components/schemas/CallPickupGroupMember" }, "description": "List of members in the call pickup group." } } }, "CallPickupGroupMember": { "type": "object", "description": "Represents a member of a call pickup group.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "type": "PEOPLE", "firstName": "John", "lastName": "Doe", "departmentName": "Electric", "directNumber": "+19075551234", "extension": "1234", "email": "abc@gmail.com" }, "required": [ "id", "type", "firstName", "lastName", "departmentName", "email" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "description": "Unique identifier for the member." }, "type": { "$ref": "#/components/schemas/MemberType" }, "firstName": { "type": "string", "example": "John", "description": "First name of the member." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of the member." }, "departmentName": { "type": "string", "example": "Electric", "description": "Department name of the member." }, "directNumber": { "type": "string", "example": "+19075551234", "description": "Direct number of the member." }, "extension": { "type": "string", "example": "1234", "description": "Extension of the member." }, "email": { "type": "string", "example": "abc@gmail.com", "description": "Email address of the member." } } }, "CallForwardingInfo": { "type": "object", "required": [ "callForwarding", "businessContinuity" ], "properties": { "callForwarding": { "type": "object", "required": [ "always", "busy", "noAnswer" ], "properties": { "always": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"Always\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Always\" call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the virtual line's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you choose." }, "busy": { "type": "object", "required": [ "enabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"Busy\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Busy\" call forwarding." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates the enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you chose while the phone is in use or the virtual line is busy." }, "noAnswer": { "type": "object", "required": [ "enabled", "numberOfRings", "systemMaxNumberOfRings", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"No Answer\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"No Answer\" call forwarding." }, "numberOfRings": { "type": "number", "example": 3, "description": "Number of rings before the call will be forwarded if unanswered." }, "systemMaxNumberOfRings": { "type": "number", "example": 15, "description": "System-wide maximum number of rings allowed for `numberOfRings` setting." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates the enabled or disabled state of sending incoming calls to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding which only occurs when you are away or not answering your phone." } }, "description": "Settings related to \"Always\", \"Busy\", and \"No Answer\" call forwarding." }, "businessContinuity": { "type": "object", "required": [ "enabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Business Continuity is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for Business Continuity." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to the destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for sending calls to a destination of your choice if your phone is not connected to the network for any reason, such as power outage, failed Internet connection, or wiring problem." } } }, "CallForwardingPut": { "type": "object", "properties": { "callForwarding": { "type": "object", "properties": { "always": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"Always\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Always\" call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the virtual line's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables and disables sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you choose." }, "busy": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"Busy\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Busy\" call forwarding." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables and disables sending incoming to the destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you chose while the phone is in use or the virtual line is busy." }, "noAnswer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"No Answer\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"No Answer\" call forwarding." }, "numberOfRings": { "type": "number", "example": 3, "description": "Number of rings before the call will be forwarded if unanswered. `numberOfRings` must be between 2 and 20, inclusive." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding which only occurs when you are away or not answering your phone." } }, "description": "Settings related to \"Always\", \"Busy\", and \"No Answer\" call forwarding." }, "businessContinuity": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Business Continuity is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for Business Continuity." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for sending calls to a destination of your choice if your phone is not connected to the network for any reason, such as a power outage, failed Internet connection, or wiring problem." } } }, "UserSingleNumberReachPatchRequestObject": { "type": "object", "description": "Represents a request to update Single Number Reach settings for a user.", "example": { "alertAllLocationsForClickToDialCallsEnabled": true }, "properties": { "alertAllLocationsForClickToDialCallsEnabled": { "type": "boolean", "example": true, "description": "If `true`, all locations will be alerted for click-to-dial calls." } } }, "GetSingleNumberReachObject": { "type": "object", "required": [ "enabled", "numbers" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "A flag to enable or disable single Number Reach." }, "alertAllNumbersForClickToDialCallsEnabled": { "type": "boolean", "description": "Flag to enable alerting single number reach numbers for click to dial calls." }, "numbers": { "type": "array", "items": { "type": "object", "required": [ "id", "phoneNumber", "enabled", "name", "doNotForwardCallsEnabled", "answerConfirmationEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NJTkdMRV9OVU1CRVJfUkVBQ0gvS3pFM01ERXhOVFU0TVRZNQ", "description": "ID of Single number reach. Note that this ID contains base64 encoded phoneNumber data and can change if the phone number is modified." }, "phoneNumber": { "type": "string", "example": "+17011558169", "description": "The phone number that will ring when a call is received. The number should be in E.164 format." }, "enabled": { "type": "boolean", "example": true, "description": "A flag to enable or disable this single Number Reach phone number." }, "name": { "type": "string", "example": "myNumber", "description": "Name of the single number reach phone number entry." }, "doNotForwardCallsEnabled": { "type": "boolean", "description": "If enabled, the call forwarding settings of provided phone Number will not be applied." }, "answerConfirmationEnabled": { "type": "boolean", "description": "If enabled, the call recipient will be prompted to press a key before being connected." } } }, "description": "Array of single number reach number entries." } } }, "SingleNumberReachNumber": { "type": "object", "description": "Represents a phone number configured for Single Number Reach.", "example": { "phoneNumber": "+19075552859", "name": "John", "enabled": true, "doNotForwardCallsEnabled": true, "answerConfirmationEnabled": false }, "required": [ "phoneNumber", "name", "enabled", "doNotForwardCallsEnabled", "answerConfirmationEnabled" ], "properties": { "phoneNumber": { "type": "string", "example": "+19075552859", "description": "Phone number." }, "name": { "type": "string", "example": "John", "description": "Name associated with the phone number." }, "enabled": { "type": "boolean", "example": true, "description": "If `true`, the phone number is enabled." }, "doNotForwardCallsEnabled": { "type": "boolean", "example": true, "description": "If `true`, calls are not forwarded." }, "answerConfirmationEnabled": { "type": "boolean", "description": "If `true`, answer confirmation is enabled." } } }, "PostNumberForSingleReachNumber": { "type": "object", "description": "Represents a request to add a phone number for Single Number Reach.", "example": { "phoneNumber": "+19075552859", "name": "John", "enabled": true, "doNotForwardCallsEnabled": true, "answerConfirmationEnabled": false }, "required": [ "phoneNumber", "name", "enabled" ], "properties": { "phoneNumber": { "type": "string", "example": "+19075552859", "description": "Phone number." }, "name": { "type": "string", "example": "John", "description": "Name associated with the phone number." }, "enabled": { "type": "boolean", "example": true, "description": "If `true`, the phone number is enabled." }, "doNotForwardCallsEnabled": { "type": "boolean", "example": true, "description": "Note that this setting attempts to prevent the Single Number Reach (SNR) destination from forwarding the call. The SNR destination may or may not respect the indication provided hence, it may still be forwarded, and this setting has no impact on the user's own forwarding services." }, "answerConfirmationEnabled": { "type": "boolean", "description": "If `true`, answer confirmation is enabled. The default value is `false`." } } }, "ServiceObject": { "type": "object", "description": "Represents a list of services that are assigned to a user.", "example": { "services": [ "Anonymous Call Rejection", "Call Forwarding Always", "Call Forwarding Busy", "Call Forwarding No Answer", "Call Notify" ] }, "required": [ "services" ], "properties": { "services": { "type": "array", "items": { "$ref": "#/components/schemas/ServicesEnum" }, "description": "The list of allowed services." } } }, "ServicesEnum": { "type": "string", "example": "Authentication", "enum": [ "Anonymous Call Rejection", "Authentication", "Call Forwarding Always", "Call Forwarding Busy", "Call Forwarding No Answer", "Call Notify", "Calling Line ID Delivery Blocking", "Do Not Disturb", "Intercept User", "Last Number Redial", "Priority Alert", "Call Return", "Selective Call Acceptance", "Call Forwarding Selective", "Selective Call Rejection", "Simultaneous Ring Personal", "Voice Messaging User", "Alternate Numbers", "Shared Call Appearance 35", "Speed Dial 100", "Directed Call Pickup", "Directed Call Pickup with Barge-in", "External Calling Line ID Delivery", "Internal Calling Line ID Delivery", "Call Waiting", "Barge-in Exempt", "Push to Talk", "Basic Call Logs", "Hoteling Host", "Hoteling Guest", "Multiple Call Arrangement", "Busy Lamp Field", "Three-Way Call", "Call Transfer", "Privacy", "Fax Messaging", "N-Way Call", "Call Forwarding Not Reachable", "Connected Line Identification Presentation", "Connected Line Identification Restriction", "BroadWorks Anywhere", "Music On Hold User", "Call Center Monitoring", "BroadWorks Mobility", "Call Recording", "Executive", "Client License 17", "Client License 18", "Flexible Seating Guest", "Personal Assistant", "Sequential Ring", "Call Block" ], "description": " * `Anonymous Call Rejection` - When enabled, blocks all incoming calls from unidentified or blocked caller IDs.\n * `Authentication` - Requires the user to enter a password before making a call.\n * `Call Forwarding Always` - Forwards all incoming calls to another number.\n * `Call Forwarding Busy` - Forwards incoming calls to another number when the user is on another call.\n * `Call Forwarding No Answer` - Forwards incoming calls to another number when the user does not answer.\n * `Call Notify` - Notifies the user of incoming calls.\n * `Calling Line ID Delivery Blocking` - Blocks the delivery of the user's caller ID to the recipient.\n * `Do Not Disturb` - Blocks all incoming calls.\n * `Intercept User` - Allows the user to intercept another user's calls.\n * `Last Number Redial` - Redials the last number called.\n * `Priority Alert` - Alerts the user of incoming calls with a distinctive ring.\n * `Call Return` - Returns the last call received.\n * `Selective Call Acceptance` - Accepts only calls from a list of pre-approved numbers.\n * `Call Forwarding Selective` - Forwards calls from a list of pre-approved numbers.\n * `Selective Call Rejection` - Rejects calls from a list of pre-approved numbers.\n * `Simultaneous Ring Personal` - Rings multiple numbers at the same time.\n * `Voice Messaging User` - Allows the user to access voicemail.\n * `Alternate Numbers` - Allows the user to have multiple numbers.\n * `Shared Call Appearance 35` - Allows the user to share a call appearance with another user.\n * `Speed Dial 100` - Allows the user to dial a number by pressing a single key.\n * `Directed Call Pickup` - Allows the user to pick up a call directed to another user.\n * `Directed Call Pickup with Barge-in` - Allows the user to pick up a call directed to another user and join the call.\n * `External Calling Line ID Delivery` - Displays the caller's ID on the user's phone.\n * `Internal Calling Line ID Delivery` - Displays the caller's ID on the user's phone.\n * `Call Waiting` - Alerts the user of incoming calls when they are on another call.\n * `Barge-in Exempt` - Prevents other users from barging in on the user's calls.\n * `Push to Talk` - Allows the user to push a button to talk.\n * `Basic Call Logs` - Logs the user's call history.\n * `Hoteling Host` - Allows the user to host a hoteling session.\n * `Hoteling Guest` - Allows the user to join a hoteling session.\n * `Multiple Call Arrangement` - Allows the user to have multiple calls at the same time.\n * `Busy Lamp Field` - Allows the user to monitor the status of another user's phone.\n * `Three-Way Call` - Allows the user to have a three-way call.\n * `Call Transfer` - Allows the user to transfer a call.\n * `Privacy` - Allows the user to keep their number private.\n * `Fax Messaging` - Allows the user to send and receive faxes.\n * `N-Way Call` - Allows the user to have an N-way call.\n * `Call Forwarding Not Reachable` - Forwards calls when the user is not reachable.\n * `Connected Line Identification Presentation` - Displays the caller's ID on the user's phone.\n * `Connected Line Identification Restriction` - Prevents the caller's ID from being displayed on the user's phone.\n * `BroadWorks Anywhere` - Allows the user to make calls from any phone.\n * `Music On Hold User` - Allows the user to listen to music while on hold.\n * `Call Center Monitoring` - Allows the user to monitor a call center.\n * `BroadWorks Mobility` - Allows the user to use BroadWorks Mobility.\n * `Call Recording` - Allows the user to record calls.\n * `Executive` - Allows the user to have an executive assistant.\n * `Client License 17` - Allows the user to use client license 17.\n * `Client License 18` - Allows the user to use client license 18.\n * `Flexible Seating Guest` - Allows the user to be a flexible seating guest.\n * `Personal Assistant` - Allows the user to have a personal assistant.\n * `Sequential Ring` - Allows the user to have a sequential ring.\n * `Call Block` - Allows the user to block calls.\n" }, "ExecutiveAssistantSettingsGet": { "type": "object", "description": "Settings for an executive assistant.", "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+14155551234", "executives": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "firstName": "John", "lastName": "Doe", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true } ] }, "required": [ "forwardFilteredCallsEnabled" ], "properties": { "forwardFilteredCallsEnabled": { "type": "boolean", "example": true, "description": "If `true`, filtered calls to assistant are forwarded to the `forwardToPhoneNumber`." }, "forwardToPhoneNumber": { "type": "string", "example": "6822234354", "description": "Phone number to forward calls to when `forwardFilteredCallsEnabled` is set to `true`." }, "executives": { "type": "array", "items": { "$ref": "#/components/schemas/Executive" }, "description": "List of executives for whom person is assigned as assistant." } } }, "executive": { "type": "object", "description": "Details of an executive for whom the assistant can manage calls.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "firstName": "John", "lastName": "Doe", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true }, "required": [ "id", "optInEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "description": "Unique identifier of the executive." }, "firstName": { "type": "string", "example": "John", "description": "First name of the executive." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of the executive." }, "directNumber": { "type": "string", "example": "+91-6557765419", "description": "Direct number of the executive." }, "extension": { "type": "string", "example": "10079", "description": "Extension number of the executive." }, "optInEnabled": { "type": "boolean", "example": true, "description": "If `true`, the executive assistant opted in to the executive pool." } } }, "ExecutiveAssistantSettingsPut": { "type": "object", "description": "Request Payload to update settings for an executive assistant.", "example": { "forwardFilteredCallsEnabled": true, "forwardToPhoneNumber": "+19075552860", "executives": [ { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "optInEnabled": true } ] }, "properties": { "forwardFilteredCallsEnabled": { "type": "boolean", "example": true, "description": "If `true`, filtered calls to assistant are forwarded to the `forwardToPhoneNumber`." }, "forwardToPhoneNumber": { "type": "string", "example": "+19075552860", "description": "Phone number to forward the filtered calls to. Mandatory if `forwardFilteredCallsEnabled` is set to true." }, "executives": { "type": "array", "items": { "$ref": "#/components/schemas/ExecutivePut" }, "description": "List of executives." } } }, "ExecutivePut": { "type": "object", "description": "Details of an executive for whom the assistant can manage calls.", "example": { "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "optInEnabled": true }, "required": [ "personId", "optInEnabled" ], "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "description": "Unique identifier of the executive." }, "optInEnabled": { "type": "boolean", "example": true, "description": "If `true`, the assistant has opted in to handle calls for the executive." } } }, "ExecutiveAvailableAssistantsGet": { "type": "object", "example": { "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079" } ] }, "properties": { "assistants": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableAssistant" }, "description": "List of people available for assignment as executive assistants." } } }, "AvailableAssistant": { "type": "object", "description": "Details of person available to be assigned as executive assistant.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079" }, "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "description": "Unique identifier of the person." }, "firstName": { "type": "string", "example": "doe", "description": "Unicode first name of the person. Is null if not available or if name is a single '.' or '-'." }, "lastName": { "type": "string", "example": "John", "description": "Unicode last name of the person. Is null if not available or if name is a single '.' or '-'." }, "directNumber": { "type": "string", "example": "+91-6557765419", "description": "Direct number of the person." }, "extension": { "type": "string", "example": "10079", "description": "Extension number of the person." } } }, "ExecutiveAssignedAssistantsPatchRequestObject": { "type": "object", "description": "Request object for updating executive assigned assistants.", "example": { "allowOptInOutEnabled": false, "assistantIds": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMzRmNjdhNS1kYTFiLTQxYzUtODBkNS03ZDFmZTY3ZTE5ZTY" ] }, "properties": { "allowOptInOutEnabled": { "type": "boolean", "description": "If `true`, the executive can allow assistants to opt in or out of managing calls." }, "assistantIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "description": "Unique identifier of the assistant." }, "description": "List of unique identifiers for the assistants." } } }, "ExecutiveAssignedAssistantsGet": { "type": "object", "description": "Response object for the executive assigned assistants.", "example": { "assistants": [ { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true, "location": { "name": "Bangalore", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg" } } ] }, "properties": { "assistants": { "type": "array", "items": { "$ref": "#/components/schemas/Assistant" }, "description": "List of assigned executive assistants." } } }, "Assistant": { "type": "object", "description": "Details of an executive assistant.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "firstName": "doe", "lastName": "John", "phoneNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true, "location": { "name": "Bangalore", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzMGMzYTNlLTA3Y2EtNDNmOS1iZjE4LTZlZGM2OGE1Y2Y3Yg" } }, "required": [ "id", "optInEnabled", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82ZTU1NWNkMC02MzQxLTQyYjgtYTIxYy1lNzVmMjE0NDgyNzU", "description": "Unique identifier of the assistant." }, "firstName": { "type": "string", "example": "doe", "description": "Unicode first name of the assistant. Is null if not available or if name is a single '.' or '-'." }, "lastName": { "type": "string", "example": "John", "description": "Unicode last name of the assistant. Is null if not available or if name is a single '.' or '-'." }, "directNumber": { "type": "string", "example": "+91-6557765419", "description": "Direct number of the assistant." }, "extension": { "type": "string", "example": "10079", "description": "Extension number of the assistant." }, "optInEnabled": { "type": "boolean", "example": true, "description": "If `true`, the assistant has opted in to handle calls for the executive. If `false`, the assistant has not opted in." }, "location": { "$ref": "#/components/schemas/Location" } } }, "FeatureAccessCodeListGetObject": { "type": "object", "description": "Response object for the list of feature access codes.", "example": { "featureAccessCodeList": [ { "name": "Call Forwarding Busy Interrogation", "code": "*67*", "alternateCode": "*18" }, { "name": "Cancel Call Waiting", "code": "*70" }, { "name": "Call Waiting Interrogation", "code": "*53*", "alternateCode": "*38" } ] }, "required": [ "featureAccessCodeList" ], "properties": { "featureAccessCodeList": { "type": "array", "items": { "$ref": "#/components/schemas/FeatureAccessCode" }, "description": "List of feature access codes." } } }, "EndpointListGetObject": { "type": "object", "description": "Response object for the list of endpoints.", "example": { "endpoints": [ { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM=", "type": "CALLING_DEVICE", "name": "Webex Go Device", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "mobilitySettings": { "phoneNumber": "+13374831660", "alertingEnabled": false } }, { "id": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzIyNjBkMDYxLWViNDUtNDJhMi05MmY3LWFkZDMyMzRiYzI0Yw", "type": "APPLICATION", "name": "Webex Tablet Application", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "memberType": "VIRTUAL_LINE" } ] }, { "id": "Y2lzY29zcGFyazovL3VzL0hPVERFU0tJTkdfR1VFU1QvN2FmYTFlNWMtOTFiYS00NzRkLWEzODMtZTAyMDgxZDU3YmE5", "type": "HOTDESKING_GUEST", "name": "Cisco HotDesking", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "memberType": "VIRTUAL_LINE" } ], "host": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS9lMTRhNTFlMC1mM2Q1LTQzNzktOWM2OC1hNWFiY2Y1M2E5MTY=", "type": "CALLING_DEVICE", "name": "Cisco 8861", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8zNDU1MDQ1YS0xN2UyLTQxNzEtOGMwYy02ZWVkMDgwNjM5ZDI=", "ownerType": "PLACE", "secondaryLines": [ { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9iNmYwNzQyNS1lYjgyLTQzMDEtOWRlNy04YWI3NTFjM2ZhZDQ", "memberType": "VIRTUAL_LINE" } ] } } ] }, "required": [ "endpoints" ], "properties": { "endpoints": { "type": "array", "items": { "$ref": "#/components/schemas/Endpoint" }, "description": "List of endpoints." } } }, "Endpoint": { "type": "object", "description": "Details of an endpoint associated with the authenticated user.\n\nEndpoints are devices, applications, or hotdesking guest profiles. Endpoints can be owned by an authenticated user or have the user as a secondary line.", "example": { "id": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM=", "type": "CALLING_DEVICE", "name": "Webex Go Device", "autoAndForcedAnswerEnabled": false, "ownerId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "ownerType": "PEOPLE", "mobilitySettings": { "phoneNumber": "+13374831660", "alertingEnabled": false } }, "required": [ "id", "type", "name", "autoAndForcedAnswerEnabled", "ownerId", "ownerType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "description": "Unique identifier of the endpoint." }, "type": { "$ref": "#/components/schemas/EndpointType" }, "name": { "type": "string", "example": "Webex Go Device", "description": "Display name of the endpoint." }, "autoAndForcedAnswerEnabled": { "type": "boolean", "example": true, "description": "If `true`, the endpoint can be remotely controlled, allowing actions such as mute, hold, resume and answer." }, "ownerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "description": "Unique identifier of the endpoint owner." }, "ownerType": { "$ref": "#/components/schemas/MemberType" }, "secondaryLines": { "type": "array", "items": { "$ref": "#/components/schemas/SecondaryLine" }, "description": "List of secondary lines. The secondary line information is not returned for the endpoint owned by an entity other than the authenticated user." }, "mobilitySettings": { "type": "object", "required": [ "phoneNumber", "alertingEnabled" ], "properties": { "phoneNumber": { "type": "string", "example": "+13374831660", "description": "Phone number of the mobile device endpoint." }, "alertingEnabled": { "type": "boolean", "description": "If `true`, alerting is enabled for the endpoint." } }, "description": "Mobility settings of the endpoint." }, "host": { "$ref": "#/components/schemas/HostObject" } } }, "HostObject": { "type": "object", "description": "`HOTDESKING_GUEST` endpoints include the `host` element when the user has an active hotdesking session on a host.", "required": [ "id", "type", "name", "autoAndForcedAnswerEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "description": "Unique identifier of the endpoint." }, "type": { "$ref": "#/components/schemas/EndpointType" }, "name": { "type": "string", "example": "Webex Go Device", "description": "Name of the endpoint." }, "autoAndForcedAnswerEnabled": { "type": "boolean", "example": true, "description": "If `true`, the endpoint can be remotely controlled, allowing actions such as mute, hold, resume and answer." }, "ownerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNTlkYzFkOC00NjdkLTRhNGUtOTRlNi1jOTYyZjEyMmY5YWM", "description": "Unique identifier of the endpoint owner." }, "ownerType": { "$ref": "#/components/schemas/MemberType" }, "secondaryLines": { "type": "array", "items": { "$ref": "#/components/schemas/SecondaryLine" }, "description": "List of secondary lines. The secondary line information is not returned for the endpoint owned by an entity other than the authenticated user." } } }, "SecondaryLine": { "type": "object", "description": "Details of a secondary line associated with the endpoint.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "memberType": "VIRTUAL_LINE" }, "required": [ "id", "memberType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS82NDhjYjBkMC1kODU2LTQzNzQtYmI4My0zNWFhNTIxZDhiZmI", "description": "Unique identifier for the member." }, "memberType": { "$ref": "#/components/schemas/MemberType" } } }, "EndpointType": { "type": "string", "enum": [ "CALLING_DEVICE", "APPLICATION", "HOTDESKING_GUEST" ], "description": " * `CALLING_DEVICE` - Endpoint is a calling device.\n * `APPLICATION` - Endpoint is an application.\n * `HOTDESKING_GUEST` - Endpoint is a hotdesking guest.\n" }, "ModifyEndpointObject": { "type": "object", "description": "Request Payload to update an endpoint.", "example": { "mobilitySettings": { "alertingEnabled": true } }, "required": [ "mobilitySettings" ], "properties": { "mobilitySettings": { "type": "object", "required": [ "alertingEnabled" ], "properties": { "alertingEnabled": { "type": "boolean", "example": true, "description": "If `true`, alerting is enabled for the endpoint." } }, "description": "Mobility settings of the endpoint." } } }, "UserCallRecordingGetResponseObject": { "type": "object", "description": "Response object for the user call recording settings.", "example": { "enabled": true, "vendor": { "id": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "name": "ITFDual", "loginUrl": "https://www.itfdualportal.com" }, "recordingMode": "On Demand", "pauseResumeNotifyMethod": "Beep", "announcementEnabled": true, "warningToneEnabled": false, "warningToneDuration": 70 }, "required": [ "enabled", "vendor", "recordingMode" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Indicates whether Call Recording is enabled for the user or not." }, "vendor": { "type": "object", "description": "List of available vendors and their details.", "required": [ "id", "name", "loginUrl" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "description": "Unique identifier of a vendor." }, "name": { "type": "string", "example": "Dubber", "description": "Name of a call recording vendor." }, "loginUrl": { "type": "string", "example": "https://wxc-us.dubber.net/login?sso=webex", "description": "Login URL of the vendor." } } }, "recordingMode": { "$ref": "#/components/schemas/RecordingModeType" }, "pauseResumeNotifyMethod": { "$ref": "#/components/schemas/PauseResumeNotifyMethodType" }, "announcementEnabled": { "type": "boolean", "example": true, "description": "If `true`, an announcement is played when call recording starts." }, "warningToneEnabled": { "type": "boolean", "description": "If `true`, a warning tone is played when call recording starts." }, "warningToneDuration": { "type": "number", "example": 70, "description": "Duration of the warning tone in seconds. Duration can be configured between 10 and 1800 seconds." } } }, "RecordingModeType": { "type": "string", "enum": [ "Always", "Never", "On Demand", "Always with Pause/Resume", "On Demand with User Initiated Start" ], "description": " * `Always` - Call recording is always enabled.\n * `Never` - Call recording is never enabled.\n * `On Demand` - Call recording is started and stopped manually by the user.\n * `Always with Pause/Resume` - Call recording is always enabled with the ability to pause and resume.\n * `On Demand with User Initiated Start` - Call recording is started manually by the user.\n" }, "PauseResumeNotifyMethodType": { "type": "string", "enum": [ "Beep", "Play Announcement" ], "description": " * `Beep` - A beep is played when call recording is paused or resumed.\n * `Play Announcement` - An announcement is played when call recording is paused or resumed.\n" }, "UserProfileGetResponseObject": { "type": "object", "description": "User profile details for the authenticated user.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYWZiM2JhYi1hN2UxLTQ1ZGUtYmYzZS1kOWUxMzkxYzU0Yjk", "lastName": "Doe", "firstName": "John", "email": "john.doe@gmail.com", "announcementLanguage": "English", "locationDialingCode": "8327", "supportMobility": false, "emergencyCallBackNumber": "+16232992720", "phoneNumbers": [ { "directNumber": "+441234222304", "enterprise": "832731599", "extension": "31599", "routingPrefix": "8327", "esn": "832731599", "primary": true }, { "directNumber": "+441234200015", "enterprise": "832731587", "extension": "31587", "routingPrefix": "8327", "esn": "832731587", "primary": false } ], "devices": [ { "description": [], "model": "DMS Cisco 8865", "mac": "110723241134", "primaryOwner": true, "type": "PRIMARY", "owner": { "lastName": "Mac", "firstName": "Jone", "type": "PEOPLE" }, "activationState": "ACTIVATED" } ], "location": { "name": "Brampton", "address": { "address1": "mclean", "address2": "mclean", "city": "mclean", "state": "GB-BGE", "postalCode": "112233", "country": "GB" } }, "receptionistUrl": "https://cisco.receptionist.cloud", "callingHostUrl": "https://var-int.broadcloudpbx.net", "attendantConsoleUrl": "https://cisco.receptionist.cloud" }, "required": [ "id", "lastName", "firstName", "email", "announcementLanguage", "locationDialingCode", "supportMobility", "emergencyCallBackNumber", "phoneNumbers", "devices", "location", "receptionistUrl", "callingHostUrl", "attendantConsoleUrl" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mYWZiM2JhYi1hN2UxLTQ1ZGUtYmYzZS1kOWUxMzkxYzU0Yjk", "description": "Unique identifier of the user." }, "lastName": { "type": "string", "example": "John", "description": "Last name of the user." }, "firstName": { "type": "string", "example": "Doe", "description": "First name of the user." }, "email": { "type": "string", "example": "John.doe@gmail.com'", "description": "The email addresses of the person." }, "announcementLanguage": { "type": "string", "example": "English", "description": "Language for announcements." }, "locationDialingCode": { "type": "string", "example": "8327", "description": "Dialing code for the user's location." }, "supportMobility": { "type": "boolean", "description": "If `true`, the user supports mobility." }, "emergencyCallBackNumber": { "type": "string", "example": "+16232992720", "description": "Emergency callback number for the user." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/UserNumber" }, "description": "List of numbers associated with the user." }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/UserDevice" }, "description": "List of devices associated with the user." }, "location": { "$ref": "#/components/schemas/LocationObject" }, "receptionistUrl": { "type": "string", "example": "https://cisco.receptionist.cloud", "description": "URL for the receptionist console." }, "callingHostUrl": { "type": "string", "example": "https://var-int.broadcloudpbx.net", "description": "URL for the calling host." }, "attendantConsoleUrl": { "type": "string", "example": "https://cisco.receptionist.cloud", "description": "URL for the attendant console." } } }, "LocationObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzkzZmQ1ZDMyLTRmYmItNGNjMS04ZTYxLTE0YTA1ZDhhMTIzMw", "description": "Unique identifier of the location." }, "name": { "type": "string", "example": "RCDN", "description": "Name of the location." } } }, "AddressObject": { "type": "object", "properties": { "addressLine1": { "type": "string", "example": "170 West Tasman Dr", "description": "First line of the building's address." }, "addressLine2": { "type": "string", "example": "Building 6", "description": "Second line of the building's address." }, "city": { "type": "string", "example": "San Jose", "description": "City for the building's address." }, "stateOrProvince": { "type": "string", "example": "California", "description": "State or Province for the building's address." }, "zipOrPostalCode": { "type": "string", "example": "95134", "description": "Zip or Postal Code for the building's address." }, "country": { "type": "string", "example": "US", "description": "Country for the building's address." } } }, "UserNumber": { "type": "object", "description": "Details of a phone number associated with the user.", "example": { "directNumber": "+441234222304", "enterprise": "832731599", "extension": "31599", "routingPrefix": "8327", "esn": "832731599", "primary": true }, "required": [ "directNumber", "enterprise", "extension", "routingPrefix", "esn", "primary" ], "properties": { "directNumber": { "type": "string", "example": "+441234222304", "description": "Direct number of the user." }, "enterprise": { "type": "string", "example": "832731599", "description": "Enterprise number of the user. This always combines the location routing prefix with the user's extension, and is only present when both are present. That is, the location has a routing prefix and the user has an extension." }, "extension": { "type": "string", "example": "31599", "description": "Extension of the user. This is always the user's extension, only present if the user has an extension." }, "routingPrefix": { "type": "string", "example": "8327", "description": "Routing prefix of the user." }, "esn": { "type": "string", "example": "832731599", "description": "Enterprise Significant Number. This combines the location routing prefix and extension when both are set, and only the extension when the location routing prefix is not set. if the extension is not set, the esn is not present." }, "primary": { "type": "boolean", "example": true, "description": "Indicates if the number is primary or alternate number." } } }, "UserDevice": { "type": "object", "description": "Details of a device associated with the user.", "example": { "description": [], "model": "DMS Cisco 8865", "mac": "110723241134", "primaryOwner": true, "type": "PRIMARY", "owner": { "lastName": "Mac", "firstName": "Jone", "type": "PEOPLE" }, "activationState": "ACTIVATED" }, "required": [ "description", "model", "mac", "primaryOwner", "type", "owner", "activationState" ], "properties": { "description": { "type": "array", "items": { "type": "string", "example": "[]", "description": "A tag used to describe the device." }, "description": "Comma separated array of tags used to describe device." }, "model": { "type": "string", "example": "DMS Cisco 8865", "description": "Identifier for device model." }, "mac": { "type": "string", "example": "110723241134", "description": "MAC address of the device." }, "primaryOwner": { "type": "boolean", "example": true, "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/DeviceTypeObject" }, "owner": { "$ref": "#/components/schemas/OwnerObject" }, "activationState": { "$ref": "#/components/schemas/DeviceActivationState" } } }, "DeviceActivationState": { "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" }, "OwnerObject": { "type": "object", "description": "Details of the owner of the device.", "example": { "lastName": "Mac", "firstName": "Jone", "type": "PEOPLE" }, "required": [ "lastName", "firstName", "type" ], "properties": { "lastName": { "type": "string", "example": "user", "description": "First name of device owner." }, "firstName": { "type": "string", "example": "user1", "description": "Last name of device owner." }, "type": { "$ref": "#/components/schemas/MemberType" } } }, "DeviceTypeObject": { "type": "string", "enum": [ "PRIMARY", "SHARED_CALL_APPEARANCE", "MOBILITY" ], "description": " * `PRIMARY` - Primary line for the user.\n * `SHARED_CALL_APPEARANCE` - Shared line for the user. 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" }, "PersonalAssistantGet": { "type": "object", "required": [ "enabled", "presence", "transferEnabled", "alerting", "alertMeFirstNumberOfRings" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Toggles feature." }, "presence": { "type": "string", "enum": [ "NONE", "BUSINESS_TRIP", "GONE_FOR_THE_DAY", "LUNCH", "MEETING", "OUT_OF_OFFICE", "TEMPORARILY_OUT", "TRAINING", "UNAVAILABLE", "VACATION" ], "description": "Person's availability.\n * `NONE` - User is available.\n * `BUSINESS_TRIP` - User is gone for a business trip.\n * `GONE_FOR_THE_DAY` - User is gone for the day.\n * `LUNCH` - User is gone for lunch.\n * `MEETING` - User is gone for a meeting.\n * `OUT_OF_OFFICE` - User is out of office.\n * `TEMPORARILY_OUT` - User is temporarily out.\n * `TRAINING` - User is gone for training.\n * `UNAVAILABLE` - User is unavailable.\n * `VACATION` - User is gone for vacation.\n" }, "untilDateTime": { "type": "string", "example": "2022-08-24T06:18:31.092Z", "description": "The date until which personal assistant is active." }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "transferNumber": { "type": "string", "example": "+14126525012", "description": "Number to transfer to." }, "alerting": { "type": "string", "enum": [ "ALERT_ME_FIRST", "PLAY_RING_REMINDER", "NONE" ], "description": "Alert type.\n * `ALERT_ME_FIRST` - Ring the recipient first.\n * `PLAY_RING_REMINDER` - Reminder ring the recipient.\n * `NONE` - No alert.\n" }, "alertMeFirstNumberOfRings": { "type": "number", "example": 3, "description": "Number of rings for alert type: `ALERT_ME_FIRST`; available range is 2-20" } } }, "PersonalAssistantPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Toggles feature." }, "presence": { "type": "string", "enum": [ "NONE", "BUSINESS_TRIP", "GONE_FOR_THE_DAY", "LUNCH", "MEETING", "OUT_OF_OFFICE", "TEMPORARILY_OUT", "TRAINING", "UNAVAILABLE", "VACATION" ], "description": "Person's availability.\n * `NONE` - User is available.\n * `BUSINESS_TRIP` - User is gone for a business trip.\n * `GONE_FOR_THE_DAY` - User is gone for the day.\n * `LUNCH` - User is gone for lunch.\n * `MEETING` - User is gone for a meeting.\n * `OUT_OF_OFFICE` - User is out of office.\n * `TEMPORARILY_OUT` - User is temporarily out.\n * `TRAINING` - User is gone for training.\n * `UNAVAILABLE` - User is unavailable.\n * `VACATION` - User is gone for vacation.\n" }, "untilDateTime": { "type": "string", "example": "2022-08-24T06:18:31.092Z", "description": "The date until which the personal assistant is active." }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "transferNumber": { "type": "string", "example": "+14126525012", "description": "Number to transfer to." }, "alerting": { "type": "string", "enum": [ "ALERT_ME_FIRST", "PLAY_RING_REMINDER", "NONE" ], "description": "Alert type.\n * `ALERT_ME_FIRST` - Ring the recipient first.\n * `PLAY_RING_REMINDER` - Ring reminder for the recipient.\n * `NONE` - No alert.\n" }, "alertMeFirstNumberOfRings": { "type": "number", "example": 3, "description": "Number of rings for alert type: ALERT_ME_FIRST; available range is 2-20." } } }, "preferredAnswerEndpointInformation": { "type": "object", "description": "Response object for the preferred answer endpoint information.", "example": { "endpoints": [ { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)", "isPreferredAnswerEndpoint": false }, { "id": "Y2lzY29b...", "type": "APPLICATION", "name": "Webex Desktop Application", "isPreferredAnswerEndpoint": true } ] }, "required": [ "endpoints" ], "properties": { "endpoints": { "type": "array", "items": { "$ref": "#/components/schemas/endpoints" }, "description": "Array of endpoints available to the person." } } }, "endpoints": { "type": "object", "required": [ "id", "type", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29z...", "description": "Unique identifier for the endpoint." }, "type": { "$ref": "#/components/schemas/DeviceType", "description": "Enumeration that indicates if the endpoint is of type `DEVICE` or `APPLICATION`." }, "name": { "type": "string", "example": "Cisco 8865 (Phone in reception area)", "description": "The `name` field in the response is calculated using device tag. Admins have the ability to set tags for devices. If a `name=` tag is set, for example “name=home phone“, then the `` is included in the `name` field of the API response. In this example “home phone”." } } }, "EndpointIdType": { "type": "object", "required": [ "preferredAnswerEndpointId" ], "properties": { "preferredAnswerEndpointId": { "type": "string", "example": "Y2lzY29z...", "description": "Person’s preferred answer endpoint.", "nullable": true } } }, "preferredAnswerEndpoint": { "type": "object", "description": "Details of the preferred answer endpoint.", "example": { "id": "Y2lzY29z...", "type": "DEVICE", "name": "Cisco 8865 (Phone in reception area)" }, "required": [ "id", "type", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29z...", "description": "Unique identifier for the endpoint." }, "type": { "$ref": "#/components/schemas/DeviceType" }, "name": { "type": "string", "example": "Cisco 8865 (Phone in reception area)", "description": "The name field is either set to `Webex Desktop Application` or consists of the device model followed by the device tag in parentheses. For example, when the name is `Cisco 8865 (Phone in reception area)`, `Cisco 8865` is the device model and `Phone in reception area` is the device tag." } } }, "UserDNDWebexGoOverrideGet": { "type": "object", "description": "Response object for the \"Mobile User Aware\" override setting for Do Not Disturb feature.", "example": { "enabled": true }, "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "True if the \"Mobile User Aware\" override setting for Do Not Disturb feature is enabled." } } }, "UserDNDWebexGoOverridePatch": { "type": "object", "description": "Request Payload to update the \"Mobile User Aware\" override setting for Do Not Disturb feature.", "properties": { "enabled": { "type": "boolean", "example": true, "description": "True if the \"Mobile User Aware\" override setting for Do Not Disturb feature is enabled." } } }, "CallerIdSettingsGet": { "type": "object", "description": "Response object for the caller ID settings.", "example": { "callingLineIdDeliveryBlockingEnabled": false, "connectedLineIdentificationRestrictionEnabled": false }, "required": [ "callingLineIdDeliveryBlockingEnabled", "connectedLineIdentificationRestrictionEnabled" ], "properties": { "callingLineIdDeliveryBlockingEnabled": { "type": "boolean", "example": true, "description": "If `true`, the user's name and phone number are not shown to people they call." }, "connectedLineIdentificationRestrictionEnabled": { "type": "boolean", "description": "If `true`, the user's name and phone number are not shown when receiving a call." } } }, "CallerIdSettingsPut": { "type": "object", "description": "Request Payload to update caller ID settings.", "properties": { "callingLineIdDeliveryBlockingEnabled": { "type": "boolean", "example": true, "description": "If `true`, the user's name and phone number are not shown to people they call." }, "connectedLineIdentificationRestrictionEnabled": { "type": "boolean", "description": "If `true`, the user's name and phone number are not shown when receiving a call." } } }, "SelectedCallerIdSettingsGet": { "type": "object", "description": "Response object for the selected caller ID settings.", "example": { "selected": { "type": "CALL_QUEUE", "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1", "name": "Call Queue DND", "directNumber": "+19075552859", "extension": "10079" } }, "required": [ "selected" ], "properties": { "selected": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/CallerIdType" }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1", "description": "Unique identifier of the selected caller ID config. Set for `CALL_QUEUE` & `HUNT_GROUP` caller IDs." }, "name": { "type": "string", "example": "Call Queue DND", "description": "Name of the selected caller ID." }, "directNumber": { "type": "string", "example": "+19075552859", "description": "Direct number of the selected caller ID." }, "extension": { "type": "string", "example": "10079", "description": "Extension of the selected caller ID." } }, "description": "Selected caller ID settings." } } }, "SelectedCallerIdSettingsPut": { "type": "object", "description": "Request Payload to update selected caller ID settings.", "required": [ "selected" ], "properties": { "selected": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/CallerIdType" }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc1", "description": "Unique identifier of the selected caller ID (HuntGroup / CallQueue) config. Required only when setting `CALL_QUEUE` or `HUNT_GROUP` caller IDs." }, "directNumber": { "type": "string", "example": "+19075552859", "description": "Direct number of the selected caller ID. Required only when setting ADDITIONAL_CLID as the selected caller ID." } }, "description": "Selected caller ID settings." } } }, "CallerIdType": { "type": "string", "enum": [ "DEFAULT_CLID", "ADDITIONAL_CLID", "CALL_QUEUE", "HUNT_GROUP" ], "description": " * `DEFAULT_CLID` - Caller ID is the default configured caller ID.\n * `ADDITIONAL_CLID` - Caller ID is an additional external caller ID phone number available for the user.\n * `CALL_QUEUE` - Caller ID is associated with a call queue.\n * `HUNT_GROUP` - Caller ID is associated with a hunt group.\n" }, "AvailableCallerIdSettingsGet": { "type": "object", "description": "Response object for the available caller ID settings.", "example": { "availableCallerIds": [ { "type": "HUNT_GROUP", "id": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc5", "name": "Hunt Group", "directNumber": "+19075552860", "extension": "10079" } ] }, "required": [ "availableCallerIds" ], "properties": { "availableCallerIds": { "type": "array", "items": { "$ref": "#/components/schemas/availableCallerIds" }, "description": "A List of available caller IDs." } } }, "availableCallerIds": { "type": "object", "description": "Details of an available caller ID.", "required": [ "type", "name" ], "properties": { "type": { "$ref": "#/components/schemas/CallerIdType" }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvNmU1NTVjZDAtNjM0MS00MmI4LWEyMWMtZTc1ZjIxNDQ4Mjc5", "description": "Unique identifier of the available caller ID." }, "name": { "type": "string", "example": "Hunt Group", "description": "Name of the available caller ID." }, "directNumber": { "type": "string", "example": "+19075552860", "description": "Direct number of the available caller ID." }, "extension": { "type": "string", "example": "10079", "description": "Extension of the available caller ID." } } }, "UserCallPoliciesGet": { "type": "object", "required": [ "connectedLineIdPrivacyOnRedirectedCalls" ], "properties": { "connectedLineIdPrivacyOnRedirectedCalls": { "type": "string", "enum": [ "NO_PRIVACY", "PRIVACY_FOR_EXTERNAL_CALLS", "PRIVACY_FOR_ALL_CALLS" ], "description": "Specifies the connection type to be used.\n * `NO_PRIVACY` - Connected line identification is not blocked on redirected calls.\n * `PRIVACY_FOR_EXTERNAL_CALLS` - Connected line identification is blocked on redirected calls to external numbers.\n * `PRIVACY_FOR_ALL_CALLS` - Connected line identification is blocked on all redirected calls.\n" } } }, "UserCallPoliciesPut": { "type": "object", "description": "User call policies settings request object for updating privacy configuration for redirected calls.", "properties": { "connectedLineIdPrivacyOnRedirectedCalls": { "type": "string", "enum": [ "NO_PRIVACY", "PRIVACY_FOR_EXTERNAL_CALLS", "PRIVACY_FOR_ALL_CALLS" ], "description": " * `NO_PRIVACY` - Caller sees the final destination's identity when call is redirected.\n * `PRIVACY_FOR_EXTERNAL_CALLS` - Internal callers see the final destination's identity; external callers see the original recipient's identity.\n * `PRIVACY_FOR_ALL_CALLS` - All callers see the original recipient's identity when call is redirected.\n" } } }, "ExecutiveScreeningGet": { "type": "object", "description": "Executive screening settings response object containing configuration for call screening and alert preferences.", "required": [ "enabled", "alertType", "alertAnywhereLocationEnabled", "alertMobilityLocationEnabled", "alertSharedCallAppearanceLocationEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates if executive screening is enabled." }, "alertType": { "type": "string", "enum": [ "SILENT", "RING_SPLASH" ], "description": " * `SILENT` - No audible alert is provided for executive screening.\n * `RING_SPLASH` - A short ring (splash) is used as an alert for executive screening.\n" }, "alertAnywhereLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Single Number Reach locations." }, "alertMobilityLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Webex Go locations." }, "alertSharedCallAppearanceLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Shared Call Appearance locations." } }, "example": { "enabled": true, "alertType": "SILENT", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": false } }, "ExecutiveScreeningPut": { "type": "object", "description": "Executive screening settings request object for updating call screening and alert preferences.", "properties": { "enabled": { "type": "boolean", "description": "Set to enable or disable executive screening." }, "alertType": { "type": "string", "enum": [ "SILENT", "RING_SPLASH" ], "description": " * `SILENT` - No audible alert is provided for executive screening.\n * `RING_SPLASH` - A short ring (splash) is used as an alert for executive screening.\n" }, "alertAnywhereLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Single Number Reach locations." }, "alertMobilityLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Webex Go locations." }, "alertSharedCallAppearanceLocationEnabled": { "type": "boolean", "description": "Indicates if alerts are enabled for Shared Call Appearance locations." } }, "example": { "enabled": true, "alertType": "SILENT", "alertAnywhereLocationEnabled": false, "alertMobilityLocationEnabled": false, "alertSharedCallAppearanceLocationEnabled": false } }, "ExecutiveCallFilteringGet": { "type": "object", "description": "Executive call filtering settings response object that contains the filter configuration and criteria.", "required": [ "enabled", "filterType" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether executive call filtering is enabled." }, "filterType": { "type": "string", "enum": [ "CUSTOM_CALL_FILTERS", "ALL_CALLS", "ALL_INTERNAL_CALLS", "ALL_EXTERNAL_CALLS" ], "description": " * `CUSTOM_CALL_FILTERS` - Choose this option to ensure that only specific calls are sent to the executive assistant.\n * `ALL_CALLS` - Choose this option to send both internal and external calls to the executive assistant.\n * `ALL_INTERNAL_CALLS` - Choose this option to send all internal calls to the executive assistant.\n * `ALL_EXTERNAL_CALLS` - Choose this option to send all external calls to the executive assistant.\n" }, "criteria": { "type": "array", "description": "The list of call filtering criteria configured for executive call filtering.", "items": { "type": "object", "description": "The configuration for an individual call filtering criterion.", "required": [ "id", "filterName", "source", "activationEnabled", "filterEnabled" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the filter criteria." }, "filterName": { "type": "string", "description": "Name of the criteria." }, "source": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n * `ANY_INTERNAL` - The criteria applies to any internal number.\n * `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "activationEnabled": { "type": "boolean", "description": "Controls whether this filter criteria is active. When `true`, the criteria is evaluated for incoming calls. When `false`, the criteria is completely ignored and has no effect on call filtering." }, "filterEnabled": { "type": "boolean", "description": "Controls the action when this criteria matches a call. When `true`, matching calls are filtered and will alert the executive's assistants. When `false`, matching calls are not filtered and will not alert the executive's assistants. Criteria with `filterEnabled` as `false` take precedence over other filtering criteria with `filterEnabled` as `true`, allowing exceptions where certain calls are not filtered to the executive's assistants." } } } } }, "example": { "enabled": true, "filterType": "CUSTOM_CALL_FILTERS", "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1FtVjNORE15TXc9PQ", "filterName": "VIP Callers", "source": "SELECT_PHONE_NUMBERS", "activationEnabled": true, "filterEnabled": true } ] } }, "ExecutiveCallFilteringPatch": { "type": "object", "description": "Executive call filtering settings request object for updating the filter configuration and criteria activation.", "properties": { "enabled": { "type": "boolean", "description": "Set to `true` to enable executive call filtering or `false` to disable it." }, "filterType": { "type": "string", "enum": [ "CUSTOM_CALL_FILTERS", "ALL_CALLS", "ALL_INTERNAL_CALLS", "ALL_EXTERNAL_CALLS" ], "description": " * `CUSTOM_CALL_FILTERS` - Choose this option to ensure that only specific calls are sent to the executive assistant.\n * `ALL_CALLS` - Choose this option to send both internal and external calls to the executive assistant.\n * `ALL_INTERNAL_CALLS` - Choose this option to send all internal calls to the executive assistant.\n * `ALL_EXTERNAL_CALLS` - Choose this option to send all external calls to the executive assistant.\n" }, "criteriaActivation": { "type": "array", "description": "The list of criteria activation settings to update for executive call filtering.", "items": { "type": "object", "required": [ "id", "activationEnabled" ], "description": "The activation configuration for an individual filter criterion.", "properties": { "id": { "type": "string", "description": "Unique identifier for the filter criteria." }, "activationEnabled": { "type": "boolean", "description": "Controls whether this filter criteria is active. When `true`, the criteria is evaluated for incoming calls. When `false`, the criteria is completely ignored and has no effect on call filtering." } } } } } }, "ExecutiveCallFilteringCriteriaGet": { "type": "object", "description": "Executive call filtering criteria detailed settings response object that contains the schedule, phone numbers, and routing configuration.", "required": [ "id", "filterName", "callsFrom", "filterEnabled" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the filter criteria." }, "filterName": { "type": "string", "description": "Name of the criteria." }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with this criteria." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": " * `businessHours` - The schedule type that specifies the business or working hours during the day.\n * `holidays` - The schedule type that specifies the day when your organization is not open.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "GROUP" ], "description": " * `PEOPLE` - The schedule level that specifies that criteria is of People level.\n * `GROUP` - The schedule level that specifies that criteria is of Group (Location) level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n * `ANY_INTERNAL` - The criteria applies to any internal number.\n * `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates if the criteria applies to anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates if the criteria applies to unavailable callers." }, "phoneNumbers": { "type": "array", "description": "The list of phone numbers that this filtering criteria applies to, when `callsFrom` is set to `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to based on `callsFrom` selection." } }, "filterEnabled": { "type": "boolean", "description": "Controls the action when this criteria matches a call. When `true`, matching calls are filtered and will alert the executive's assistants. When `false`, matching calls are not filtered and will not alert the executive's assistants. Criteria with `filterEnabled` as `false` take precedence over other filtering criteria with `filterEnabled` as `true`, allowing exceptions where certain calls are not filtered to the executive's assistants." }, "callsToNumbers": { "type": "array", "description": "List of numbers for the executive that will match the criteria when called. This may include the executive’s primary number and/or extension, as well as secondary (alternate) numbers (and associated extensions). If the list is empty, any number or extension for the executive matches the criteria when called. If the list is not empty, only the specified numbers and their extensions match the criteria.", "items": { "type": "object", "description": "Executive phone number that will match the criteria when called.", "properties": { "type": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE" ], "description": " * `PRIMARY` - Number is assigned as primary to executive.\n * `ALTERNATE` - Number is assigned as alternate (secondary) to the executive.\n" }, "phoneNumber": { "type": "string", "description": "The phone number assigned to the executive that will be used to match criteria." } } } } }, "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL2RHVnpkRjltYVd4MFpYST0", "filterName": "VIP Callers", "scheduleName": "Business Hours", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+14085551234", "+14085551235" ], "filterEnabled": true, "callsToNumbers": [ { "type": "PRIMARY", "phoneNumber": "+14085556789" } ] } }, "ExecutiveCallFilteringCriteriaPatch": { "type": "object", "description": "Executive call filtering criteria settings request object for updating detailed filter rules and routing configuration.", "properties": { "scheduleName": { "type": "string", "description": "Name of the schedule associated with this criteria." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": " * `businessHours` - The schedule type that specifies the business or working hours during the day.\n * `holidays` - The schedule type that specifies the day when your organization is not open.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "GROUP" ], "description": " * `PEOPLE` - The schedule level that specifies that criteria is of People level.\n * `GROUP` - The schedule level that specifies that criteria is of Group (Location) level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n * `ANY_INTERNAL` - The criteria applies to any internal number.\n * `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Set to enable or disable the criteria for anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Set to enable or disable the criteria for unavailable callers." }, "phoneNumbers": { "type": "array", "description": "The list of phone numbers that this filtering criteria applies to, when `callsFrom` is set to `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to based on `callsFrom` selection." } }, "filterEnabled": { "type": "boolean", "description": "Controls the action when this criteria matches a call. When `true`, matching calls are filtered and will alert the executive's assistants. When `false`, matching calls are not filtered and will not alert the executive's assistants. Criteria with `filterEnabled` as `false` take precedence over other filtering criteria with `filterEnabled` as `true`, allowing exceptions where certain calls are not filtered to the executive's assistants." }, "callsToNumbers": { "type": "array", "description": "List of numbers for the executive that will match the criteria when called. This may include the executive’s primary number and/or extension, as well as secondary (alternate) numbers (and associated extensions). If the list is empty, any number or extension for the executive matches the criteria when called. If the list is not empty, only the specified numbers and their extensions match the criteria.", "items": { "type": "object", "description": "Executive phone number that will match the criteria when called.", "properties": { "type": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE" ], "description": " * `PRIMARY` - Number is assigned as primary to executive.\n * `ALTERNATE` - Number is assigned as alternate (secondary) to the executive.\n" }, "phoneNumber": { "type": "string", "description": "The phone number assigned to the executive that will be used to match criteria." } } } } } }, "ExecutiveAlertGet": { "type": "object", "required": [ "alertingMode", "rolloverWaitTimeInSecs", "clidNameMode", "clidPhoneNumberMode" ], "properties": { "alertingMode": { "type": "string", "enum": [ "SEQUENTIAL", "SIMULTANEOUS" ], "description": " * `SEQUENTIAL` - Alerts assistants one at a time in the defined order.\n * `SIMULTANEOUS` - Alerts all assistants at the same time.\n" }, "nextAssistantNumberOfRings": { "type": "integer", "description": "Number of rings before alerting the next assistant when `alertingMode` is `SEQUENTIAL`." }, "rolloverEnabled": { "type": "boolean", "description": "Controls whether the rollover timer (`rolloverWaitTimeInSecs`) is enabled. When set to `true`, rollover will trigger after the timer expires, even if assistants are still available. When `false`, rollover only occurs when no assistants remain." }, "rolloverAction": { "type": "string", "enum": [ "VOICE_MESSAGING", "NO_ANSWER_PROCESSING", "FORWARD" ], "description": "Specifies what happens when rollover is triggered.\n * `VOICE_MESSAGING` - The call is sent to the executive's voicemail.\n * `FORWARD` - The call is forwarded to the specified destination (`rolloverForwardToPhoneNumber`).\n * `NO_ANSWER_PROCESSING` - The call is sent to no answer processing which may trigger executive services such as call forwarding or voicemail.\nRollover is always triggered when no assistants remain for a filtered call. If the rollover timer is enabled, rollover can also be triggered when the timer expires, even if assistants are still available." }, "rolloverForwardToPhoneNumber": { "type": "string", "description": "Phone number to forward calls to when rollover action is set to `FORWARD`." }, "rolloverWaitTimeInSecs": { "type": "integer", "description": "Time in seconds to wait before applying the rollover action when `rolloverEnabled` is `true`." }, "clidNameMode": { "type": "string", "enum": [ "EXECUTIVE_ORIGINATOR", "ORIGINATOR_EXECUTIVE", "EXECUTIVE", "ORIGINATOR", "CUSTOM" ], "description": "Controls how Caller ID name is displayed on assistant's phone.\n * `EXECUTIVE_ORIGINATOR` - Display executive name followed by caller name.\n * `ORIGINATOR_EXECUTIVE` - Display caller name followed by executive name.\n * `EXECUTIVE` - Display only executive name.\n * `ORIGINATOR` - Display only caller name.\n * `CUSTOM` - Display a custom name.\n" }, "customCLIDName": { "type": "string", "description": "Custom caller ID name to display when `clidNameMode` is set to `CUSTOM` (deprecated)." }, "customCLIDNameInUnicode": { "type": "string", "description": "Unicode Custom caller ID name to display when `clidNameMode` is set to `CUSTOM`." }, "clidPhoneNumberMode": { "type": "string", "enum": [ "EXECUTIVE", "ORIGINATOR", "CUSTOM" ], "description": "Controls which Caller ID phone number is displayed on assistant's phone.\n * `EXECUTIVE` - Display executive's phone number.\n * `ORIGINATOR` - Display caller's phone number.\n * `CUSTOM` - Display a custom phone number.\n" }, "customCLIDPhoneNumber": { "type": "string", "description": "Custom caller ID phone number to display on assistant's phone when `clidPhoneNumberMode` is set to `CUSTOM`." } }, "example": { "alertingMode": "SEQUENTIAL", "nextAssistantNumberOfRings": 3, "rolloverEnabled": true, "rolloverAction": "VOICE_MESSAGING", "rolloverForwardToPhoneNumber": "+14085267209", "rolloverWaitTimeInSecs": 60, "clidNameMode": "EXECUTIVE_ORIGINATOR", "customCLIDName": "John Anderson", "customCLIDNameInUnicode": "", "clidPhoneNumberMode": "EXECUTIVE", "customCLIDPhoneNumber": "+14085267208" } }, "ExecutiveAlertPut": { "type": "object", "properties": { "alertingMode": { "type": "string", "enum": [ "SEQUENTIAL", "SIMULTANEOUS" ], "description": " * `SEQUENTIAL` - Alerts assistants one at a time in the defined order.\n * `SIMULTANEOUS` - Alerts all assistants at the same time.\n" }, "nextAssistantNumberOfRings": { "type": "integer", "description": "Number of rings before alerting the next assistant when `alertingMode` is `SEQUENTIAL`." }, "rolloverEnabled": { "type": "boolean", "description": "Controls whether the rollover timer (`rolloverWaitTimeInSecs`) is enabled. When set to `true`, rollover will trigger after the timer expires, even if assistants are still available. When `false`, rollover only occurs when no assistants remain." }, "rolloverAction": { "type": "string", "enum": [ "VOICE_MESSAGING", "NO_ANSWER_PROCESSING", "FORWARD" ], "description": "Specifies what happens when rollover is triggered.\n * `VOICE_MESSAGING` - The call is sent to the executive's voicemail.\n * `FORWARD` - The call is forwarded to the specified destination (`rolloverForwardToPhoneNumber`).\n * `NO_ANSWER_PROCESSING` - The call is sent to no answer processing which may trigger executive services such as call forwarding or voicemail.\nRollover is always triggered when no assistants remain for a filtered call. If the rollover timer is enabled, rollover can also be triggered when the timer expires, even if assistants are still available." }, "rolloverForwardToPhoneNumber": { "type": "string", "description": "Phone number to forward calls to when rollover action is set to `FORWARD`." }, "rolloverWaitTimeInSecs": { "type": "integer", "description": "Time in seconds to wait before applying the rollover action when `rolloverEnabled` is `true`." }, "clidNameMode": { "type": "string", "enum": [ "EXECUTIVE_ORIGINATOR", "ORIGINATOR_EXECUTIVE", "EXECUTIVE", "ORIGINATOR", "CUSTOM" ], "description": "Controls how Caller ID name is displayed on assistant's phone.\n * `EXECUTIVE_ORIGINATOR` - Display executive name followed by caller name.\n * `ORIGINATOR_EXECUTIVE` - Display caller name followed by executive name.\n * `EXECUTIVE` - Display only executive name.\n * `ORIGINATOR` - Display only caller name.\n * `CUSTOM` - Display a custom name.\n" }, "customCLIDName": { "type": "string", "description": "Custom caller ID name to display when `clidNameMode` is set to `CUSTOM` (deprecated)." }, "customCLIDNameInUnicode": { "type": "string", "description": "Unicode Custom caller ID name to display when `clidNameMode` is set to `CUSTOM`." }, "clidPhoneNumberMode": { "type": "string", "enum": [ "EXECUTIVE", "ORIGINATOR", "CUSTOM" ], "description": "Controls which Caller ID phone number is displayed on assistant's phone.\n * `EXECUTIVE` - Display executive's phone number.\n * `ORIGINATOR` - Display caller's phone number.\n * `CUSTOM` - Display a custom phone number.\n" }, "customCLIDPhoneNumber": { "type": "string", "description": "Custom caller ID phone number to display on assistant's phone when `clidPhoneNumberMode` is set to `CUSTOM`." } } }, "BargeInInfo": { "type": "object", "required": [ "enabled", "toneEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Indicates if the Barge In feature is enabled." }, "toneEnabled": { "type": "boolean", "description": "Indicates that a stutter dial tone will be played when a virtual line is barging in on the active call." } } }, "BargeInPut": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to enable or disable the Barge In feature." }, "toneEnabled": { "type": "boolean", "description": "Set to enable or disable a stutter dial tone being played when a virtual line is barging in on the active call." } } }, "DoNotDisturbGet": { "type": "object", "description": "Do Not Disturb settings response object containing DND configuration for the user.", "properties": { "enabled": { "type": "boolean", "description": "Indicates if Do Not Disturb is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "Indicates if ring splash is enabled while DND is active." }, "webexGoOverrideEnabled": { "type": "boolean", "description": "Indicates if Webex Go override is enabled while DND is active." } }, "example": { "enabled": true, "ringSplashEnabled": false, "webexGoOverrideEnabled": false } }, "DoNotDisturbPut": { "type": "object", "required": [ "webexGoOverrideEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Do Not Disturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "Enables a Ring Reminder to play a brief tone on your desktop phone when you receive incoming calls." }, "webexGoOverrideEnabled": { "type": "boolean", "description": "`true` if a mobile device will still ring even if Do Not Disturb is enabled." } } }, "GetUserCallCaptionsObject": { "type": "object", "required": [ "userClosedCaptionsEnabled", "userTranscriptsEnabled", "locationClosedCaptionsEnabled", "locationTranscriptsEnabled", "useLocationSettingsEnabled" ], "properties": { "userClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "User-level closed captions are enabled or disabled." }, "userTranscriptsEnabled": { "type": "boolean", "example": true, "description": "User-level transcripts are enabled or disabled." }, "locationClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Location closed captions are enabled or disabled. If `useOrgSettingsEnabled` is `true`, these are organization-level settings. Otherwise, location-level settings are used." }, "locationTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Location transcripts are enabled or disabled. If `useOrgSettingsEnabled` is `true`, these are organization-level settings. Otherwise, location-level settings are used." }, "useLocationSettingsEnabled": { "type": "boolean", "example": true, "description": "If `useLocationSettingsEnabled` is `true`, location settings will control the user's closed captions and transcripts. Otherwise, user-level settings are used." } } }, "UserScheduleListGetResponse": { "type": "object", "description": "Lists all the schedules for the authenticated user. Also includes LOCATION level schedules for the user's location.", "example": { "schedules": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "name": "Schedule1", "type": "businessHours", "level": "PEOPLE" }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVkdWaGJTQkliMnhwWkdGNQ", "name": "Team Holiday", "type": "holidays", "level": "LOCATION" } ] }, "properties": { "schedules": { "type": "array", "description": "List of schedules", "items": { "$ref": "#/components/schemas/UserSchedule" } } } }, "UserSchedule": { "type": "object", "description": "Individual Schedule configuration.", "required": [ "id", "name", "type", "level" ], "properties": { "id": { "type": "string", "description": "Unique identifier for the schedule.", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4" }, "name": { "type": "string", "description": "Name of the schedule.", "example": "Schedule1" }, "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": " * `businessHours` - The schedule is for business hours.\n * `holidays` - The schedule is for holidays.\n" }, "level": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" } } }, "UserLocationScheduleGetResponse": { "type": "object", "description": "Lists the schedule and it's events' details for the requested (Location) Schedule. LOCATION level schedule for the user's location.", "required": [ "id", "type", "name" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "type": "businessHours", "name": "Schedule1", "events": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "EVENTNAME", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUm5KcFpHRjVJREk9", "name": "Friday 2", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] }, "properties": { "id": { "type": "string", "description": "Unique identifier for the schedule.", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4" }, "name": { "type": "string", "description": "Name of the schedule.", "example": "Schedule1" }, "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": " * `businessHours` - The schedule is for business hours.\n * `holidays` - The schedule is for holidays.\n" }, "events": { "type": "array", "description": "List of events in the schedule.", "items": { "$ref": "#/components/schemas/UserLocationScheduleEvent" } } } }, "UserLocationScheduleEvent": { "type": "object", "description": "Schedule Event configuration.", "required": [ "id", "name", "startDate", "endDate", "allDayEnabled" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "Event1 Name", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RXOXVaR0Y1VTJOb1pXUjFiR1U", "description": "A unique identifier for the schedule event." }, "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject" } } }, "UserScheduleGetResponse": { "type": "object", "description": "Lists the schedule and it's events' details for the requested Schedule.", "required": [ "id", "type", "name" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4", "type": "businessHours", "name": "Schedule1", "events": [ { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "EVENTNAME", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurDaily": { "recurInterval": 1 } } }, { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUm5KcFpHRjVJREk9", "name": "Friday 2", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] }, "properties": { "id": { "type": "string", "description": "Unique identifier for the schedule.", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVTJOb1pXUjFiR1V4" }, "name": { "type": "string", "description": "Name of the schedule.", "example": "Schedule1" }, "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": " * `businessHours` - The schedule is for business hours.\n * `holidays` - The schedule is for holidays.\n" }, "events": { "type": "array", "description": "List of events in the schedule.", "items": { "$ref": "#/components/schemas/UserScheduleEvent" } } } }, "UserSchedulePatchRequest": { "type": "object", "description": "Modify the schedule name and / or it's events' details for the requested Schedule.", "required": [ "name" ], "example": { "name": "Schedule1", "events": [ { "name": "EVENT NAME", "newName": "Event Name", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurDaily": { "recurInterval": 1 } } }, { "name": "Friday 2", "newName": "Weekly Event", "startDate": "2020-10-30", "endDate": "2020-10-30", "startTime": "13:00", "endTime": "17:00", "allDayEnabled": false, "recurrence": { "recurForEver": true, "recurWeekly": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": false } } } ] }, "properties": { "name": { "type": "string", "description": "Name of the schedule.", "example": "Schedule1" }, "events": { "type": "array", "description": "List of events in the schedule.", "items": { "$ref": "#/components/schemas/UserScheduleEventPatch" } } } }, "UserScheduleEvent": { "type": "object", "description": "Schedule Event configuration.", "required": [ "id", "name", "startDate", "endDate", "allDayEnabled" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUlZaRlRsUk9RVTFG", "name": "Event1 Name", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RXOXVaR0Y1VTJOb1pXUjFiR1U", "description": "A unique identifier for the schedule event." }, "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not." }, "recurrence": { "$ref": "#/components/schemas/UserScheduleRecurrenceObject" } } }, "UserScheduleEventPatch": { "type": "object", "description": "Modify the Schedule Event configuration.", "required": [ "name", "startDate", "endDate", "allDayEnabled" ], "example": { "name": "EVENT", "newName": "Event Name", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, "properties": { "name": { "type": "string", "example": "EVENT", "description": "Name for the event." }, "newName": { "type": "string", "example": "Event Name", "description": "New Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not." }, "recurrence": { "$ref": "#/components/schemas/UserScheduleRecurrenceObject" } } }, "UserScheduleEventPostRequest": { "type": "object", "description": "Modify the Schedule Event configuration.", "required": [ "name", "startDate", "endDate", "allDayEnabled" ], "example": { "name": "EVENT", "startDate": "2023-02-06", "endDate": "2023-02-06", "allDayEnabled": true, "recurrence": { "recurForEver": true, "recurYearlyByDay": { "day": "MONDAY", "week": "FIRST", "month": "FEBRUARY" } } }, "properties": { "name": { "type": "string", "example": "EVENT", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not." }, "recurrence": { "$ref": "#/components/schemas/UserScheduleRecurrenceObject" } } }, "RecurrenceObject": { "type": "object", "properties": { "recurForEver": { "type": "boolean", "description": "Flag to indicate if event will recur forever." }, "recurEndDate": { "type": "string", "example": "2021-11-30", "description": "End date of recurrence." }, "recurWeekly": { "$ref": "#/components/schemas/RecurWeeklyObject", "description": "Weekly recurrence definition." }, "recurYearlyByDate": { "$ref": "#/components/schemas/RecurYearlyByDateObject", "description": "Recurrence definition yearly by date." }, "recurYearlyByDay": { "$ref": "#/components/schemas/RecurYearlyByDayObject", "description": "Recurrence definition yearly by day." } } }, "UserScheduleRecurrenceObject": { "type": "object", "description": "Recurrence definition for a user's schedule event.", "example": { "recurForEver": true, "recurEndDate": "2020-03-31", "recurDaily": { "recurInterval": 1 }, "recurWeekly": { "sunday": false, "monday": true, "tuesday": false, "wednesday": true, "thursday": false, "friday": true, "saturday": false } }, "properties": { "recurForEver": { "type": "boolean", "example": true, "description": "Flag to indicate if event will recur forever." }, "recurEndDate": { "type": "string", "example": "2021-11-30", "description": "End date of recurrence." }, "recurEndOccurrence": { "type": "integer", "example": 2, "description": "Number of occurrences after which the event will stop recurring." }, "recurDaily": { "type": "object", "example": { "recurInterval": 1 }, "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Recurring interval in days. The number of days after the start when an event will repeat. Repetitions cannot overlap." } }, "description": "Specifies the number of days between the start of each recurrence and is not allowed with `recurWeekly`." }, "recurWeekly": { "$ref": "#/components/schemas/RecurWeeklyObject" } } }, "RecurWeeklyObject": { "type": "object", "required": [ "sunday" ], "properties": { "sunday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Sunday." }, "monday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Monday." }, "tuesday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Tuesday." }, "wednesday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Wednesday." }, "thursday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Thursday." }, "friday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Friday." }, "saturday": { "type": "boolean", "example": true, "description": "Frequency of occurrence in weeks and select the day - Saturday." } } }, "RecurYearlyByDateObject": { "type": "object", "required": [ "dayOfMonth", "month" ], "properties": { "dayOfMonth": { "type": "number", "example": 1, "description": "Schedule the event on a specific day of the month." }, "month": { "type": "string", "enum": [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER" ], "description": "Schedule the event on a specific month of the year." } } }, "RecurYearlyByDayObject": { "type": "object", "required": [ "day", "week", "month" ], "properties": { "day": { "type": "string", "enum": [ "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" ], "description": "Schedule the event on a specific day." }, "week": { "type": "string", "enum": [ "FIRST", "SECOND", "THIRD", "FOURTH", "LAST" ], "description": "Schedule the event on a specific week." }, "month": { "type": "string", "enum": [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER" ], "description": "Schedule the event on a specific month." } } }, "UserSchedulePostRequest": { "type": "object", "description": "Request body for creating a new user schedule.", "required": [ "type", "name" ], "properties": { "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "name": { "type": "string", "example": "Schedule ABC", "description": "Unique name for the schedule." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleEventObject" }, "description": "List of schedule events." } } }, "ScheduleEventObject": { "type": "object", "required": [ "name", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start date of event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End date of event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event. Mandatory if the event is not all day." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event. Mandatory if the event is not all day." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not. Mandatory if the `startTime` and `endTime` are not defined." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject", "description": "Recurrence definition." } } }, "PriorityAlertGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Priority Alert feature is enabled." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/PriorityAlertCriteria" }, "description": "A list of criteria specifying conditions when priority alert is in effect." } } }, "PriorityAlertGetCriteriaObject": { "type": "object", "description": "Individual Priority Alert Criterion configuration.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "notificationEnabled": false }, "properties": { "id": { "type": "string", "description": "Unique identifier for the priority alert criterion.", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with the criteria.", "example": "CustomHoliday(Group)" }, "notificationEnabled": { "type": "boolean", "description": "Determines whether priority alerting is applied for calls matching this criteria. If `true`, priority alerting is applied. If `false`, this criteria acts as a 'Don't Alert' rule, preventing priority alerting. Criteria with `notificationEnabled` set to `false` (Don't Alert) take precedence over criteria with `notificationEnabled` set to `true` (Alert).", "example": false }, "source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "description": "Type of the source.\n * `ALL_NUMBERS` - User wants to be notified for calls from Any Phone Number.\n * `SPECIFIC_NUMBERS` - User wants to be notified for calls from Select Phone Numbers.\n" } } }, "PriorityAlertPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "`true` if the Priority Alert feature is enabled." } } }, "PriorityAlertCriteriaGet": { "type": "object", "description": "Priority Alert individual Criterion detailed settings response object containing schedule, phone numbers, and notification configurations.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "notificationEnabled": false }, "properties": { "id": { "type": "string", "description": "Unique identifier for the priority alert criteria.", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with the criteria.", "example": "CustomHoliday(Group)" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria.", "example": false }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria.", "example": false }, "phoneNumbers": { "type": "array", "description": "List of phone numbers that this criteria applies to.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "notificationEnabled": { "type": "boolean", "description": "Determines whether priority alerting is applied for calls matching this criteria. If `true`, priority alerting is applied. If `false`, this criteria acts as a 'Don't Alert' rule, preventing priority alerting. Criteria with `notificationEnabled` set to `false` (Don't Alert) take precedence over criteria with `notificationEnabled` set to `true` (Alert).", "example": false } } }, "PriorityAlertCriteriaPatch": { "type": "object", "example": { "scheduleName": "Holiday V2", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "notificationEnabled": false, "phoneNumbers": [ "+16177817766" ] }, "description": "Request body for updating priority alert criteria settings.", "properties": { "scheduleName": { "type": "string", "description": "Name of the schedule to be associated with the criteria.", "example": "Holiday V2" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "phoneNumbers": { "type": "array", "description": "List of phone numbers to update for this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "notificationEnabled": { "type": "boolean", "description": "Determines whether priority alerting is applied for calls matching this criteria. If `true`, priority alerting is applied. If `false`, this criteria acts as a 'Don't Alert' rule, preventing priority alerting. Criteria with `notificationEnabled` set to `false` (Don't Alert) take precedence over criteria with `notificationEnabled` set to `true` (Alert).", "example": false } } }, "CallNotifyGet": { "type": "object", "description": "User call notify settings response object containing configurations of Criteria and whether CallNotify is enabled.", "example": { "enabled": false, "emailAddress": "callnotify@example.com", "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "notificationEnabled": false } ] }, "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the call notify feature is enabled for the user." }, "emailAddress": { "type": "string", "description": "Email Address to which call notifications to be received." }, "criteria": { "type": "array", "description": "List of Call Notify Criteria configured by the user.", "items": { "$ref": "#/components/schemas/CallNotifyCriteriaListGet" } } } }, "CallNotifyCriteriaListGet": { "type": "object", "description": "User call notify criteria response object containing configurations of Criteria.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "notificationEnabled": false }, "properties": { "id": { "type": "string", "description": "Unique identifier for the call notify criteria.", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with the criteria.", "example": "CustomHoliday(Group)" }, "source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "description": "Type of the source.\n * `ALL_NUMBERS` - User wants to be notified for calls from Any Phone Number.\n * `SPECIFIC_NUMBERS` - User wants to be notified for calls from Select Phone Numbers.\n" }, "notificationEnabled": { "type": "boolean", "description": "Determines whether call notify is applied for calls matching this criteria. If `true`, call notification is applied. If `false`, this criteria acts as a 'Don't Notify Me' rule, preventing call notification. Criteria with `notificationEnabled` set to `false` (Don't Notify Me) take precedence over criteria with `notificationEnabled` set to `true` (Notify Me)." } } }, "CallNotifyPatch": { "type": "object", "description": "Request body for updating call notify settings.", "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the call notify feature should be enabled or disabled for the user.", "example": false }, "emailAddress": { "type": "string", "description": "Email Address to which call notifications to be received.", "example": "callnotify@example.com" } }, "required": [ "enabled" ] }, "CallNotifyCriteriaPatch": { "type": "object", "description": "Request body for updating call notify criteria settings.", "properties": { "scheduleName": { "type": "string", "description": "Name of the schedule to be associated with the criteria.", "example": "Holiday V2" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "phoneNumbers": { "type": "array", "description": "List of phone numbers to update for this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "notificationEnabled": { "type": "boolean", "description": "Determines whether call notification is applied for calls matching this criteria. If `true`, call notify is applied. If `false`, this criteria acts as a 'Don't Notify Me' rule, preventing call notification. Criteria with `notificationEnabled` set to `false` (Don't Notify Me) take precedence over criteria with `notificationEnabled` set to `true` (Notify).", "example": false } } }, "CallNotifyCriteriaGet": { "type": "object", "description": "Call Notify individual Criterion detailed settings response object containing schedule, phone numbers, and notification configurations.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "notificationEnabled": false }, "properties": { "id": { "type": "string", "description": "Unique identifier for the call notify criteria.", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with the criteria.", "example": "CustomHoliday(Group)" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria.", "example": false }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria.", "example": false }, "phoneNumbers": { "type": "array", "description": "List of phone numbers that this criteria applies to.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "notificationEnabled": { "type": "boolean", "description": "Determines whether call notify is applied for calls matching this criteria. If `true`, call notification is applied. If `false`, this criteria acts as a 'Don't Notify Me' rule, preventing call notification. Criteria with `notificationEnabled` set to `false` (Don't Notify Me) take precedence over criteria with `notificationEnabled` set to `true` (Notify Me).", "example": false } } }, "SelectiveAcceptCallCriteriaPost": { "type": "object", "required": [ "callsFrom", "acceptEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The schedule type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveAccept", "description": "Accept calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions, phone numbers are not returned in E.164 format. This will be supported in a future update." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if selective call accept is enabled." } } }, "SelectiveAcceptCallCriteriaPatch": { "type": "object", "required": [ "callsFrom", "acceptEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "Schedule Type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveAccept", "description": "Accept calls from selected." }, "anonymousCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable the selective accept criteria." } } }, "SelectiveAcceptCallCriteriaGet": { "type": "object", "required": [ "callsFrom", "acceptEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the Schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "Schedule Type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "Schedule Level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveAccept", "description": "Accept calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if selective call accept is enabled." } } }, "SelectiveAcceptCallSettingPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "indicates whether selective accept is enabled or not." } } }, "SelectiveAcceptCallSettingsGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Accept feature is enabled." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteria" }, "description": "A list of criteria specifying conditions when selective accept is in effect." } }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "acceptEnabled": true } ] } }, "SelectiveAcceptCallCriteria": { "type": "object", "required": [ "id", "scheduleName", "source", "acceptEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective reject is in effect." }, "source": { "$ref": "#/components/schemas/SelectiveAcceptCallSource", "description": "If criteria are applicable for calls from any phone number, specific phone number or forwarded ones." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "This setting specifies to choose to accept or not to accept the calls that fit within these parameters." } } }, "LocationAssignedNumbersGet": { "type": "object", "description": "Response object containing the list of assigned phone numbers/extension in the user's location.", "properties": { "phoneNumbers": { "type": "array", "description": "List of assigned phone numbers/extension in user's location.", "items": { "$ref": "#/components/schemas/LocationAssignedNumber" } } }, "example": { "phoneNumbers": [ { "phoneNumber": "+12145551234", "extension": "1234", "state": "ACTIVE", "phoneNumberType": "PRIMARY", "tollFreeNumber": false } ] } }, "LocationAssignedNumber": { "type": "object", "description": "Details of a assigned phone number/extension in the user's location.", "properties": { "phoneNumber": { "type": "string", "description": "The phone number in E.164 format." }, "extension": { "type": "string", "description": "The extension." }, "state": { "type": "string", "enum": [ "ACTIVE", "INACTIVE" ], "description": " * `ACTIVE` - Phone number is in the active state.\n * `INACTIVE` - Phone number is in the inactive state.\n" }, "phoneNumberType": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE", "FAX" ], "description": "* `PRIMARY` - A direct phone number.\n* `ALTERNATE` - An alternate phone number.\n* `FAX` - A FAX number.\n" }, "tollFreeNumber": { "type": "boolean", "description": "Indicate if the number is toll free." }, "owner": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/NumberOwnerType" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the phone number/extension owner. This field is present only for type `PEOPLE` and `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the phone number/extension owner. This field is present only for type `PEOPLE` and `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "Test", "description": "Display Name of the phone number/extension owner." } }, "description": "The owner details." } } }, "NumberOwnerType": { "type": "string", "enum": [ "PLACE", "PEOPLE", "VIRTUAL_LINE", "AUTO_ATTENDANT", "CALL_QUEUE", "GROUP_PAGING", "HUNT_GROUP", "VOICE_MESSAGING", "OFFICE_ANYWHERE", "CONTACT_CENTER_LINK", "CONTACT_CENTER_ADAPTER", "ROUTE_LIST", "VOICEMAIL_GROUP", "COLLABORATE_BRIDGE" ], "description": " * `PLACE` - PSTN phone number's owner is a workspace.\n * `PEOPLE` - PSTN phone number's owner is a person.\n * `VIRTUAL_LINE` - PSTN phone number's owner is a Virtual Profile.\n * `AUTO_ATTENDANT` - PSTN phone number's owner is an auto-attendant.\n * `CALL_QUEUE` - PSTN phone number's owner is a call queue.\n * `GROUP_PAGING` - PSTN phone number's owner is a group paging.\n * `HUNT_GROUP` - PSTN phone number's owner is a hunt group.\n * `VOICE_MESSAGING` - PSTN phone number's owner is a voice messaging.\n * `OFFICE_ANYWHERE` - PSTN phone number's owner is a Single Number Reach.\n * `CONTACT_CENTER_LINK` - PSTN phone number's owner is a Contact Center link.\n * `CONTACT_CENTER_ADAPTER` - PSTN phone number's owner is a Contact Center adapter.\n * `ROUTE_LIST` - PSTN phone number's owner is a route list.\n * `VOICEMAIL_GROUP` - PSTN phone number's owner is a voicemail group.\n * `COLLABORATE_BRIDGE` - PSTN phone number's owner is a collaborate bridge.\n" }, "SelectiveCallForwardCriteriaPatch": { "type": "object", "example": { "forwardToPhoneNumber": "+16175550100", "destinationVoicemailEnabled": false, "scheduleName": "Holiday V2", "scheduleType": "businessHours", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "phoneNumbers": [ "+16177817766" ], "anonymousCallersEnabled": true, "unavailableCallersEnabled": false, "forwardEnabled": true }, "description": "Request body for updating selective call forwarding criteria settings.", "properties": { "forwardToPhoneNumber": { "type": "string", "description": "The phone number to which calls are forwarded when the criteria conditions are met.", "example": "+16175550100" }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates whether calls that meet the criteria are forwarded to the destination phone number's voicemail.", "example": false }, "scheduleName": { "type": "string", "description": "Name of the schedule to be associated with the criteria.", "example": "Holiday V2" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n* `ANY_INTERNAL` - The criteria applies to any internal number.\n* `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "phoneNumbers": { "type": "array", "description": "List of phone numbers to update for this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "forwardEnabled": { "type": "boolean", "description": "Determines whether selective call forwarding is applied for calls matching this criteria. If `true`, the selective forwarding is applied. If `false`, this criteria acts as a 'Don't Forward' rule, preventing selectively forwarding of the calls. Criteria with `forwardEnabled` set to `false` (Don't Forward) take precedence over criteria with `forwardEnabled` set to `true` (Forward).", "example": false } } }, "SelectiveCallForwardCriteriaGet": { "type": "object", "description": "Selective Call Forwarding individual Criterion detailed settings response object.", "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "forwardToPhoneNumber": "+16175550100", "destinationVoicemailEnabled": false, "scheduleName": "CustomHoliday(Group)", "scheduleType": "holidays", "scheduleLevel": "PEOPLE", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": false, "unavailableCallersEnabled": false, "phoneNumbers": [ "+16177817765" ], "forwardEnabled": false }, "properties": { "id": { "type": "string", "description": "Unique identifier for the priority alert criteria.", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY" }, "forwardToPhoneNumber": { "type": "string", "description": "The phone number to which calls are forwarded when the criteria conditions are met.", "example": "+16175550100" }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates whether calls that meet the criteria are forwarded to the destination phone number's voicemail.", "example": false }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with the criteria.", "example": "CustomHoliday(Group)" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": "Specifies the type of callsFrom, categorizing incoming data based on callsFrom types or numbers that match the current criteria.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n* `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n* `ANY_INTERNAL` - The criteria applies to any internal number.\n* `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Indicates whether anonymous callers are included in this criteria.", "example": false }, "unavailableCallersEnabled": { "type": "boolean", "description": "Indicates whether unavailable callers are included in this criteria.", "example": false }, "phoneNumbers": { "type": "array", "description": "List of phone numbers that this criteria applies to.", "items": { "type": "string", "description": "Phone number that the criteria applies to." } }, "forwardEnabled": { "type": "boolean", "description": "Determines whether selective call forwarding is applied for calls matching this criteria. If `true`, the selective forwarding is applied. If `false`, this criteria acts as a 'Don't Forward' rule, preventing selectively forwarding of the calls. Criteria with `forwardEnabled` set to `false` (Don't Forward) take precedence over criteria with `forwardEnabled` set to `true` (Forward).", "example": false } } }, "SelectiveForwardCallSettingsGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Forward feature is enabled." }, "defaultPhoneNumberToForward": { "type": "string", "description": "The phone number to which calls are forwarded by default when the criteria conditions are met.", "example": "+16175550100" }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded.", "example": false }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates whether calls that meet the criteria are forwarded to the destination phone number's voicemail.", "example": false }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveForwardCallCriteria" }, "description": "A list of criteria specifying conditions when selective accept is in effect." } }, "example": { "enabled": true, "defaultPhoneNumberToForward": "+16175550100", "ringReminderEnabled": false, "destinationVoicemailEnabled": false, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "forwardEnabled": true } ] } }, "SelectiveForwardCallCriteria": { "type": "object", "required": [ "id", "scheduleName", "source", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the sequential ring is in effect." }, "source": { "$ref": "#/components/schemas/SourceForSelectiveForward", "description": "Criteria are applicable for calls from any phone number or a specific phone number." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SelectiveForwardCallSettingPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Forward feature is enabled." }, "defaultPhoneNumberToForward": { "type": "string", "example": "+1934898988", "description": "Enter the phone number to forward calls to during this schedule." }, "ringReminderEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables a ring reminder for such calls." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables forwarding for all calls to voicemail. This option is only available for internal phone numbers or extensions." } } }, "SelectiveRejectCallCriteriaPost": { "type": "object", "required": [ "callsFrom", "rejectEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The schedule type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFrom", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable rejection." } } }, "SelectiveRejectCallCriteriaPatch": { "type": "object", "required": [ "callsFrom", "rejectEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "schedule type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFrom", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable rejection." } } }, "SelectiveRejectCallCriteriaGet": { "type": "object", "required": [ "callsFrom", "rejectEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The schedule type." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "The schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFrom", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable rejection." } } }, "SelectiveRejectCallSettingPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "if `true`, selective reject is enabled." } } }, "SelectiveRejectCallSettingsGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the selective reject feature is enabled." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveRejectCallCriteria" }, "description": "A list of criteria specifying conditions when selective reject is in effect." } }, "example": { "enabled": true, "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "CustomHoliday(Group)", "source": "ALL_NUMBERS", "rejectEnabled": true } ] } }, "SelectiveRejectCallCriteria": { "type": "object", "required": [ "id", "scheduleName", "source", "rejectEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the schedule associated with the criteria." }, "source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS", "FORWARDED" ], "description": "Type of the source.\n * `ALL_NUMBERS` - Select to reject calls from Any Phone Number.\n * `SPECIFIC_NUMBERS` - Select to reject calls from Select Phone Numbers.\n * `FORWARDED` - Select to reject calls that have been forwarded.\n" }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Determines whether selective call reject is applied for calls matching this criteria. If `true`, selective call reject is applied. If `false`, this criteria acts as a 'Don't Reject' rule, preventing call rejections. Criteria with rejectEnabled set to false have precedence over criteria with rejectEnabled set to true." } } }, "AnonymousCallRejectSettingsGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Anonymous Call Rejection feature is enabled." } }, "example": { "enabled": true } }, "AnonymousCallRejectSettingsPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": false, "description": "Indicates whether Anonymous Call Rejection is enabled or not." } } }, "CallWaitingInfo": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Call Waiting feature is enabled." } } }, "CallWaitingPut": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": false, "description": "Enable or disable Call Waiting for the user." } }, "example": { "enabled": false } }, "SequentialRingSettingsGet": { "type": "object", "required": [ "enabled" ], "example": { "enabled": true, "ringBaseLocationFirstEnabled": false, "baseLocationNumberOfRings": 3, "continueIfBaseLocationIsBusyEnabled": true, "callsToVoicemailEnabled": false, "phoneNumbers": [ { "phoneNumber": "+19075552859", "answerConfirmationRequiredEnabled": false, "numberOfRings": 3 } ], "criteria": [ { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzU0MzgzODQzNTA5NzY", "scheduleName": "BusinessHours", "source": "ALL_NUMBERS", "ringEnabled": true } ] }, "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the sequential ring feature is enabled." }, "ringBaseLocationFirstEnabled": { "type": "boolean", "example": false, "description": "When `true`, the user's own devices ring before sequential ring numbers." }, "baseLocationNumberOfRings": { "type": "integer", "example": 3, "description": "Number of rings for the user's own devices. Minimum: 2, Maximum: 20." }, "continueIfBaseLocationIsBusyEnabled": { "type": "boolean", "example": true, "description": "When `true`, sequential ring continues even when the user is unavailable. It controls if we allow trying the sequential ring numbers when either a service for the user such as Do Not Disturb or Call Waiting sends the call to busy processing, or ringBaseLocationFirstEnabled is true but all the user's devices are unreachable." }, "callsToVoicemailEnabled": { "type": "boolean", "example": true, "description": "When `true`, the caller is provided the option to press the # key to end the sequential ring service and send the call to no answer handling such as voicemail." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingNumber" }, "description": "List of phone numbers to ring sequentially." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingCriteriaSummary" }, "description": "List of criteria specifying conditions when sequential ring is in effect." } } }, "SequentialRingSettingsPut": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": false, "description": "Enable or disable sequential ring for the user." }, "ringBaseLocationFirstEnabled": { "type": "boolean", "example": true, "description": "When `true`, the user's own devices ring before sequential ring numbers." }, "baseLocationNumberOfRings": { "type": "integer", "example": 2, "description": "Number of rings for the user's own devices. Minimum: 2, Maximum: 20." }, "continueIfBaseLocationIsBusyEnabled": { "type": "boolean", "example": false, "description": "When `true`, sequential ring continues even when the user is unavailable. It controls if we allow trying the sequential ring numbers when either a service for the user such as Do Not Disturb or Call Waiting sends the call to busy processing, or ringBaseLocationFirstEnabled is true but all the user's devices are unreachable." }, "callsToVoicemailEnabled": { "type": "boolean", "example": true, "description": "When `true`, the caller is provided the option to press the # key to end the sequential ring service and send the call to no answer handling such as voicemail." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingNumber" }, "description": "List of phone numbers to ring sequentially. Maximum 5 phone numbers." } } }, "SequentialRingNumber": { "type": "object", "required": [ "answerConfirmationRequiredEnabled", "numberOfRings" ], "properties": { "phoneNumber": { "type": "string", "example": "+442071838750", "description": "Phone number set as the sequential number." }, "answerConfirmationRequiredEnabled": { "type": "boolean", "example": true, "description": "When set to `true` the called party is required to press 1 on the keypad to receive the call." }, "numberOfRings": { "type": "number", "example": 2, "description": "The number of rings to the specified phone number before the call advances to the subsequent number in the sequence or goes to voicemail." } } }, "SequentialRingCriteriaSummary": { "type": "object", "required": [ "id", "scheduleName", "source", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "BusinessHours", "description": "Name of the schedule which determines when sequential ring is in effect." }, "source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "example": "ALL_NUMBERS", "description": "Type of the source.\n * `ALL_NUMBERS` - sequential ring applies to calls from any phone number.\n * `SPECIFIC_NUMBERS` - sequential ring applies to calls from specific phone numbers.\n" }, "ringEnabled": { "type": "boolean", "example": true, "description": "Determines whether sequential ring is applied for calls matching this criteria. If `true`, sequential ring is applied. If `false`, this criteria acts as a 'Don't Ring' rule. Criteria with ringEnabled set to false have precedence over criteria with ringEnabled set to true." } } }, "SequentialRingCriteriaPost": { "type": "object", "required": [ "callsFrom", "ringEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the sequential ring is in effect." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": "This indicates the type of schedule.\n * `holidays` - The Schedule is of type `holidays`.\n * `businessHours` - The Schedule is of type `businessHours`.\n" }, "scheduleLevel": { "type": "string", "enum": [ "GROUP" ], "description": "This indicates the level of the schedule specified by `scheduleName`.\n * `GROUP` - The Schedule specified is of `GROUP` level.\n" }, "callsFrom": { "type": "string", "enum": [ "SELECT_PHONE_NUMBERS", "ANY_PHONE_NUMBER" ], "description": "This indicates if criteria are applicable for calls from any phone number or selected phone numbers.\n * `SELECT_PHONE_NUMBERS` - Sequential ring criteria only apply for selected incoming numbers.\n * `ANY_PHONE_NUMBER` - Sequential ring criteria apply for any incoming number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from private numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from unavailable numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "When callsFrom is set to `SELECT_PHONE_NUMBERS`, indicates a list of incoming phone numbers for which the criteria apply." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SequentialRingCriteriaGet": { "type": "object", "required": [ "id", "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the sequential ring is in effect." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": "The type of schedule.\n * `holidays` - The Schedule is of type `holidays`.\n * `businessHours` - The Schedule is of type `businessHours`.\n" }, "scheduleLevel": { "type": "string", "enum": [ "GROUP" ], "description": "This indicates the level of the schedule specified by `scheduleName`.\n * `GROUP` - The Schedule specified is of `GROUP` level.\n" }, "callsFrom": { "type": "string", "enum": [ "SELECT_PHONE_NUMBERS", "ANY_PHONE_NUMBER" ], "description": "This indicates if criteria are applicable for calls from any phone number or selected phone numbers.\n * `SELECT_PHONE_NUMBERS` - Sequential ring criteria only apply for selected incoming numbers.\n * `ANY_PHONE_NUMBER` - Sequential ring criteria apply for any incoming number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from private numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from unavailable numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "When callsFrom is set to `SELECT_PHONE_NUMBERS`, indicates a list of incoming phone numbers for which the criteria apply." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SequentialRingCriteriaPut": { "type": "object", "description": "Request body for updating sequential ring criteria settings.", "properties": { "scheduleName": { "type": "string", "description": "Name of the schedule to be associated with the criteria.", "example": "Holidays" }, "scheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n", "example": "holidays" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "LOCATION" ], "description": " * `PEOPLE` - The schedule is at the user level.\n * `LOCATION` - The schedule is at the location level.\n", "example": "LOCATION" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": "Specifies the type of calling numbers the criteria applies to.\n * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n", "example": "ANY_PHONE_NUMBER" }, "anonymousCallersEnabled": { "type": "boolean", "description": "When `true`, means this criteria applies for anonymous callers. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "unavailableCallersEnabled": { "type": "boolean", "description": "When `true`, means this criteria applies for unavailable callers. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": true }, "phoneNumbers": { "type": "array", "description": "List of phone numbers to update for this criteria. Required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to. If SELECT_PHONE_NUMBERS has been selected" } }, "ringEnabled": { "type": "boolean", "description": "Determines whether sequential ring is applied for calls matching this criteria. If `true`, sequential ring is applied. Criteria with ringEnabled set to false have precedence over criteria with ringEnabled set to true.", "example": false } } }, "ErrorResponse": { "type": "object", "properties": { "errors": { "type": "array", "description": "Array of error details", "example": [ { "description": "Error processing request" } ], "items": { "type": "object", "properties": { "description": { "type": "string", "description": "Error description" } } } }, "trackingId": { "type": "string", "description": "Tracking ID for the request", "example": "NA_7b1234567-1234-1234-1234-123456789abc_1234" } }, "example": { "errors": [ { "description": "Error processing request" } ], "trackingId": "NA_7b1234567-1234-1234-1234-123456789abc_1234" } }, "ModeManagementFeaturesResponse": { "type": "object", "required": [ "features" ], "properties": { "features": { "type": "array", "description": "List of mode management features. Returns all items in a single response.", "example": [ { "id": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw", "name": "Main Reception", "type": "AUTO_ATTENDANT", "modeBasedForwardingEnabled": true } ], "items": { "type": "object", "required": [ "id", "name", "type", "modeBasedForwardingEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw", "description": "Unique identifier for the auto attendant, call queue, or hunt group." }, "name": { "type": "string", "example": "Main Reception", "description": "Display name of the auto attendant, call queue, or hunt group." }, "type": { "type": "string", "enum": [ "AUTO_ATTENDANT", "CALL_QUEUE", "HUNT_GROUP" ], "example": "AUTO_ATTENDANT", "description": " * `AUTO_ATTENDANT` - Auto Attendant feature.\n * `CALL_QUEUE` - Call Queue feature (includes customer assist queues).\n * `HUNT_GROUP` - Hunt Group feature.\n" }, "phoneNumber": { "type": "string", "example": "+14085551234", "description": "Phone number of the feature" }, "extension": { "type": "string", "example": "1234", "description": "Extension of the feature" }, "modeBasedForwardingEnabled": { "type": "boolean", "example": true, "description": "Whether mode based forwarding is enabled for the feature" }, "location": { "type": "object", "description": "Location information for the feature", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1Njc4LTkwYWItY2RlZi0xMjM0LTU2Nzg5MGFiY2RlZg==", "description": "Unique identifier for the location." }, "name": { "type": "string", "example": "San Jose Office", "description": "Display name of the location." } } }, "forwardDestination": { "type": "string", "example": "+14085555678", "description": "Current forward destination" }, "currentOperatingModeName": { "type": "string", "example": "Business Hours", "description": "Name of the current operating mode" }, "currentOperatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "ID of the current operating mode" }, "exceptionType": { "type": "string", "enum": [ "AUTOMATIC_SWITCH_BACK_EARLY_START", "AUTOMATIC_SWITCH_BACK_EXTENSION", "MANUAL_SWITCH_BACK", "AUTOMATIC_SWITCH_BACK_STANDARD" ], "example": "MANUAL_SWITCH_BACK", "description": "Type of exception indicating how the feature will switch back from the current mode. This field is not present when the feature is in normal operation.\n\n * `AUTOMATIC_SWITCH_BACK_EARLY_START` - Automatic switchback with early start.\n * `AUTOMATIC_SWITCH_BACK_EXTENSION` - Automatic switchback with extension.\n * `MANUAL_SWITCH_BACK` - Manual switchback required.\n * `AUTOMATIC_SWITCH_BACK_STANDARD` - Standard automatic switchback.\n" } } } } }, "example": { "features": [ { "id": "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw", "name": "Main Reception", "type": "AUTO_ATTENDANT", "phoneNumber": "+14085551234", "extension": "1234", "modeBasedForwardingEnabled": true, "location": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1Njc4LTkwYWItY2RlZi0xMjM0LTU2Nzg5MGFiY2RlZg==", "name": "San Jose Office" }, "forwardDestination": "+14085555678", "currentOperatingModeName": "Business Hours", "currentOperatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "exceptionType": "MANUAL_SWITCH_BACK" } ] } }, "CommonModesResponse": { "type": "object", "required": [ "commonModeNames" ], "properties": { "commonModeNames": { "type": "array", "description": "Array of operating mode names", "items": { "type": "string" }, "example": [ "Day1", "Holiday1", "Operating Mode Outage" ] } }, "example": { "commonModeNames": [ "Day1", "Holiday1", "Operating Mode Outage" ] } }, "SwitchModeMultipleFeaturesRequest": { "type": "object", "required": [ "featureIds", "operatingModeName" ], "properties": { "featureIds": { "type": "array", "example": [ "Y2lzY29zcGFyazovL3VzL0ZFQVRVUkUvYjQzMmI2NmQtM2VkYy00ZGNkLTg4ODctNDZlOGU2NWQwYzIw" ], "description": "List of feature IDs to switch mode", "items": { "type": "string" }, "minItems": 1, "maxItems": 50 }, "operatingModeName": { "type": "string", "example": "Night", "description": "Name of the common operating mode to be set as current operating mode" } } }, "ModeManagementFeatureResponse": { "type": "object", "required": [ "modeBasedForwardingEnabled", "currentOperatingModeId", "timezone", "modes" ], "properties": { "modeBasedForwardingEnabled": { "type": "boolean", "example": true, "description": "Whether mode based forwarding is enabled for the feature" }, "timezone": { "type": "string", "example": "America/Los_Angeles", "description": "Timezone for the feature" }, "phoneNumber": { "type": "string", "example": "+14085551234", "description": "Phone number of the feature" }, "extension": { "type": "string", "example": "1234", "description": "Extension of the feature" }, "currentOperatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "Unique identifier for the current operating mode." }, "currentOperatingModeEndTime": { "type": "string", "example": "06:00 AM", "description": "The current operating mode's end time in 12-hour format showing hour and minute only (no date information). This field's presence and meaning depends on the operational state:\n * Present during normal operation with the time at which the next mode change will occur.\n * Not present for Manual Switch Back exceptions.\n * For Automatic Switch Back (Early Start) exceptions it is when the exception ends and the feature automatically reverts to normal operation which is the mode's configured start time.\n * For Automatic Switch Back (Extension) exceptions it is when the exception ends and the feature automatically reverts to normal operation which is the mode's configured end time when the exception started plus the extension time.\n * For Automatic Switch Back (Standard) exceptions it is when the exception ends and the feature automatically reverts to normal operation which is the mode's configured end time." }, "currentOperatingModeForwardDestination": { "type": "string", "example": "+14085555678", "description": "Forward destination for current operating mode" }, "exceptionType": { "type": "string", "enum": [ "AUTOMATIC_SWITCH_BACK_EARLY_START", "AUTOMATIC_SWITCH_BACK_EXTENSION", "MANUAL_SWITCH_BACK", "AUTOMATIC_SWITCH_BACK_STANDARD" ], "example": "MANUAL_SWITCH_BACK", "description": "Type of exception indicating how the feature will switch back from the current mode. This field is not present when the feature is in normal operation.\n\n * `AUTOMATIC_SWITCH_BACK_EARLY_START` - Automatic switchback with early start.\n * `AUTOMATIC_SWITCH_BACK_EXTENSION` - Automatic switchback with extension.\n * `MANUAL_SWITCH_BACK` - Manual switchback required.\n * `AUTOMATIC_SWITCH_BACK_STANDARD` - Standard automatic switchback.\n" }, "modes": { "type": "array", "description": "Array of operating modes configured for this feature", "example": [ { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "name": "Business Hours", "normalOperationEnabled": true } ], "items": { "type": "object", "required": [ "id", "name", "normalOperationEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "Unique identifier for the operating mode." }, "name": { "type": "string", "example": "Business Hours", "description": "Display name of the operating mode." }, "type": { "type": "string", "enum": [ "NONE", "SAME_HOURS_DAILY", "DIFFERENT_HOURS_DAILY", "HOLIDAY" ], "example": "SAME_HOURS_DAILY", "description": " * `NONE` - No schedule defined.\n * `SAME_HOURS_DAILY` - Same hours for weekdays and weekends.\n * `DIFFERENT_HOURS_DAILY` - Different hours for each day.\n * `HOLIDAY` - Holiday-based schedule.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "example": "LOCATION", "description": " * `ORGANIZATION` - Organization level mode.\n * `LOCATION` - Location level mode.\n" }, "normalOperationEnabled": { "type": "boolean", "example": true, "description": "Whether this mode is enabled for normal operation." }, "forwardTo": { "type": "object", "description": "Forwarding configuration for this mode", "required": [ "sendToVoicemailEnabled", "defaultSendToVoicemailEnabled" ], "properties": { "selection": { "type": "string", "enum": [ "DO_NOT_FORWARD", "FORWARD_TO_SPECIFIED_NUMBER", "FORWARD_TO_DEFAULT_NUMBER" ], "example": "FORWARD_TO_SPECIFIED_NUMBER", "description": " * `DO_NOT_FORWARD` - Do not forward calls.\n * `FORWARD_TO_SPECIFIED_NUMBER` - Forward to a specified number.\n * `FORWARD_TO_DEFAULT_NUMBER` - Use the mode's default forwarding setting (which may be to forward or not forward).\n" }, "phoneNumber": { "type": "string", "example": "+14085551234", "description": "Phone number to forward to when selection is FORWARD_TO_SPECIFIED_NUMBER." }, "sendToVoicemailEnabled": { "type": "boolean", "example": false, "description": "Whether to send to voicemail when selection is FORWARD_TO_SPECIFIED_NUMBER." }, "defaultPhoneNumber": { "type": "string", "example": "+14085555678", "description": "Default phone number when selection is FORWARD_TO_DEFAULT_NUMBER. This field is not present if the mode's default is to not forward." }, "defaultSendToVoicemailEnabled": { "type": "boolean", "example": true, "description": "Whether default is to send to voicemail" } } } } } } }, "example": { "modeBasedForwardingEnabled": true, "timezone": "America/Los_Angeles", "phoneNumber": "+14085551234", "extension": "1234", "currentOperatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "currentOperatingModeEndTime": "06:00 AM", "currentOperatingModeForwardDestination": "+14085555678", "exceptionType": "MANUAL_SWITCH_BACK", "modes": [ { "id": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "name": "Business Hours", "type": "SAME_HOURS_DAILY", "level": "LOCATION", "normalOperationEnabled": true, "forwardTo": { "selection": "FORWARD_TO_SPECIFIED_NUMBER", "phoneNumber": "+14085551234", "sendToVoicemailEnabled": false, "defaultPhoneNumber": "+14085555678", "defaultSendToVoicemailEnabled": true } } ] } }, "NormalOperationModeResponse": { "type": "object", "required": [ "operatingModeId" ], "properties": { "operatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "Unique identifier for the scheduled operating mode." } }, "example": { "operatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==" } }, "OperatingModeResponse": { "type": "object", "required": [ "operatingModeId", "name", "type", "level" ], "properties": { "operatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "Unique identifier for the operating mode." }, "name": { "type": "string", "example": "Business Hours Mode", "description": "Display name of the operating mode." }, "type": { "type": "string", "enum": [ "NONE", "SAME_HOURS_DAILY", "DIFFERENT_HOURS_DAILY", "HOLIDAY" ], "example": "SAME_HOURS_DAILY", "description": " * `NONE` - No schedule defined.\n * `SAME_HOURS_DAILY` - Same hours apply for weekdays (Monday-Friday) and weekends (Saturday-Sunday).\n * `DIFFERENT_HOURS_DAILY` - Different hours for each day of the week.\n * `HOLIDAY` - Holiday-based schedule.\n" }, "level": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "example": "LOCATION", "description": " * `LOCATION` - Operating mode is defined at the location level.\n * `ORGANIZATION` - Operating mode is defined at the organization level.\n" }, "locationName": { "type": "string", "example": "San Jose", "description": "Location name" }, "sameHoursDaily": { "type": "object", "description": "Schedule configuration when same hours apply for weekdays and weekends", "example": { "mondayToFriday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" }, "saturdayToSunday": { "enabled": false, "allDayEnabled": false } }, "properties": { "mondayToFriday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Monday to Friday" }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled" }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "saturdayToSunday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Saturday to Sunday" }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled" }, "startTime": { "type": "string", "example": "10:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "14:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } } } }, "differentHoursDaily": { "type": "object", "description": "Schedule configuration when different hours apply for each day", "example": { "monday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" }, "tuesday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" } }, "properties": { "sunday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Sunday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "monday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Monday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "tuesday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Tuesday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "wednesday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Wednesday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "thursday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Thursday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "friday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Friday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } }, "saturday": { "type": "object", "required": [ "enabled", "allDayEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "Whether schedule is enabled for Saturday." }, "allDayEnabled": { "type": "boolean", "description": "Whether all day is enabled." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "17:00", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." } } } } }, "holidays": { "type": "array", "description": "Array of holiday schedule events", "example": [ { "id": "holiday-1", "name": "New Year's Day", "allDayEnabled": true, "startDate": "2024-01-01", "endDate": "2024-01-01" } ], "items": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the holiday schedule event." }, "name": { "type": "string", "example": "New Year's Day", "description": "Holiday event name" }, "allDayEnabled": { "type": "boolean", "description": "Whether holiday is all day" }, "startDate": { "type": "string", "example": "2024-01-01", "description": "Start date in YYYY-MM-DD format." }, "endDate": { "type": "string", "example": "2024-01-01", "description": "End date in YYYY-MM-DD format." }, "startTime": { "type": "string", "example": "00:00", "description": "Start time in HH:mm format. This field is not present when allDayEnabled is true." }, "endTime": { "type": "string", "example": "23:59", "description": "End time in HH:mm format. This field is not present when allDayEnabled is true." }, "recurrence": { "type": "object", "description": "Recurrence pattern for the holiday. This field is only present for recurring holidays.", "properties": { "recurYearlyByDay": { "type": "object", "description": "Recur yearly by day of week in month", "properties": { "day": { "type": "string", "enum": [ "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" ], "description": " * `SUNDAY` - Sunday.\n * `MONDAY` - Monday.\n * `TUESDAY` - Tuesday.\n * `WEDNESDAY` - Wednesday.\n * `THURSDAY` - Thursday.\n * `FRIDAY` - Friday.\n * `SATURDAY` - Saturday.\n" }, "week": { "type": "string", "enum": [ "FIRST", "SECOND", "THIRD", "FOURTH", "LAST" ], "description": " * `FIRST` - First week of the month.\n * `SECOND` - Second week of the month.\n * `THIRD` - Third week of the month.\n * `FOURTH` - Fourth week of the month.\n * `LAST` - Last week of the month.\n" }, "month": { "type": "string", "enum": [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER" ], "description": " * `JANUARY` - January.\n * `FEBRUARY` - February.\n * `MARCH` - March.\n * `APRIL` - April.\n * `MAY` - May.\n * `JUNE` - June.\n * `JULY` - July.\n * `AUGUST` - August.\n * `SEPTEMBER` - September.\n * `OCTOBER` - October.\n * `NOVEMBER` - November.\n * `DECEMBER` - December.\n" } } }, "recurYearlyByDate": { "type": "object", "description": "Recur yearly by specific date", "properties": { "dayOfMonth": { "type": "integer", "minimum": 1, "maximum": 31, "description": "Day of the month (1-31)" }, "month": { "type": "string", "enum": [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER" ], "description": " * `JANUARY` - January.\n * `FEBRUARY` - February.\n * `MARCH` - March.\n * `APRIL` - April.\n * `MAY` - May.\n * `JUNE` - June.\n * `JULY` - July.\n * `AUGUST` - August.\n * `SEPTEMBER` - September.\n * `OCTOBER` - October.\n * `NOVEMBER` - November.\n * `DECEMBER` - December.\n" } } } } } } } }, "forwardTo": { "type": "object", "description": "Call forwarding configuration for this operating mode", "example": { "enabled": true, "destination": "+14085551234", "sendToVoicemailEnabled": false }, "properties": { "enabled": { "type": "boolean", "description": "Whether call forwarding is enabled" }, "destination": { "type": "string", "example": "+14085551234", "description": "Forwarding destination phone number" }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Whether to send to voicemail" } } } }, "example": { "operatingModeId": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "name": "Business Hours Mode", "type": "SAME_HOURS_DAILY", "level": "LOCATION", "locationName": "San Jose", "sameHoursDaily": { "mondayToFriday": { "enabled": true, "allDayEnabled": false, "startTime": "09:00", "endTime": "17:00" }, "saturdayToSunday": { "enabled": false, "allDayEnabled": false, "startTime": "10:00", "endTime": "14:00" } }, "forwardTo": { "enabled": true, "destination": "+14085551234", "sendToVoicemailEnabled": false } } }, "SwitchModeRequest": { "type": "object", "required": [ "operatingModeId" ], "properties": { "operatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZjMg==", "description": "Operating mode ID to switch to" }, "isManualSwitchbackEnabled": { "type": "boolean", "example": true, "description": "Determines if switch back will be manual (if true) or automatic (if false or omitted from request)" } } }, "ExtendModeRequest": { "type": "object", "required": [ "operatingModeId" ], "properties": { "operatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzAyZjZlMmI4LTFjZDktNWI3ZS1jOTVjLTczYzZkYzk1MTZMg==", "description": "Unique identifier for the operating mode for which the extension is being configured." }, "extensionTime": { "type": "integer", "minimum": 30, "maximum": 720, "example": 30, "description": "Extension time in minutes (must be multiple of 30). If not sent, mode is extended with manual switch back exception" } } }, "SimultaneousRingGet": { "type": "object", "required": [ "enabled", "doNotRingIfOnCallEnabled", "criteriasEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Simultaneous Ring is enabled or not." }, "doNotRingIfOnCallEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the configured phone numbers won't ring when on a call." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SimultaneousRingNumberGet" }, "description": "Enter up to 10 phone numbers to ring simultaneously when a workspace phone receives an incoming call." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SimultaneousRingCriteria" }, "description": "A list of criteria specifying conditions when simultaneous ring is in effect." }, "criteriasEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables the selected schedule for simultaneous ring." } } }, "SimultaneousRingNumber": { "type": "object", "required": [ "phoneNumber", "answerConfirmationRequiredEnabled" ], "properties": { "phoneNumber": { "type": "string", "example": "+19075552859", "description": "Phone number set as the sequential number." }, "answerConfirmationRequiredEnabled": { "type": "boolean", "example": true, "description": "When set to `true` the called party is required to press 1 on the keypad to receive the call." } } }, "SimultaneousRingNumberPut": { "type": "object", "properties": { "phoneNumber": { "type": "string", "example": "+19075552859", "description": "Phone number set for simultaneous ring." }, "answerConfirmationEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the called party is required to press 1 on the keypad to confirm answer for the call." } } }, "SimultaneousRingCriteriaSummary": { "type": "object", "required": [ "id", "source", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the schedule which determines when the simultaneous ring is in effect." }, "source": { "$ref": "#/components/schemas/Source" }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing is enabled for calls that meet this criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "Source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "description": " * `ALL_NUMBERS` - Criteria applies to all incoming numbers.\n * `SPECIFIC_NUMBERS` - Criteria applies only for specific incoming numbers.\n" }, "SimultaneousRingPut": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Simultaneous Ring is enabled or not." }, "doNotRingIfOnCallEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the configured phone numbers won't ring when you are on a call." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SimultaneousRingNumberPut" }, "description": "Enter up to 10 phone numbers to ring simultaneously when you receive an incoming call.", "example": [ { "phoneNumber": "+19075552859", "answerConfirmationEnabled": true } ] }, "criteriasEnabled": { "type": "boolean", "example": true, "description": "Controls whether the criteria for simultaneous ring are enabled." } } }, "SimultaneousRingCriteriaGet": { "type": "object", "required": [ "id", "callsFrom", "anonymousCallersEnabled", "unavailableCallersEnabled", "ringEnabled" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "scheduleName": "Business Vacation", "scheduleType": "holidays", "scheduleLevel": "LOCATION", "callsFrom": "SELECT_PHONE_NUMBERS", "anonymousCallersEnabled": true, "unavailableCallersEnabled": true, "phoneNumbers": [ "+19075552859", "+19186663950" ], "ringEnabled": true }, "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType" }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel" }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from unavailable callers." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859" }, "description": "The list of phone numbers that will checked against incoming calls for a match.", "example": [ "+19075552859", "+19186663950" ] }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing is enabled for calls that meet this criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "ScheduleType": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": " * `businessHours` - The schedule type that specifies the business or working hours during the day.\n * `holidays` - The schedule type that specifies the day when your organization is not open.\n" }, "ScheduleLevel": { "type": "string", "enum": [ "PEOPLE", "GROUP" ], "description": " * `PEOPLE` - The schedule level that specifies that criteria is of People level.\n * `GROUP` - The schedule level that specifies that criteria is of Group level.\n" }, "CallsFromType": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": " * `ANY_PHONE_NUMBER` - The Schedule applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - Indicates the schedule applies to select phone number defined in the `phoneNumbers` property.\n" }, "SimultaneousRingCriteriaPost": { "type": "object", "required": [ "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "ringEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType" }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel" }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from unavailable callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748" }, "description": "The list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": [ "+19064441748" ] }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing is enabled for calls that meet this criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SimultaneousRingCriteriaPut": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType" }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel" }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, the criteria applies to calls from unavailable callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748" }, "description": "The list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`.", "example": [ "+19064441748" ] }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing is enabled for calls that meet this criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "GuestCallingNumbersGet": { "type": "object", "required": [ "phoneNumbers" ], "example": { "phoneNumbers": [ { "phoneNumber": "+12065551212", "state": "ACTIVE", "isMainNumber": false }, { "phoneNumber": "+12065551213", "state": "INACTIVE", "isMainNumber": true } ] }, "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/GuestCallingNumber" }, "description": "List of phone numbers available for guest calling.", "example": [ { "phoneNumber": "+12065551212", "state": "ACTIVE", "isMainNumber": false } ] } } }, "GuestCallingNumber": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12065551212", "description": "Phone number available for guest calling." }, "state": { "type": "string", "enum": [ "ACTIVE", "INACTIVE" ], "description": " * `ACTIVE` - Phone number is in the active state.\n * `INACTIVE` - Phone number is in the inactive state.\n", "example": "ACTIVE" }, "isMainNumber": { "type": "boolean", "example": false, "description": "Indicates whether this is the location's main number." } } }, "VoicemailRules": { "type": "object", "required": [ "blockRepeatedPatternsEnabled", "blockUserNumberEnabled", "blockReversedUserNumberEnabled", "blockPreviousPasscodes", "blockReversedOldPasscodeEnabled", "blockRepeatedDigits", "blockContiguousSequences", "length" ], "properties": { "blockRepeatedPatternsEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode cannot contain repeated patterns. For example, 121212 and 123123." }, "blockUserNumberEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode must not match the user's own phone number." }, "blockReversedUserNumberEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode must not match the user's phone number in reverse." }, "blockPreviousPasscodes": { "$ref": "#/components/schemas/BlockPreviousPasscodes" }, "blockReversedOldPasscodeEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode must not match the user's old passcodes in reverse." }, "blockRepeatedDigits": { "$ref": "#/components/schemas/BlockRepeatedDigits" }, "blockContiguousSequences": { "$ref": "#/components/schemas/BlockContiguousSequences" }, "length": { "$ref": "#/components/schemas/PasscodeLength" } }, "description": "Person's voicemail passcode rules and restrictions.", "example": { "blockRepeatedPatternsEnabled": true, "blockUserNumberEnabled": true, "blockReversedUserNumberEnabled": true, "blockPreviousPasscodes": { "enabled": true, "numberOfPasscodes": 3 }, "blockReversedOldPasscodeEnabled": true, "blockRepeatedDigits": { "enabled": true, "max": 3 }, "blockContiguousSequences": { "enabled": true, "numberOfAscendingDigits": 3, "numberOfDescendingDigits": 3 }, "length": { "min": 6, "max": 15 } } }, "BlockPreviousPasscodes": { "type": "object", "required": [ "enabled", "numberOfPasscodes" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, set how many of the previous passcodes are not allowed to be re-used." }, "numberOfPasscodes": { "type": "integer", "minimum": 1, "maximum": 10, "example": 3, "description": "Number of previous passcodes. The minimum value is 1. The maximum value is 10." } }, "description": "Settings for previous passcode usage." }, "BlockRepeatedDigits": { "type": "object", "required": [ "enabled", "max" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, checks for sequence of the same digit being repeated." }, "max": { "type": "integer", "minimum": 1, "maximum": 6, "example": 3, "description": "Maximum number of repeated digit sequence allowed. The minimum value is 1. The maximum value is 6." } }, "description": "Settings to prevent single digits from being repeated in the passcode. For example, with a maximum value of 3, 111222 is allowed but 112222 is not allowed since it contains a repeated digit sequence longer than 3." }, "BlockContiguousSequences": { "type": "object", "required": [ "enabled", "numberOfAscendingDigits", "numberOfDescendingDigits" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, passcode should not contain a numerical sequence." }, "numberOfAscendingDigits": { "type": "integer", "minimum": 2, "maximum": 5, "example": 3, "description": "Specifies the maximum length of an ascending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 123856 is allowed, but 123485 is not allowed (since the ascending sequence 1234 exceeds 3 digits)." }, "numberOfDescendingDigits": { "type": "integer", "minimum": 2, "maximum": 5, "example": 3, "description": "Specifies the maximum length of a descending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 321856 is allowed, but 432185 is not allowed (since the descending sequence 4321 exceeds 3 digits)." } }, "description": "Settings for not allowing numerical sequence in passcode (for example, 012345 or 987654)." }, "PasscodeLength": { "type": "object", "required": [ "min", "max" ], "properties": { "min": { "type": "integer", "minimum": 2, "maximum": 15, "example": 6, "description": "The minimum value is 2. The maximum value is 15." }, "max": { "type": "integer", "minimum": 3, "maximum": 30, "example": 15, "description": "The minimum value is 3. The maximum value is 30." } }, "description": "Length of the passcode." }, "VoicemailPin": { "type": "object", "required": [ "passcode" ], "properties": { "passcode": { "type": "string", "description": "Person voicemail PIN. The PIN must comply with the passcode rules defined for the organization.", "example": "27850230" } } }, "HotelingGuestSettings": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/Disable hoteling guest functionality for the person. When enabled, the person can associate themselves with a hoteling host device." }, "associationLimitEnabled": { "type": "boolean", "example": true, "description": "When enabled, the person's hoteling guest association will be automatically removed after the specified time period." }, "associationLimitHours": { "type": "integer", "minimum": 1, "maximum": 999, "example": 12, "description": "Time limit in hours for the hoteling guest association (1-999). Applicable when associationLimitEnabled is true." }, "hostAssociationLimitHours": { "type": "integer", "minimum": 1, "maximum": 999, "example": 24, "description": "Time limit in hours configured by the host for guest associations." }, "hostEnforcedAssociationLimitEnabled": { "type": "boolean", "example": false, "description": "Indicates whether the host has enforced an association time limit." }, "hostFirstName": { "type": "string", "example": "John", "description": "First name of the hoteling host." }, "hostLastName": { "type": "string", "example": "Smith", "description": "Last name of the hoteling host." }, "hostId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA", "description": "Unique identifier of the hoteling host person or workspace." }, "hostPhoneNumber": { "type": "string", "example": "+1234567890", "description": "Phone number of the hoteling host." }, "hostExtension": { "type": "string", "example": "1234", "description": "Extension of the hoteling host." }, "hostLocation": { "$ref": "#/components/schemas/HotelingHostLocation" } }, "example": { "enabled": true, "associationLimitEnabled": true, "associationLimitHours": 12, "hostAssociationLimitHours": 24, "hostEnforcedAssociationLimitEnabled": false, "hostFirstName": "John", "hostLastName": "Smith", "hostId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA", "hostPhoneNumber": "+1234567890", "hostExtension": "1234", "hostLocation": { "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU0MDQ5NzQzLTIwM2MtNDM5OS1iN2NjLTU4ZmNkYzIwNjA3Zg", "name": "San Jose" } }, "description": "Hoteling guest settings for a person." }, "HotelingHostLocation": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzU0MDQ5NzQzLTIwM2MtNDM5OS1iN2NjLTU4ZmNkYzIwNjA3Zg", "description": "Unique identifier of the hoteling host location." }, "name": { "type": "string", "example": "San Jose", "description": "Name of the hoteling host location." } }, "description": "Location information for the hoteling host." }, "HotelingGuestSettingsUpdate": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/Disable hoteling guest functionality for the person. When enabled, the person can associate themselves with a hoteling host device." }, "associationLimitEnabled": { "type": "boolean", "example": true, "description": "When enabled, the person's hoteling guest association will be automatically removed after the specified time period." }, "associationLimitHours": { "type": "integer", "minimum": 1, "maximum": 999, "example": 12, "description": "Time limit in hours for the hoteling guest association (1-999). Applicable when associationLimitEnabled is true." }, "hostId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA", "description": "Unique identifier of the hoteling host person or workspace to associate with. Required when enabling hoteling guest functionality." } }, "example": { "enabled": true, "associationLimitEnabled": true, "associationLimitHours": 12, "hostId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA" }, "description": "Hoteling guest settings update request." }, "AvailableHotelingHosts": { "type": "object", "required": [ "hosts" ], "properties": { "hosts": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableHotelingHost" }, "description": "List of available hoteling hosts." } }, "description": "List of available hoteling hosts that a person can associate with as a guest.", "example": { "hosts": [ { "hostId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA", "firstName": "John", "lastName": "Doe", "phoneNumber": "+14085551234", "extension": "1234", "allowedAssociationDuration": 24 }, { "hostId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODc2NTQzMi0xMjM0LTU2NzgtOTBhYi1jZGVmMTIzNDU2Nzg", "firstName": "Jane", "lastName": "Smith", "phoneNumber": "+14085555678", "extension": "5678", "allowedAssociationDuration": 12 } ] } }, "AvailableHotelingHost": { "type": "object", "required": [ "hostId", "firstName", "lastName", "phoneNumber", "extension", "allowedAssociationDuration" ], "properties": { "hostId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hYmNkZWYxMi0zNDU2LTc4OTAtYWJjZC1lZjEyMzQ1Njc4OTA", "description": "Unique identifier for the person or workspace." }, "firstName": { "type": "string", "example": "John", "description": "First name of the hoteling host." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of the hoteling host." }, "phoneNumber": { "type": "string", "example": "+14085551234", "description": "Phone number of the hoteling host." }, "extension": { "type": "string", "example": "1234", "description": "Extension of the hoteling host." }, "allowedAssociationDuration": { "type": "integer", "minimum": 1, "maximum": 999, "example": 24, "description": "Maximum allowed association duration in hours for this host." } }, "description": "Information about an available hoteling host." }, "PersonalAssistantSettings": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/Disable the personal assistant feature." }, "presence": { "type": "string", "enum": [ "BUSINESS_TRIP", "GONE_FOR_THE_DAY", "LUNCH", "MEETING", "OUT_OF_OFFICE", "TEMPORARILY_OUT", "TRAINING", "UNAVAILABLE", "VACATION" ], "example": "OUT_OF_OFFICE", "description": "Presence status that triggers the personal assistant." }, "untilDateTime": { "type": "string", "format": "date-time", "example": "2026-03-28T14:30:00Z", "description": "Date and time until which the personal assistant is active (ISO 8601 format)." }, "transferEnabled": { "type": "boolean", "example": true, "description": "Enable/Disable call transfer when personal assistant is active." }, "transferNumber": { "type": "string", "example": "+14126525012", "description": "Phone number to transfer calls to when transfer is enabled." }, "alerting": { "type": "string", "enum": [ "ALERT_ME_FIRST", "PLAY_RING_REMINDER", "NONE" ], "example": "ALERT_ME_FIRST", "description": "Alerting behavior for incoming calls when personal assistant is active. Possible values: ALERT_ME_FIRST - Ring the user's phone first before the personal assistant takes over. PLAY_RING_REMINDER - Play a ring reminder to the user. NONE - No alerting." }, "alertMeFirstNumberOfRings": { "type": "integer", "minimum": 0, "maximum": 20, "example": 3, "description": "Number of rings before transferring the call when alerting is set to ALERT_ME_FIRST." } }, "description": "Personal assistant settings for a person.", "example": { "enabled": true, "presence": "OUT_OF_OFFICE", "untilDateTime": "2026-03-28T14:30:00Z", "transferEnabled": true, "transferNumber": "+14126525012", "alerting": "ALERT_ME_FIRST", "alertMeFirstNumberOfRings": 3 } }, "PersonalAssistantSettingsUpdate": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/Disable the personal assistant feature." }, "presence": { "type": "string", "enum": [ "BUSINESS_TRIP", "GONE_FOR_THE_DAY", "LUNCH", "MEETING", "OUT_OF_OFFICE", "TEMPORARILY_OUT", "TRAINING", "UNAVAILABLE", "VACATION" ], "example": "OUT_OF_OFFICE", "description": "Presence status that triggers the personal assistant." }, "untilDateTime": { "type": "string", "format": "date-time", "example": "2026-03-28T14:30:00Z", "description": "Date and time until which the personal assistant is active (ISO 8601 format)." }, "transferEnabled": { "type": "boolean", "example": true, "description": "Enable/Disable call transfer when personal assistant is active." }, "transferNumber": { "type": "string", "example": "+14126525012", "description": "Phone number to transfer calls to when transfer is enabled." }, "alerting": { "type": "string", "enum": [ "ALERT_ME_FIRST", "PLAY_RING_REMINDER", "NONE" ], "example": "ALERT_ME_FIRST", "description": "Alerting behavior for incoming calls when personal assistant is active. Possible values: ALERT_ME_FIRST - Ring the user's phone first before the personal assistant takes over. PLAY_RING_REMINDER - Play a ring reminder to the user. NONE - No alerting." }, "alertMeFirstNumberOfRings": { "type": "integer", "minimum": 0, "maximum": 20, "example": 3, "description": "Number of rings before transferring the call when alerting is set to ALERT_ME_FIRST." } }, "description": "Personal assistant settings update request.", "example": { "enabled": true, "presence": "OUT_OF_OFFICE", "untilDateTime": "2026-03-28T14:30:00Z", "transferEnabled": true, "transferNumber": "+14126525012", "alerting": "ALERT_ME_FIRST", "alertMeFirstNumberOfRings": 3 } }, "GetVoicemailRulesObject": { "type": "object", "properties": { "defaultVoicemailPinRules": { "type": "object", "properties": { "blockRepeatedPatternsEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode cannot contain repeated patterns. For example, 121212 and 123123." }, "blockRepeatedDigits": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, checks for sequence of the same digit being repeated." }, "max": { "type": "number", "example": 3, "description": "Maximum number of repeated digit sequence allowed. The minimum value is 1. The maximum value is 6." } }, "description": "Settings to prevent single digits from being repeated in the passcode. For example, with a maximum value of 3, 111222 is allowed but 112222 is not allowed since it contains a repeated digit sequence longer than 3." }, "blockContiguousSequences": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, passcode should not contain a numerical sequence." }, "numberOfAscendingDigits": { "type": "number", "example": 3, "description": "Specifies the maximum length of an ascending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 123856 is allowed, but 123485 is not allowed (since the ascending sequence 1234 exceeds 3 digits)." }, "numberOfDescendingDigits": { "type": "number", "example": 3, "description": "Specifies the maximum length of a descending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 321856 is allowed, but 432185 is not allowed (since the descending sequence 4321 exceeds 3 digits)." } }, "description": "Settings for not allowing numerical sequence in passcode (for example, 012345 or 987654)." }, "length": { "type": "object", "properties": { "min": { "type": "number", "example": 6, "description": "The minimum value is 2. The maximum value is 15." }, "max": { "type": "number", "example": 30, "description": "The minimum value is 3. The maximum value is 30." } }, "description": "Length of the passcode." }, "defaultVoicemailPinEnabled": { "type": "boolean", "example": true, "description": "If enabled, the default voicemail passcode can be set." } }, "description": "Default voicemail passcode requirements." }, "expirePasscode": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, passcode expires after the number of days specified." }, "numberOfDays": { "type": "number", "example": 180, "description": "Number of days for password expiry. The minimum value is 15. The maximum value is 180." } }, "description": "Settings for passcode expiry." }, "changePasscode": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, set minimum number of days between passcode changes." }, "numberOfDays": { "type": "number", "example": 180, "description": "Number of days between passcode changes. The minimum value is 1. The maximum value is 7." } }, "description": "Settings for passcode changes." }, "blockPreviousPasscodes": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, set how many of the previous passcodes are not allowed to be re-used." }, "numberOfPasscodes": { "type": "number", "example": 10, "description": "Number of previous passcodes. The minimum value is 1. The maximum value is 10." } }, "description": "Settings for previous passcode usage." } } }, "GetVoicemailSettingsObject": { "type": "object", "required": [ "messageExpiryEnabled", "numberOfDaysForMessageExpiry", "strictDeletionEnabled", "voiceMessageForwardingEnabled" ], "properties": { "messageExpiryEnabled": { "type": "boolean", "description": "When enabled, you can set the deletion conditions for expired messages." }, "numberOfDaysForMessageExpiry": { "type": "number", "example": 10, "description": "Number of days after which messages expire." }, "strictDeletionEnabled": { "type": "boolean", "description": "When enabled, all read and unread voicemail messages will be deleted based on the time frame you set. When disabled, all unread voicemail messages will be kept." }, "voiceMessageForwardingEnabled": { "type": "boolean", "example": true, "description": "When enabled, people in the organization can configure the email forwarding of voicemails." } } }, "Language": { "type": "object", "required": [ "name", "code" ], "properties": { "name": { "type": "string", "example": "English", "description": "Language name." }, "code": { "type": "string", "example": "en_us", "description": "Language code." } } }, "PutVoicemailRulesObject": { "type": "object", "properties": { "defaultVoicemailPinEnabled": { "type": "boolean", "description": "Set to `true` to enable the default voicemail passcode." }, "defaultVoicemailPin": { "type": "string", "example": "147852", "description": "Default voicemail passcode." }, "expirePasscode": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to expire passcode after the number of days specified." }, "numberOfDays": { "type": "number", "example": 180, "description": "Number of days for password expiry. The minimum value is 15. The maximum value is 100." } }, "description": "Settings for passcode expiry." }, "changePasscode": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to change the minimum number of days between passcode changes." }, "numberOfDays": { "type": "number", "example": 180, "description": "Number of days between passcode changes. The minimum value is 1. The maximum value is 7." } }, "description": "Settings for passcode changes." }, "blockPreviousPasscodes": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to specify how many of the previous passcode are not allowed to be re-used." }, "numberOfPasscodes": { "type": "number", "example": 10, "description": "Number of previous passcodes. The minimum value is 1. The maximum value is 10." } }, "description": "Settings for previous passcode usage." } } }, "PutVoicemailSettingsObject": { "type": "object", "required": [ "messageExpiryEnabled", "numberOfDaysForMessageExpiry" ], "properties": { "messageExpiryEnabled": { "type": "boolean", "description": "Set to `true` to enable voicemail deletion and set the deletion conditions for expired messages." }, "numberOfDaysForMessageExpiry": { "type": "number", "example": 10, "description": "Number of days after which messages expire." }, "strictDeletionEnabled": { "type": "boolean", "description": "Set to `true` to delete all read and unread voicemail messages based on the time frame you set. Set to `false` to keep all the unread voicemail messages." }, "voiceMessageForwardingEnabled": { "type": "boolean", "example": true, "description": "Set to `true` to allow people to configure the email forwarding of voicemails." } } }, "GetMusicOnHoldObject": { "type": "object", "required": [ "mohEnabled", "mohLocationEnabled", "greeting" ], "properties": { "mohEnabled": { "type": "boolean", "example": true, "description": "Music on hold enabled or disabled for the workspace." }, "mohLocationEnabled": { "type": "boolean", "example": true, "description": "Music on hold enabled or disabled for the location. The music on hold setting returned in the response is used only when music on hold is enabled at the location level. When `mohLocationEnabled` is false and `mohEnabled` is true, music on hold is disabled for the workspace. When `mohLocationEnabled` is true and `mohEnabled` is false, music on hold is turned off for the workspace. In both cases, music on hold will not be played." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type for the workspace.\n * `DEFAULT` - Play music configured at location level.\n * `CUSTOM` - Play previously uploaded custom music when call is placed on hold or parked.\n" }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileGetObject", "description": "Announcement Audio File details when greeting is selected to be `CUSTOM`." } } }, "UpdateMusicOnHoldObject": { "type": "object", "properties": { "defaultOrgMoh": { "type": "string", "example": "'OPUS' or 'LEGACY'", "description": "Default org level Music on Hold option, can be one of two options: Choose between Opus Number 1 (Music On Hold used in other Cisco products like UCM) and existing legacy Music On Hold." } } }, "GetCallCaptionsObject": { "type": "object", "required": [ "orgClosedCaptionsEnabled", "orgTranscriptsEnabled" ], "properties": { "orgClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Organization-level closed captions are enabled or disabled." }, "orgTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Organization-level transcripts are enabled or disabled." } } }, "UpdateCallCaptionsObject": { "type": "object", "properties": { "orgClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable organization-level closed captions." }, "orgTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable organization-level transcripts." } } }, "OrganizationStatusGetObject": { "type": "object", "required": [ "isLargeOrg", "largeOrgThresholdPercentage" ], "properties": { "isLargeOrg": { "type": "boolean", "example": true, "description": "`true` if the organization is categorized as large organization." }, "largeOrgThresholdPercentage": { "type": "integer", "example": 90, "description": "The threshold percentage represents the percentage of the threshold reached to categorize an organization as a large organization." } } }, "GetCustomerMSTeamsSettingsObject": { "type": "object", "required": [ "level", "orgId", "settings" ], "properties": { "level": { "type": "string", "enum": [ "GLOBAL", "ORGANIZATION" ], "description": "Level at which the `settingName` has been set.\n * `GLOBAL` - `settingName` configured at the `GLOBAL` `level`.\n * `ORGANIZATION` - `settingName` configured at the `ORGANIZATION` `level`.\n" }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "description": "Unique identifier for the organization." }, "settings": { "type": "array", "items": { "$ref": "#/components/schemas/SettingsObject" }, "description": "Array of `SettingsObject`." } } }, "SettingsObject": { "type": "object", "required": [ "settingName", "level", "value", "lastModified" ], "properties": { "settingName": { "type": "string", "enum": [ "HIDE_WEBEX_APP", "PRESENCE_SYNC" ], "description": "Name of the setting retrieved.\n * `HIDE_WEBEX_APP` - Webex will continue to run but its windows will be closed by default. Users can still access Webex from the system tray on Windows or the Menu Bar on Mac.\n * `PRESENCE_SYNC` - Sync presence status between Microsoft Teams and Webex.\n" }, "level": { "type": "string", "enum": [ "GLOBAL", "ORGANIZATION", "GROUP", "PEOPLE" ], "description": "Level at which the `settingName` has been set.\n * `GLOBAL` - `settingName` configured at the `GLOBAL` `level`.\n * `ORGANIZATION` - `settingName` configured at the `ORGANIZATION` `level`.\n * `GROUP` - `settingName` configured at the `GROUP` `level`.\n * `PEOPLE` - `settingName` configured at the `PEOPLE` `level`.\n" }, "value": { "type": "boolean", "example": true, "description": "Either `true` or `false` for the respective `settingName` to be retrieved." }, "lastModified": { "type": "string", "example": "2024-02-24T07:21:23.494198Z", "description": "The date and time when the respective `settingName` was last updated." } } }, "ModifyCustomerMSTeamsSettingsObject": { "type": "object", "required": [ "settingName", "value" ], "properties": { "settingName": { "type": "string", "enum": [ "HIDE_WEBEX_APP", "PRESENCE_SYNC" ], "description": "The enum value, either `HIDE_WEBEX_APP` or `PRESENCE_SYNC`, for the respective `settingName` to be updated.\n * `HIDE_WEBEX_APP` - Webex will continue to run but its windows will be closed by default. Users can still access Webex from the system tray on Windows or the Menu Bar on Mac.\n * `PRESENCE_SYNC` - Sync presence status between Microsoft Teams and Webex.\n" }, "value": { "type": "boolean", "example": true, "description": "The boolean value, either `true` or `false`, for the respective `settingName` to be updated." } } }, "ConferenceStateEnum": { "type": "string", "enum": [ "connected", "held", "disconnected" ], "description": " * `connected` - The controller is an active participant.\n * `held` - The controller has held the conference and so is no longer an active participant.\n * `disconnected` - The conference has been released.\n" }, "ConferenceTypeEnum": { "type": "string", "enum": [ "bargeIn", "silentMonitoring", "coaching" ] }, "ConferenceParticipant": { "type": "object", "required": [ "callId", "muted", "deafened" ], "properties": { "callId": { "type": "string", "example": "Y2lzY29z...", "description": "The callId of the call." }, "muted": { "type": "boolean", "example": true, "description": "Indicates if the participant has been muted." }, "deafened": { "type": "boolean", "example": true, "description": "Indicates if the participant has been deafened (i.e. media stream is not being transmitting to the participant)" } } }, "ConferenceDetails": { "type": "object", "required": [ "state", "created", "muted" ], "properties": { "state": { "$ref": "#/components/schemas/ConferenceStateEnum", "description": "The state of the conference." }, "appearance": { "type": "number", "example": 2, "description": "The appearance index for the conference leg. Only present when the conference has an appearance value assigned." }, "created": { "type": "string", "example": "2023-03-02T15:00:00.000Z", "description": "The conference start time in ISO 8601 format. " }, "muted": { "type": "boolean", "description": "Indicates if the host of the conference has been muted." }, "type": { "$ref": "#/components/schemas/ConferenceTypeEnum", "description": "The type of conference for a non-standard conference." }, "participants": { "type": "array", "items": { "$ref": "#/components/schemas/ConferenceParticipant" }, "description": "The participants in the conference." } } }, "ContactCenterExtensionsGetObject": { "type": "object", "required": [ "ccExtensions", "endpoints" ], "properties": { "ccExtensions": { "type": "array", "items": { "$ref": "#/components/schemas/UserExtensions" }, "description": "List of user extensions." }, "endpoints": { "type": "array", "items": { "$ref": "#/components/schemas/UserEndpoints" }, "description": "List of user endpoints details." } } }, "UserExtensions": { "type": "object", "required": [ "directNumber", "extension", "type", "lineOwnerType", "lineOwnerId", "preferredAnsweringEndPointId", "endpoints" ], "properties": { "directNumber": { "type": "string", "example": "+13374831550", "description": "Direct number of the user." }, "extension": { "type": "string", "example": "1550", "description": "Extension of the user." }, "type": { "type": "string", "$ref": "#/components/schemas/ExtensionType", "description": "Type of User Extension." }, "lineOwnerType": { "type": "string", "$ref": "#/components/schemas/LineOwnerType", "description": "Type of the line owner. Indicates whether the line is owned by a person, workspace, or virtual line." }, "lineOwnerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85NWM4MGY0My1mNjBlLTQzYTAtYTkwMy1iNWQ3ZDg0MThiNDU", "description": "Unique identifier of the line owner." }, "preferredAnsweringEndPointId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2Q0OTE3ZWFiLTQ4Y2EtNGRlZC1iOTczLWQzNTFhOTU5OWZhZB", "description": "Unique identifier of the set preferred answering endpoint." }, "endpoints": { "type": "array", "items": { "$ref": "#/components/schemas/UserEndpointType" }, "description": "List of user endpoints with type." } } }, "UserEndpointType": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "description": "Unique identifier of the endpoint." }, "type": { "$ref": "#/components/schemas/EndpointType", "description": "Type of the endpoint." } } }, "UserEndpoints": { "type": "object", "required": [ "id", "type", "name", "status" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9DQUxMSU5HX0RFVklDRS85MGQyMmM0Yy0wMGI3LTQ4YzAtYjUwNi0yM2UwY2E2MTlkYmM", "description": "Unique identifier of the endpoint." }, "type": { "$ref": "#/components/schemas/EndpointType", "description": "Type of the endpoint." }, "name": { "type": "string", "example": "Webex Go Device", "description": "Name of the endpoint." }, "status": { "$ref": "#/components/schemas/EndpointStatus", "description": "SIP Registration status of the device." } } }, "EndpointStatus": { "type": "string", "enum": [ "CONNECTED", "NOT_CONNECTED" ], "description": " * `CONNECTED` - Device is connected.\n * `NOT_CONNECTED` - Device is not connected.\n" }, "ExtensionType": { "type": "string", "enum": [ "PRIMARY", "SECONDARY" ], "description": " * `PRIMARY` - Indicates that the extension is owned by the user.\n * `SECONDARY` - Indicates that the extension is not owned by the user and is a secondary line on one of the users devices.\n" }, "LineOwnerType": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": " * `PEOPLE` - The line is owned by a person.\n * `PLACE` - The line is owned by a workspace.\n * `VIRTUAL_LINE` - The line is owned by a virtual line.\n" }, "ReassignRecordingObject": { "type": "object", "description": "Reassign Recording details", "required": [ "reassignOwnerEmail" ], "properties": { "ownerEmail": { "type": "string", "example": "john.andersen@example.com", "description": "Recording owner email." }, "ownerID": { "type": "string", "example": "3c6aa94c-e1f9-4f10-579f-e5582de5374f", "description": "Recording owner ID. Can be a user, a virtual line, or a workspace." }, "recordingIds": { "type": "array", "items": { "type": "string", "example": "81bb582c-e93e-40aa-abf6-962b620f6db4,81bb582c-e93e-40aa-abf6-962b620f6db5" }, "description": "List of recording identifiers to be reassigned." }, "reassignOwnerEmail": { "type": "string", "example": "brenda.song@example.com", "description": "New owner of the recordings." } } }, "RedSkyServiceSettingsObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the service is enabled." }, "companyId": { "type": "string", "example": "a5e5808f-34ac-4ed0-b8f3-2416bc4cb785", "description": "The RedSky company ID, which can be retrieved from the RedSky portal." }, "secret": { "type": "string", "example": "qwEr4%2d", "description": "The company secret key, which can be found in the RedSky portal." }, "externalTenantEnabled": { "type": "boolean", "example": true, "description": "`true` if the RedSky reseller customer is not under a Cisco account." }, "email": { "type": "string", "example": "test@cisco.com", "description": "The email for the RedSky account. `email` is required if `externalTenantEnabled` is true." }, "password": { "type": "string", "example": "Test@123", "description": "The password for the RedSky account. `password` is required if `externalTenantEnabled` is true." } } }, "RedSkyCreateObject": { "type": "object", "required": [ "email" ], "properties": { "orgPrefix": { "$ref": "#/components/schemas/orgPrefixObject", "description": "Represents whether the customer is 'Webex Calling' or not." }, "email": { "type": "string", "example": "test@cisco.com", "description": "The email for the RedSky account administrator." }, "partnerRedskyOrgId": { "type": "string", "example": "584cf4cd-eea7-4c8c-83ee-67d88fc6eab5", "description": "New organization is created under this partner organization ID if present, otherwise it will be created under a Cisco partner." } } }, "RedSkyGetObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the service is enabled." }, "companyId": { "type": "string", "example": "a5e5808f-34ac-4ed0-b8f3-2416bc4cb785", "description": "The RedSky company ID, which can be retrieved from the RedSky portal." }, "secret": { "type": "string", "example": "*****", "description": "The company secret key, which can be found in the RedSky portal. It will be displayed with data masked." }, "locationsEnabled": { "type": "boolean", "example": true, "description": "`true` if RedSky is enabled for any location." } } }, "orgPrefixObject": { "type": "string", "enum": [ "wxc", "wxc-whs" ], "description": " * `wxc` - The customer is Webex calling.\n * `wxc-whs` - The customer is a wholesale.\n" }, "ComplianceStatusRequestEnum": { "type": "string", "enum": [ "OPTED_OUT", "LOCATION_SETUP", "ALERTS", "NETWORK_ELEMENTS", "ROUTING_ENABLED" ], "description": " * `OPTED_OUT` - Customer has opted out of the E911 service.\n * `LOCATION_SETUP` - Building and locations stage of the RedSky account creation has been completed.\n * `ALERTS` - Email notification configuration stage of the RedSky account creation has been completed.\n * `NETWORK_ELEMENTS` - Network wire map configuration stage of the RedSky account creation process has been completed and Webex Calling will begin routing emergency test number calls (933) to RedSky.\n * `ROUTING_ENABLED` - Emergency calls for devices in the specified locations will begin to route to RedSky.\n" }, "RedSkyComplianceStatusRequestObject": { "type": "object", "required": [ "complianceStatus" ], "properties": { "complianceStatus": { "$ref": "#/components/schemas/ComplianceStatusRequestEnum", "description": "Specifies which stage of the RedSky account creation process has been completed. The stages must be completed in the following order: `LOCATION_SETUP`, `ALERTS`, `NETWORK_ELEMENTS`, `ROUTING_ENABLED`." } } }, "OrgStatusEnum": { "type": "string", "enum": [ "INITIALISE", "ENABLED", "OPTED_OUT" ], "description": " * `INITIALISE` - RedSky account configuration process is in progress.\n * `ENABLED` - RedSky account configuration process is complete.\n * `OPTED_OUT` - Customer has opted out of the E911 service.\n" }, "ComplianceStatusResponseEnum": { "type": "string", "enum": [ "OPTED_OUT", "EXEMPTED", "NON_COMPLIANT", "COMPLIANT" ], "description": " * `OPTED_OUT` - Customer has opted out of the E911 service.\n * `EXEMPTED` - RedSky account compliance status has been exempted.\n * `NON_COMPLIANT` - RedSky account is non-compliant.\n * `COMPLIANT` - RedSky account is compliant.\n" }, "UpdateComplianceStatusResponseLocationStateEnum": { "type": "string", "enum": [ "LOCATION_SETUP", "ALERTS", "NETWORK_ELEMENTS", "ROUTING_ENABLE" ], "description": " * `LOCATION_SETUP` - RedSky account is pending location setup.\n * `ALERTS` - RedSky account is pending email notification configuration.\n * `NETWORK_ELEMENTS` - RedSky account is pending network element setup.\n * `ROUTING_ENABLE` - RedSky account is pending the routing enable setup stage.\n" }, "ComplianceStatusResponseRedSkyClientLocation": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Unique identifier for the location." }, "name": { "type": "string", "example": "MainOffice", "description": "Name of the location." } } }, "ComplianceStatusResponseLocationStatusObject": { "type": "object", "properties": { "state": { "$ref": "#/components/schemas/UpdateComplianceStatusResponseLocationStateEnum", "description": "Configuration stage that was last completed. The order of precedence is `LOCATION_SETUP`, `ALERTS`, `NETWORK_ELEMENTS`, `ROUTING_ENABLE`. If at least one location is `LOCATION_SETUP`, then `locationState` will be set to `LOCATION_SETUP`. Otherwise, `locationState` will check for the next precedence option and at least one location should have that option." }, "count": { "type": "number", "example": 2, "description": "Total count of locations available in the organization." }, "locations": { "type": "array", "items": { "$ref": "#/components/schemas/ComplianceStatusResponseRedSkyClientLocation" }, "description": "List of locations that have completed the least amount of setup. Only 4 locations are included in this list." } } }, "GetComplianceStatusResponseLocationStateEnum": { "type": "string", "enum": [ "OPTED_OUT", "EXEMPTED", "LOCATION_SETUP", "ALERTS", "NETWORK_ELEMENTS", "ROUTING_ENABLE", "COMPLIANT" ], "description": " * `OPTED_OUT` - Customer has opted out of the E911 service.\n * `EXEMPTED` - RedSky account compliance status has been exempted.\n * `LOCATION_SETUP` - RedSky account is pending location setup.\n * `ALERTS` - RedSky account is pending email notification configuration.\n * `NETWORK_ELEMENTS` - RedSky account is pending network element setup.\n * `ROUTING_ENABLE` - RedSky account is pending the routing enable setup stage.\n * `COMPLIANT` - RedSky account is compliant.\n" }, "GetComplianceStatusResponseRedSkyClientLocation": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Unique identifier for the location." }, "name": { "type": "string", "example": "MainOffice", "description": "Name of the location." }, "state": { "$ref": "#/components/schemas/GetComplianceStatusResponseLocationStateEnum", "description": "Configuration stage that was last completed for the specified location. The order of precedence is `LOCATION_SETUP`, `ALERTS`, `NETWORK_ELEMENTS`, `ROUTING_ENABLE`. If at least one location is `LOCATION_SETUP`, then `locationState` will be set to `LOCATION_SETUP`. Otherwise, `locationState` will check for the next precedence option and at least one location should have that option." } } }, "GetComplianceStatusResponseLocationStatusObject": { "type": "object", "properties": { "count": { "type": "number", "example": 2, "description": "Total count of locations available in the organization." }, "locations": { "type": "array", "items": { "$ref": "#/components/schemas/GetComplianceStatusResponseRedSkyClientLocation" }, "description": "All the locations available in the organization." } } }, "ComplianceStatusResponse": { "type": "object", "required": [ "orgStatus", "complianceStatus" ], "properties": { "orgStatus": { "$ref": "#/components/schemas/OrgStatusEnum", "description": "The RedSky account configuration status for the organization." }, "complianceStatus": { "$ref": "#/components/schemas/ComplianceStatusResponseEnum", "description": "The RedSky account's compliance status." }, "companyId": { "type": "string", "example": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "description": "The RedSky held token from the secret response." }, "redSkyOrgId": { "type": "string", "example": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "description": "The RedSky organization ID for the organization which can be found in the RedSky portal." }, "adminExists": { "type": "boolean", "example": true, "description": "`true` if an Admin has been created in RedSky." }, "locationsStatus": { "$ref": "#/components/schemas/ComplianceStatusResponseLocationStatusObject", "description": "Object that contains a list of locations, the `count` for the location list, and the `state` for the location that has completed the least amount of setup. Available if at least one location is exists." } } }, "GetComplianceStatusResponse": { "type": "object", "required": [ "orgStatus", "complianceStatus" ], "properties": { "orgStatus": { "$ref": "#/components/schemas/OrgStatusEnum", "description": "The RedSky account configuration status for the organization." }, "complianceStatus": { "$ref": "#/components/schemas/ComplianceStatusResponseEnum", "description": "The RedSky account's compliance status." }, "companyId": { "type": "string", "example": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "description": "The RedSky held token from the secret response." }, "redSkyOrgId": { "type": "string", "example": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "description": "The RedSky organization ID for the organization which can be found in the RedSky portal." }, "adminExists": { "type": "boolean", "example": true, "description": "`true` if an Admin has been created in RedSky." }, "locationsStatus": { "$ref": "#/components/schemas/GetComplianceStatusResponseLocationStatusObject", "description": "Object that contains a list of locations and the `count` for the location list. Available if at least one location is exists." } } }, "LoginRequest": { "type": "object", "required": [ "email", "password" ], "properties": { "email": { "type": "string", "example": "test@cisco.com", "description": "Email for the RedSky account." }, "password": { "type": "string", "example": "Test@123", "description": "Password for the RedSky account." }, "redSkyOrgId": { "type": "string", "example": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "description": "The RedSky organization ID for the organization which can be found in the RedSky portal." } } }, "LoginResponse": { "type": "object", "required": [ "accountMatch", "externalTenantEnabled", "companyId" ], "properties": { "accountMatch": { "type": "boolean", "example": true, "description": "`true` if the old `companyId` secret is matched with the new `companyId` secret." }, "externalTenantEnabled": { "type": "boolean", "example": true, "description": "`true` if the RedSky reseller customer is not under a Cisco account." }, "companyId": { "type": "string", "example": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "description": "The RedSky held token from the secret response." } } }, "GetLocationCallingParamtersResponse": { "type": "object", "properties": { "integrationEnabled": { "type": "boolean", "example": true, "description": "Enable to allow RedSky to receive network connectivity information and test calls." }, "routingEnabled": { "type": "boolean", "example": true, "description": "Enable to route emergency calls to RedSky." } } }, "ComplianceStatusLocationStatusObject": { "type": "object", "properties": { "state": { "$ref": "#/components/schemas/GetComplianceStatusResponseLocationStateEnum", "description": "Configuration stage that was last completed for the location in the request. The order of precedence is `LOCATION_SETUP`, `ALERTS`, `NETWORK_ELEMENTS`, `ROUTING_ENABLE`." }, "count": { "type": "number", "example": 2, "description": "Total count of the `locations` list." }, "locations": { "type": "array", "items": { "$ref": "#/components/schemas/ComplianceStatusResponseRedSkyClientLocation" }, "description": "Object that contains the `id` and the `name` for the location in the request." } } }, "UpdateLocationComplianceStatusResponse": { "type": "object", "properties": { "locationsStatus": { "$ref": "#/components/schemas/ComplianceStatusLocationStatusObject", "description": "Contains RedSky account configuration status for the locations in the organization." } } }, "GetLocationComplianceStatusResponse": { "type": "object", "required": [ "orgStatus", "complianceStatus" ], "properties": { "orgStatus": { "$ref": "#/components/schemas/OrgStatusEnum", "description": "The RedSky account configuration status for the organization." }, "complianceStatus": { "$ref": "#/components/schemas/ComplianceStatusResponseEnum", "description": "The RedSky account's compliance status." }, "companyId": { "type": "string", "example": "ddd1424c-5b48-433d-9bab-061cdfb84c90", "description": "The RedSky held token from the secret response." }, "redSkyOrgId": { "type": "string", "example": "2ff43e05-af11-41ff-91b6-87a3b509f4z4", "description": "The RedSky organization ID for the organization which can be found in the RedSky portal." }, "adminExists": { "type": "boolean", "example": true, "description": "`true` if an Admin has been created in RedSky." }, "locationsStatus": { "$ref": "#/components/schemas/ComplianceStatusLocationStatusObject", "description": "Object that contains the `state`, `id`, and `name` for the `locationId` in the request." } } }, "CreateBuildingRequest": { "type": "object", "required": [ "alertingEmail" ], "properties": { "alertingEmail": { "type": "string", "example": "test@cisco.com", "description": "Email that is used to create alerts in RedSky. At least one email is mandatory." }, "address": { "$ref": "#/components/schemas/AddressObject", "description": "Contains address information for the building." } } }, "UpdateBuildingRequest": { "type": "object", "properties": { "address": { "$ref": "#/components/schemas/AddressObject", "description": "Contains address information for the building." } } }, "OrgCallNotificationObject": { "type": "object", "properties": { "emergencyCallNotificationEnabled": { "type": "boolean", "example": true, "description": "When true sends an email to the specified email address when a call is made to emergency services." }, "allowEmailNotificationAllLocationEnabled": { "type": "boolean", "example": true, "description": "Send an emergency call notification email for all locations." }, "emailAddress": { "type": "string", "example": "callback@gmail.com", "description": "When `emergencyCallNotificationEnabled` is true, the emergency notification email is sent to the specified email address." } } }, "GetLocationCallNotificationObject": { "type": "object", "properties": { "emergencyCallNotificationEnabled": { "type": "boolean", "example": true, "description": "When true sends an email to the specified email address when a call is made from this location to emergency services." }, "emailAddress": { "type": "string", "example": "callback@gmail.com", "description": "When `emergencyCallNotificationEnabled` is true, the emergency notification email is sent to the specified email address." }, "organization": { "type": "object", "properties": { "emergencyCallNotificationEnabled": { "type": "boolean", "example": true, "description": "When true sends an email to the specified email address when a call is made from this location to emergency services." }, "allowEmailNotificationAllLocationEnabled": { "type": "boolean", "example": true, "description": "Send an emergency call notification email for all locations." }, "emailAddress": { "type": "string", "example": "test@gmail.com", "description": "When `emergencyCallNotificationEnabled` is true, the emergency notification email is sent to the specified email address." } }, "description": "All locations at organization level" } } }, "PutLocationCallNotificationObject": { "type": "object", "properties": { "emergencyCallNotificationEnabled": { "type": "boolean", "example": true, "description": "When true sends an email to the specified email address when a call is made from this location to emergency services." }, "emailAddress": { "type": "string", "example": "callback@gmail.com", "description": "Sends an email to this email address when a call is made from this location to emergency services and `emergencyCallNotificationEnabled` is true." } } }, "VirtualLinesECBNDependenciesObject": { "type": "object", "required": [ "isLocationEcbnDefault", "isSelfEcbnDefault", "dependentMemberCount" ], "properties": { "isLocationEcbnDefault": { "type": "boolean", "example": true, "description": "`true` if it is the default emergency callback number for the location." }, "isSelfEcbnDefault": { "type": "boolean", "example": true, "description": "Default emergency callback number for the virtual line if `true`." }, "dependentMemberCount": { "type": "number", "example": 15, "description": "Number of members using this virtual line as their emergency callback number." } } }, "GetHuntGroupCallbackNumberDependenciesObject": { "type": "object", "required": [ "isLocationEcbnDefault", "isSelfEcbnDefault", "dependentMemberCount" ], "properties": { "isLocationEcbnDefault": { "type": "boolean", "example": true, "description": "The default emergency callback number for the location when `isLocationEcbnDefault` is true." }, "isSelfEcbnDefault": { "type": "boolean", "description": "The default emergency callback number." }, "dependentMemberCount": { "type": "number", "example": 4, "description": "Number of members using this hunt group as their emergency callback number." } } }, "ECBNSelectionType": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_ECBN", "LOCATION_MEMBER_NUMBER", "NONE" ], "description": " * `DIRECT_LINE` - Returned calls from the Public Safety Answering Point go directly to the member. The Emergency Service Address configured by the PSTN to the member's phone is specific to the member’s location.\n * `LOCATION_ECBN` - Each location can have an ECBN configured that is different from the location’s main number. Location Default ECBN is typically configured for users without dedicated telephone numbers or with only an extension.\n * `LOCATION_MEMBER_NUMBER` - Configure one user with another user’s telephone number as an ECBN. This option is used in place of a location’s main number when the location has multiple floors or buildings. This allows the ECBN assigned to have a more accurate Emergency Service Address associated with it.\n * `NONE` - When no other option is selected.\n" }, "ECBNDirectLineEffectiveLevelType": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_ECBN", "LOCATION_NUMBER", "NONE" ], "description": " * `DIRECT_LINE` - Returned calls from the Public Safety Answering Point go directly to the member. The Emergency Service Address configured by the PSTN to the member's phone is specific to the member’s location.\n * `LOCATION_ECBN` - Each location can have an ECBN configured that is different from the location’s main number. Location Default ECBN is typically configured for users without dedicated telephone numbers or with only an extension.\n * `LOCATION_NUMBER` - A location’s main number that is suitable for when the location has a single building with a single floor.\n * `NONE` - There is no effective level type selected.\n" }, "LocationMemberInfoEffectiveLevelType": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_ECBN", "LOCATION_NUMBER", "LOCATION_MEMBER_NUMBER", "NONE" ], "description": " * `DIRECT_LINE` - Returned calls from the Public Safety Answering Point go directly to the member. The Emergency Service Address configured by the PSTN to the member's phone is specific to the member’s location.\n * `LOCATION_ECBN` - Each location can have an ECBN configured that is different from the location’s main number. Location Default ECBN is typically configured for users without dedicated telephone numbers or with only an extension.\n * `LOCATION_NUMBER` - A location’s main number that is suitable for when the location has a single building with a single floor.\n * `LOCATION_MEMBER_NUMBER` - Configure one user with another user’s telephone number as an ECBN. This option is used in place of a location’s main number when the location has multiple floors or buildings. This allows the ECBN assigned to have a more accurate Emergency Service Address associated with it.\n * `NONE` - When no other option is selected.\n" }, "ECBNQualityType": { "type": "string", "enum": [ "RECOMMENDED", "NOT_RECOMMENDED", "INVALID" ], "description": " * `RECOMMENDED` - An activated number, associated with a User or Workspace.\n * `NOT_RECOMMENDED` - An activated number, associated with anything else, like Auto Attendant or Hunt Group.\n * `INVALID` - An inactive or non-existent number.\n" }, "VirtualLinesECBNObject": { "type": "object", "required": [ "selected" ], "properties": { "selected": { "$ref": "#/components/schemas/ECBNSelectionType", "description": "Selected number type to configure emergency call back." }, "directLineInfo": { "type": "object", "required": [ "firstName", "lastName", "effectiveLevel", "quality" ], "properties": { "phoneNumber": { "type": "string", "example": "2056350001", "description": "The callback phone number that is associated with the direct line." }, "firstName": { "type": "string", "example": "John", "description": "First name of a user." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of a user." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "9726856770", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the ECBN for this user/location/virtual line/hunt group." }, "locationECBNInfo": { "type": "object", "required": [ "effectiveLevel", "quality" ], "properties": { "phoneNumber": { "type": "string", "example": "9726856700", "description": "The callback phone number that is associated with the location's ECBN configuration." }, "firstName": { "type": "string", "example": "John", "description": "First name for the location. This field will be populated with group name when the `effectiveLevel` is `LOCATION_ECBN` or `LOCATION_NUMBER`." }, "lastName": { "type": "string", "example": "Smith", "description": "This field contains the location member's last name when the `effectiveLevel` is `LOCATION_ECBN`, the location is using a location member number, and the selected member is a user. This field will always return \".\" when the `effectiveLevel` is `LOCATION_ECBN`, the location is using the location member number, and the selected member is a place." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "9726856770", "description": "Contains the location-level emergency callback number if valid. If not, contains the user's main number if valid." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the user/place/virtual line/hunt group selected for ECBN for this location." }, "locationMemberInfo": { "type": "object", "required": [ "effectiveLevel", "quality" ], "properties": { "phoneNumber": { "type": "string", "example": "9726856700", "description": "A unique identifier for the location member's PSTN phone number." }, "firstName": { "type": "string", "example": "James", "description": "First name for the location member." }, "lastName": { "type": "string", "example": "Johnson", "description": "Last name for the location member. This field will always return \".\" when `effectiveLevel` is `DIRECT_LINE` or `LOCATION_MEMBER_NUMBER`, and the selected member is a place." }, "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MmQ3YTY3MS00YmVlLTQ2MDItOGVkOC1jOTFmNjU5NjcxZGI", "description": "Member ID of user/place/virtual line/hunt group within the location." }, "effectiveLevel": { "$ref": "#/components/schemas/LocationMemberInfoEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "9726856770", "description": "Contains the location-level emergency callback number if valid. If not, contains the user's main number if valid." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Type of the member." } } }, "defaultInfo": { "type": "object", "required": [ "quality" ], "properties": { "effectiveValue": { "type": "string", "example": "9726856770", "description": "The field contains ECBN number." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Contains the Emergency Callback Number effective value when none of the above parameters are assigned or some other value is set." } } }, "CallBackSelectedPatch": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_ECBN", "LOCATION_MEMBER_NUMBER" ], "description": " * `DIRECT_LINE` - Returned calls from the Public Safety Answering Point go directly to the member. The Emergency Service Address configured by the PSTN to the member's phone is specific to the member’s location.\n * `LOCATION_ECBN` - Each location can have an ECBN configured that is different from the location’s main number. Location Default ECBN is typically configured for users without dedicated telephone numbers or with only an extension.\n * `LOCATION_MEMBER_NUMBER` - Configure one user with another user’s telephone number as an ECBN. This option is used in place of a location’s main number when the location has multiple floors or buildings. This allows the ECBN assigned to have a more accurate Emergency Service Address associated with it.\n" }, "GetWorkspaceCallbackNumberObject": { "type": "object", "properties": { "selected": { "$ref": "#/components/schemas/ECBNSelectionType", "description": "Selected number type to configure emergency call back." }, "directLineInfo": { "type": "object", "required": [ "firstName", "lastName" ], "properties": { "phoneNumber": { "type": "string", "example": "18164196065", "description": "The callback phone number that is associated with the direct line." }, "firstName": { "type": "string", "example": "backUpworkspace", "description": "First name of a user." }, "lastName": { "type": "string", "example": ".", "description": "Last name of a user." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196065", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the ECBN for this user/location/virtual line/hunt group." }, "locationECBNInfo": { "type": "object", "required": [ "lastName", "firstName" ], "properties": { "phoneNumber": { "type": "string", "example": "18164196065", "description": "The callback phone number that is associated with the location's ECBN configuration." }, "lastName": { "type": "string", "example": ".", "description": "Last name of the user or location member or `.`." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196065", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." }, "firstName": { "type": "string", "example": "backUpworkspace", "description": "First name of the user or location member or group name." } }, "description": "Data relevant to the user/place/virtual line/hunt group selected for ECBN for this location." }, "locationMemberInfo": { "type": "object", "required": [ "firstName", "lastName" ], "properties": { "phoneNumber": { "type": "string", "example": "18164196065", "description": "The callback phone number that is associated with member configured for the location ECBN." }, "firstName": { "type": "string", "example": "backUpworkspace", "description": "First name of a user." }, "lastName": { "type": "string", "example": ".", "description": "Last name of the user or location member or `.`." }, "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8wY2VlYjFmYy04ZmEyLTQ5OGEtYWM3Ni02N2MyZGQ3MGQ2ZGY=", "description": "Member ID of user/place/virtual line/hunt group within the location." }, "effectiveLevel": { "$ref": "#/components/schemas/LocationMemberInfoEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196065", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Type of the member." } }, "description": "Data relevant to the user/place/virtual line/hunt group selected for ECBN." }, "defaultInfo": { "type": "object", "properties": { "effectiveValue": { "type": "string", "example": "18164196068", "description": "The field contains the ECBN number." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Gives Emergency Callback Number effective value when none of the above is assigned or some other value is set behind the scene." }, "elinEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this workspace is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made from one of its devices." } } }, "PutECBNObject": { "type": "object", "required": [ "selected" ], "properties": { "selected": { "$ref": "#/components/schemas/CallBackSelectedPatch", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call." }, "locationMemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "description": "Member ID of person/workspace/virtual line/hunt group within the location. Required when `selected` is `LOCATION_MEMBER_NUMBER`." } } }, "GetWorkspaceCallbackNumberDependenciesObject": { "type": "object", "required": [ "isLocationEcbnDefault", "isSelfEcbnDefault", "dependentMemberCount" ], "properties": { "isLocationEcbnDefault": { "type": "boolean", "example": true, "description": "When `isLocationEcbnDefault` is true, then it is the default emergency callback number for the location." }, "isSelfEcbnDefault": { "type": "boolean", "description": "Default emergency callback number of the place if `true`." }, "dependentMemberCount": { "type": "number", "description": "Number of members using this workspace as their emergency callback number." } } }, "GetPersonCallbackNumberObject": { "type": "object", "properties": { "selected": { "$ref": "#/components/schemas/ECBNSelectionType", "description": "Selected number type to configure emergency callback." }, "directLineInfo": { "type": "object", "required": [ "firstName", "lastName" ], "properties": { "phoneNumber": { "type": "string", "example": "18164196065", "description": "The callback phone number that is associated with the direct line." }, "firstName": { "type": "string", "example": "User1", "description": "First name of the user." }, "lastName": { "type": "string", "example": "User1LastName", "description": "Last name of the user." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196065", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the ECBN for this user/location/virtual line/hunt group." }, "locationECBNInfo": { "type": "object", "required": [ "firstName", "lastName" ], "properties": { "firstName": { "type": "string", "example": "group1", "description": "First name of the user or location member or group name." }, "lastName": { "type": "string", "example": ".", "description": "Last name of the user or location member or `.`." }, "phoneNumber": { "type": "string", "example": "18164196066", "description": "The callback phone number that is associated with the location's ECBN configuration." }, "effectiveLevel": { "$ref": "#/components/schemas/ECBNDirectLineEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196066", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the ECBN for this user/location/virtual line/hunt group." }, "locationMemberInfo": { "type": "object", "required": [ "firstName", "lastName" ], "properties": { "phoneNumber": { "type": "string", "example": "18164196067", "description": "The callback phone number that is associated with member configured for the location ECBN." }, "firstName": { "type": "string", "example": "workspace1", "description": "First name of the user." }, "lastName": { "type": "string", "example": ".", "description": "Last name of the user or `.`." }, "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "description": "Member ID of user/place/virtual line/hunt group within the location" }, "memberType": { "$ref": "#/components/schemas/MemberType", "description": "Type of the member." }, "effectiveLevel": { "$ref": "#/components/schemas/LocationMemberInfoEffectiveLevelType", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "18164196067", "description": "The field contains the valid ECBN number at the location level, or the user's main number if valid, defaulting to the location's main number if both are unavailable." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the ECBN for this user/location/virtual line/hunt group." }, "defaultInfo": { "type": "object", "properties": { "effectiveValue": { "type": "string", "example": "18164196068", "description": "The field contains the ECBN number." }, "quality": { "$ref": "#/components/schemas/ECBNQualityType", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Gives Emergency Callback Number effective value when none of the above is assigned or some other value is set behind the scene." }, "elinEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this person is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made from one of their devices." }, "elinForWebexAppEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this person is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made using Webex App." } } }, "GetPersonCallbackNumberDependenciesObject": { "type": "object", "required": [ "isLocationEcbnDefault", "isSelfEcbnDefault", "dependentMemberCount" ], "properties": { "isLocationEcbnDefault": { "type": "boolean", "example": true, "description": "The default emergency callback number for the location when `isLocationEcbnDefault` is true." }, "isSelfEcbnDefault": { "type": "boolean", "description": "The default emergency callback number for the person when `isSelfEcbnDefault` is true." }, "dependentMemberCount": { "type": "number", "description": "Number of members using this person as their emergency callback number." } } }, "PutWorkspaceECBNObject": { "type": "object", "properties": { "selected": { "$ref": "#/components/schemas/CallBackSelectedPatch", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call." }, "locationMemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "description": "Member ID of person/workspace/virtual line/hunt group within the location. Required when `selected` is `LOCATION_MEMBER_NUMBER`." }, "elinEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this workspace is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made from one of its devices." } } }, "PutPersonECBNObject": { "type": "object", "properties": { "selected": { "$ref": "#/components/schemas/CallBackSelectedPatch", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call." }, "locationMemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzExYTNmOTkwLWE2ODktNDc3ZC1iZTZiLTcxMjAwMjVkOGFiYg", "description": "Member ID of person/workspace/virtual line/hunt group within the location. Required when `selected` is `LOCATION_MEMBER_NUMBER`." }, "elinEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this person is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made from one of their devices." }, "elinForWebexAppEnabled": { "type": "boolean", "example": false, "description": "Indicates whether this member is allowed to use an Emergency Location Identification Number (ELIN) for emergency calls made using Webex App." } } }, "AnnouncementPlaylistResponse": { "type": "object", "required": [ "playlists" ], "properties": { "playlists": { "type": "array", "items": { "$ref": "#/components/schemas/PlaylistObject" }, "description": "Array of playlist available for a given organization." } } }, "PlaylistObject": { "type": "object", "description": "Basic playlist metadata available for announcement selection.", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "description": "A unique identifier for the playlist." }, "name": { "type": "string", "example": "testingAnnouncementPlaylist", "description": "Unique name for the playlist." } } }, "PostAnnouncementPlaylistObject": { "type": "object", "required": [ "name", "announcementIds" ], "properties": { "name": { "type": "string", "example": "testingHydraAnnouncementPlaylistWithTwoFiles", "description": "Unique name for the announcement playlist." }, "announcementIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8yMTkxMDhmNC1iMGVjLTRkNTMtODMzYy1kNTE1NWE4OWQzZTk,Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zY2I2Y2Q1MS02Zjk3LTRiMmYtYTA0Yy04MjRmOGQ2NjQyYTU" }, "description": "Array of `announcementIds` associated with the playlist." } } }, "AnnouncementPlaylistResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9jNzAwNmI4ZC1kYmQ3LTQ3YjctOWQ0Ny05ZDJkMWEzYmY1Yzc", "description": "Unique identifier of the announcement playlist." } } }, "AnnouncementPlaylistGetResponse": { "type": "object", "required": [ "id", "name", "lastUpdated", "fileSize", "fileCount", "announcements" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "description": "Unique identifier of the playlist." }, "name": { "type": "string", "example": "testingAnnouncementPlaylist", "description": "Unique name of the playlist." }, "lastUpdated": { "type": "string", "example": "2024-03-06T07:06:36.396Z", "description": "Last updated timestamp (in UTC format) of the playlist." }, "fileSize": { "type": "string", "example": "356", "description": "Size of the files in kilobytes." }, "fileCount": { "type": "string", "example": "3", "description": "Number of files in the playlist." }, "announcements": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementObject" }, "description": "List of announcement details associated with playlist." } } }, "AnnouncementObject": { "type": "object", "required": [ "id", "name", "fileSize", "mediaFileType", "lastUpdated", "level" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the announcement." }, "name": { "type": "string", "example": "Public_Announcement", "description": "Name of the announcement." }, "fileName": { "type": "string", "example": "Sample_Greetings_file.wav", "description": "File name of the uploaded binary announcement greeting." }, "fileSize": { "type": "string", "example": "356", "description": "Size of the file in kilobytes." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of the announcement file." }, "lastUpdated": { "type": "string", "example": "2023-06-13T18:39:53.651Z", "description": "Last updated timestamp (in UTC format) of the announcement." }, "level": { "type": "string", "enum": [ "ORGANIZATION" ], "description": "The level at which this playlist exists." } } }, "PutAnnouncementPlaylistObject": { "type": "object", "properties": { "name": { "type": "string", "example": "testingHydraAnnouncementPlaylistWithTwoFiles", "description": "Unique name for the announcement playlist." }, "announcementIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8yMTkxMDhmNC1iMGVjLTRkNTMtODMzYy1kNTE1NWE4OWQzZTk,Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zY2I2Y2Q1MS02Zjk3LTRiMmYtYTA0Yy04MjRmOGQ2NjQyYTU" }, "description": "Array of `announcementIds` associated with the playlist." } } }, "PlaylistAssignedLocationResponse": { "type": "object", "required": [ "id", "locations" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "description": "Unique identifier of the playlist." }, "locations": { "type": "array", "items": { "$ref": "#/components/schemas/LocationObject" }, "description": "Array of locations with which the playlist is associated." } } }, "PutPlaylistAssignedLocation": { "type": "object", "required": [ "locationIds" ], "properties": { "locationIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81ZTk3MzFlNy1iOWQ0LTRmMWQtYjYyMi05NDgwMDhhMjkzMzM, Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81ZTk3MzFlNy1iOWQ0LTRmMWQtYjYyMi05NDgwMDhhMjkzMzM" }, "description": "Array of location IDs with which the playlist is associated." } } }, "PlaylistUsage": { "description": "Mapping of a playlist to the locations and features where it is used.", "type": "object", "properties": { "id": { "type": "string", "description": "Identifier of the playlist." }, "locations": { "type": "array", "description": "List of locations using this playlist.", "items": { "type": "object", "description": "Location and feature referencing this playlist.", "properties": { "id": { "type": "string", "description": "Location identifier." }, "name": { "type": "string", "description": "Location name." }, "featureReference": { "type": "object", "description": "Feature referencing the playlist.", "properties": { "id": { "type": "string", "description": "Feature identifier." }, "name": { "type": "string", "description": "Feature name." }, "type": { "type": "string", "description": "Feature type." } }, "required": [ "id", "name", "type" ] } }, "required": [ "id", "name", "featureReference" ] } } }, "required": [ "id", "locations" ], "example": { "id": "Y2lzY29zcGFyazovL3VzL1BMQVlMSVNULzg1NWU1N2M0LWUzYTAtNGEyZS1hYWYxLTQ3ZWUxMmI3M2U2MA", "locations": [ { "name": "RCDN6", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAxNWFmN2QzLTRlNzktNGY2ZC04Nzk5LWRlMjEzYTBhZDNhYQ", "featureReference": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNGFlMzJkMTAtNWI0Zi00NmNmLWI4ZTQtYmE2YzNiZjMyZGZi", "name": "Test Call Queue", "type": "CALL_QUEUE" } }, { "name": "RCDN6", "id": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzAxNWFmN2QzLTRlNzktNGY2ZC04Nzk5LWRlMjEzYTBhZDNhYQ", "featureReference": { "id": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMTkyNDYxMjEtZDhiYi00NTdjLWEzZjQtNGQ3YTBlYmQ4Nzk2", "name": "Test Call Queue 3", "type": "CALL_QUEUE" } } ] } }, "AnnouncementResponse": { "type": "object", "description": "Response containing announcement details.", "required": [ "id", "name", "fileSize", "mediaFileType", "lastUpdated", "featureReferenceCount" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the announcement." }, "name": { "type": "string", "example": "Public_Announcement", "description": "Name of the announcement." }, "fileName": { "type": "string", "example": "Sample_Greetings_file.wav", "description": "File name of the uploaded binary announcement greeting." }, "fileSize": { "type": "string", "example": "356", "description": "Size of the file in kilobytes." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of the announcement file." }, "lastUpdated": { "type": "string", "example": "2023-06-13T18:39:53.651Z", "description": "Last updated timestamp (in UTC format) of the announcement." }, "featureReferenceCount": { "type": "number", "example": 1, "description": "Reference count of the call features this announcement is assigned to." }, "featureReferences": { "type": "array", "items": { "$ref": "#/components/schemas/FeatureReferenceObject" }, "description": "Call features referenced by this announcement." }, "isTextToSpeech": { "type": "boolean", "example": false, "description": "Indicates whether the announcement is text-to-speech." }, "voice": { "type": "string", "example": "en-US-Neural2-A", "description": "Voice used for text-to-speech announcement." }, "language": { "type": "string", "example": "en-US", "description": "Language code for the text-to-speech announcement." }, "text": { "type": "string", "example": "Welcome to our service. Please hold while we connect you.", "description": "Text content for text-to-speech announcement." } } }, "AnnouncementResponseWithPlaylist": { "type": "object", "description": "Response containing announcement details and available playlists.", "required": [ "id", "name", "fileSize", "mediaFileType", "lastUpdated", "featureReferenceCount" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the announcement." }, "name": { "type": "string", "example": "Public_Announcement", "description": "Name of the announcement." }, "fileName": { "type": "string", "example": "Sample_Greetings_file.wav", "description": "File name of the uploaded binary announcement greeting." }, "fileSize": { "type": "string", "example": "356", "description": "Size of the file in kilobytes." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of the announcement file." }, "lastUpdated": { "type": "string", "example": "2023-06-13T18:39:53.651Z", "description": "Last updated timestamp (in UTC format) of the announcement." }, "featureReferenceCount": { "type": "number", "example": 1, "description": "Reference count of the call features this announcement is assigned to." }, "featureReferences": { "type": "array", "items": { "$ref": "#/components/schemas/FeatureReferenceObject" }, "description": "Call features referenced by this announcement." }, "playlists": { "type": "array", "items": { "$ref": "#/components/schemas/PlaylistObject" }, "description": "List of playlist available for selection." }, "isTextToSpeech": { "type": "boolean", "example": false, "description": "Indicates whether the announcement is text-to-speech." }, "voice": { "type": "string", "example": "en-US-Neural2-A", "description": "Voice used for text-to-speech announcement." }, "language": { "type": "string", "example": "en-US", "description": "Language code for the text-to-speech announcement." }, "text": { "type": "string", "example": "Welcome to our service. Please hold while we connect you.", "description": "Text content for text-to-speech announcement." } } }, "AnnouncementResponseWithId": { "type": "object", "description": "Response containing the unique identifier of a created or updated announcement.", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8wOWJmNTQwYS05ZWE0LTRhMzktOWI3Mi0xN2Q2MTE0ZTVjMjE", "description": "Unique identifier of the announcement." } } }, "AnnouncementUsageResponse": { "type": "object", "description": "Response containing announcement repository storage usage limits and current utilization.", "required": [ "totalFileSizeUsedKB", "maxAudioFileSizeAllowedKB", "maxVideoFileSizeAllowedKB", "totalFileSizeLimitMB" ], "properties": { "totalFileSizeUsedKB": { "type": "number", "example": 1068, "description": "Total file size used by announcements in this repository in kilobytes." }, "maxAudioFileSizeAllowedKB": { "type": "number", "example": 9600, "description": "Maximum audio file size allowed to upload in kilobytes." }, "maxVideoFileSizeAllowedKB": { "type": "number", "example": 120000, "description": "Maximum video file size allowed to upload in kilobytes." }, "totalFileSizeLimitMB": { "type": "number", "example": 1000, "description": "Total file size limit for the repository in megabytes." } } }, "AnnouncementsListResponse": { "type": "object", "description": "Response containing announcement summary details for list operations.", "required": [ "id", "name", "fileSize", "mediaFileType", "lastUpdated", "level", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the announcement." }, "name": { "type": "string", "example": "Public_Announcement", "description": "Name of the announcement." }, "fileName": { "type": "string", "example": "Sample_Greetings_file.wav", "description": "File name of the uploaded binary announcement greeting." }, "fileSize": { "type": "string", "example": "356", "description": "Size of the file in kilobytes." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of the announcement file." }, "lastUpdated": { "type": "string", "example": "2023-06-13T18:39:53.651Z", "description": "LastUpdated timestamp (in UTC format) of the announcement." }, "level": { "type": "string", "enum": [ "LOCATION" ], "description": "The level at which this announcement exists." }, "location": { "$ref": "#/components/schemas/LocationObject", "description": "The details of location at which this announcement exists." }, "isTextToSpeech": { "type": "boolean", "example": false, "description": "Indicates whether the announcement is text-to-speech." } } }, "FeatureReferenceObject": { "type": "object", "description": "Metadata describing a call feature that references an announcement.", "required": [ "id", "name", "type", "locationId", "locationName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "Unique identifier of the call feature referenced. The call Feature can be Auto Attendant, Call Queue or Music On hold." }, "name": { "type": "string", "example": "Main Line AA - Test", "description": "Name of the call feature referenced." }, "type": { "type": "string", "example": "Auto Attendant", "description": "Resource Type of the call feature." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi81ZTk3MzFlNy1iOWQ0LTRmMWQtYjYyMi05NDgwMDhhMjkzMzM", "description": "Unique identifier of the location." }, "locationName": { "type": "string", "example": "RCDN", "description": "Location name of the announcement file." } } }, "AnnouncementRequestBody": { "type": "object", "description": "Request payload for uploading or updating an announcement in the repository.", "required": [ "name", "fileUri", "fileName", "isTextToSpeech" ], "properties": { "name": { "type": "string", "minLength": 1, "maxLength": 256, "example": "Public_Announcement", "description": "Name of the announcement." }, "fileUri": { "type": "string", "minLength": 1, "maxLength": 256, "example": "https://example.com/announcements/greeting.wav", "description": "URI of the announcement file." }, "fileName": { "type": "string", "minLength": 1, "maxLength": 80, "example": "greeting.wav", "description": "File name of the announcement." }, "isTextToSpeech": { "type": "boolean", "example": false, "description": "Indicates whether the announcement is text-to-speech." } } }, "GenerateTtsRequest": { "type": "object", "description": "Request payload for generating a text-to-speech audio prompt.", "required": [ "voice", "text", "languageCode" ], "properties": { "voice": { "type": "string", "example": "ashley", "description": "The voice ID used to generate the audio prompt. Use the List Text-to-Speech Voices API to retrieve available voices." }, "text": { "type": "string", "example": "Welcome to our service. Please hold while we connect you.", "description": "The text to convert to speech." }, "languageCode": { "type": "string", "example": "en_us", "description": "The language code used to generate the audio prompt. Use the Read the List of Announcement Languages API to retrieve supported language codes." } } }, "GenerateTtsResponse": { "type": "object", "description": "Response containing the ID of the text-to-speech generation request.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA" }, "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA", "description": "Unique identifier of the text-to-speech generation request. Use this ID to track status using the Get Text-to-Speech Generation Status API." } } }, "TtsUsageResponse": { "type": "object", "description": "Response containing text-to-speech usage information.", "example": { "maxAllowedApiCalls": 150, "noOfApiCalls": 25, "usageResetTimestamp": "2024-01-01T00:00:00.000Z" }, "required": [ "noOfApiCalls", "maxAllowedApiCalls" ], "properties": { "noOfApiCalls": { "type": "integer", "example": 25, "description": "The number of text-to-speech API calls made in the current time window." }, "maxAllowedApiCalls": { "type": "integer", "example": 150, "description": "The maximum number of text-to-speech API calls allowed in the current time window." }, "usageResetTimestamp": { "type": "string", "example": "2026-01-01T00:00:00.000Z", "description": "The timestamp when the usage counter will reset. It will be returned when reaching the maximum allowed API calls in the time window." } } }, "TtsStatusResponse": { "type": "object", "description": "Response containing text-to-speech generation status and file references.", "example": { "fileUri": "cmf://customers/bf01164f-ed87-44d9-bc41-f63f26fb9663/media/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663", "id": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA", "kmsKeyUri": "kms://kms-cisco.wbx2.com/keys/b56642f3-d597-420c-8a55-41aaa8c5b6e7", "languageCode": "en_us", "promptUrl": "https://wxc-int-media-file.ciscospark.com/b535b87e-0994-4387-ace1-56facfba9b75/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663", "status": "SUCCESS", "text": "Welcome to our service. Please hold while we connect you.", "voice": "ashley" }, "required": [ "id", "status", "text", "voice", "languageCode" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RFWFRfVE9fU1BFRUNILzMyMDE2NGY0LWU1YTMtNDFmZi1hMzI2LTY3YzA5OGU0MWQxZA", "description": "Unique identifier of the text-to-speech generation request." }, "voice": { "type": "string", "example": "ashley", "description": "The voice ID used to generate the audio prompt." }, "text": { "type": "string", "example": "Welcome to our service. Please hold while we connect you.", "description": "The input text used to generate the audio prompt." }, "languageCode": { "type": "string", "example": "en_us", "description": "The language code used to generate the audio prompt." }, "status": { "type": "string", "enum": [ "IN_PROGRESS", "SUCCESS", "FAILURE" ], "example": "SUCCESS", "description": "The status of the text-to-speech generation request." }, "promptUrl": { "type": "string", "example": "https://wxc-int-media-file.ciscospark.com/b535b87e-0994-4387-ace1-56facfba9b75/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663", "description": "A URL to download the encrypted audio prompt. Only available when status is `SUCCESS`." }, "kmsKeyUri": { "type": "string", "example": "kms://kms-cisco.wbx2.com/keys/b56642f3-d597-420c-8a55-41aaa8c5b6e7", "description": "The KMS key URI required to decrypt the prompt downloaded from `promptUrl`. Only available when status is `SUCCESS`." }, "fileUri": { "type": "string", "example": "cmf://customers/bf01164f-ed87-44d9-bc41-f63f26fb9663/media/tmp/af01164f-ed87-44d9-bc41-f63f26fb8663", "description": "A file URI you can use when configuring an announcement. Only available when status is `SUCCESS`." }, "errorMessage": { "type": "string", "example": "Text exceeds maximum allowed length.", "description": "A detailed message describing why generation failed. Only present when status is `FAILURE`." } } }, "TtsVoicesResponse": { "type": "object", "description": "Response containing the list of supported text-to-speech voices.", "example": { "voices": [ { "id": "ashley", "label": "Ashley-Female" }, { "id": "steve", "label": "Steve-Male" } ] }, "required": [ "voices" ], "properties": { "voices": { "type": "array", "example": [ { "id": "ashley", "label": "Ashley-Female" }, { "id": "steve", "label": "Steve-Male" } ], "items": { "$ref": "#/components/schemas/TtsVoice" }, "description": "Array of available text-to-speech voices." } } }, "TtsVoice": { "type": "object", "description": "Text-to-Speech voice metadata.", "example": { "id": "ashley", "label": "Ashley-Female" }, "required": [ "id", "label" ], "properties": { "id": { "type": "string", "example": "ashley", "description": "The voice ID used to generate the audio prompt." }, "label": { "type": "string", "example": "Ashley-Female", "description": "The voice label, including the voice name and gender." } } }, "AlternateNumbersObject": { "type": "object", "required": [ "phoneNumber", "ringPattern" ], "properties": { "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Phone number defined as alternate number." }, "tollFreeNumber": { "type": "boolean", "description": "Flag to indicate if auto attendant number is toll-free number." }, "ringPattern": { "type": "string", "enum": [ "NORMAL", "LONG_LONG", "SHORT_SHORT_LONG", "SHORT_LONG_SHORT" ], "description": "Ring pattern that will be used for the alternate number." } } }, "AudioAnnouncementFileObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the [announcement](/docs/api/v1/features-announcement-repository). `name`, `mediaFileType`, `level` are mandatory if `id` is not provided for uploading an announcement. If all four fields are provided, file with given `id` is used and other fields are ignored." }, "fileName": { "type": "string", "example": "AUDIO_FILE.wav", "description": "Audio announcement file name." }, "mediaFileType": { "type": "string", "enum": [ "WAV" ], "description": "Audio announcement file type.\n * `WAV` - WAV File Extension.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "Audio announcement file type location.\n * `ORGANIZATION` - Specifies this audio file is configured across the organization.\n * `LOCATION` - Specifies this audio file is configured across the location.\n" } } }, "AudioAnnouncementFileGetObject": { "type": "object", "required": [ "id", "fileName", "mediaFileType", "level" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the announcement." }, "fileName": { "type": "string", "example": "AUDIO_FILE.wav", "description": "Audio announcement file name." }, "mediaFileType": { "type": "string", "enum": [ "WAV" ], "description": "Audio announcement file type.\n * `WAV` - WAV File Extension.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "Audio announcement file type location.\n * `ORGANIZATION` - Specifies this audio file is configured across the organization.\n * `LOCATION` - Specifies this audio file is configured across the location.\n" } } }, "AudioFileObject": { "type": "object", "required": [ "name", "mediaType" ], "properties": { "name": { "type": "string", "example": "AUDIO_FILE.wav", "description": "Announcement audio file name." }, "mediaType": { "type": "string", "enum": [ "WMA", "WAV", "3GP" ], "description": "Announcement audio file media type.\n * `WMA` - WMA File Extension.\n * `WAV` - WAV File Extension.\n * `3GP` - 3GP File Extension.\n" } } }, "AutoAttendantCallForwardSettingsDetailsObject": { "type": "object", "required": [ "always", "selective", "rules" ], "properties": { "always": { "$ref": "#/components/schemas/GetCallForwardAlwaysSettingObject", "description": "Settings for forwarding all incoming calls to the destination you choose." }, "selective": { "$ref": "#/components/schemas/GetCallForwardSelectiveSettingObject", "description": "Selectively forward calls to a designated number, depending on criteria rules. You'll need to have at least one rule for forwarding applied for call forwarding to be active." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardRulesObject" }, "description": "Rules for selectively forwarding calls." }, "operatingModes": { "type": "object", "required": [ "enabled", "currentOperatingModeId", "exceptionType" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Operating modes are enabled or disabled." }, "currentOperatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "The ID of the current operating mode." }, "exceptionType": { "type": "string", "enum": [ "MANUAL_SWITCH_BACK", "AUTOMATIC_SWITCH_BACK_EARLY_START", "AUTOMATIC_SWITCH_BACK_EXTENSION", "AUTOMATIC_SWITCH_BACK_STANDARD" ], "description": "The exception type.\n * `MANUAL_SWITCH_BACK` - The mode was switched to or extended by the user for manual switch back and runs as an exception until the user manual switches the feature back to normal operation or a different mode.\n * `AUTOMATIC_SWITCH_BACK_EARLY_START` - The mode was switched to by the user before its start time and runs as an exception until its end time is reached at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_EXTENSION` - The current mode was extended by the user before its end time and runs as an exception until the extension end time (mode's end time + extension of up to 12 hours) is reached at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_STANDARD` - The mode will remain the current operating mode for the feature until its normal end time is reached.\n" }, "modes": { "type": "array", "items": { "$ref": "#/components/schemas/ModesGet" }, "description": "Operating modes." } }, "description": "Settings related to operating modes." } } }, "AutoAttendantCallForwardSettingsModifyDetailsObject": { "type": "object", "properties": { "always": { "$ref": "#/components/schemas/ModifyCallForwardAlwaysSettingObject", "description": "Settings for forwarding all incoming calls to the destination you choose." }, "selective": { "$ref": "#/components/schemas/ModifyCallForwardSelectiveSettingObject", "description": "Selectively forward calls to a designated number, depending on criteria rules. You'll need to have at least one rule for forwarding applied for call forwarding to be active." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardRulesModifyObject" }, "description": "Rules for selectively forwarding calls. (Rules which are omitted in the list will not be deleted.)" }, "operatingModes": { "type": "object", "description": "Configuration for forwarding via Operating modes (Schedule Based Routing).", "required": [ "enabled", "modes" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether operating modes forwarding is enabled." }, "modes": { "type": "array", "items": { "$ref": "#/components/schemas/ModesPatch" }, "description": "List of operating mode configurations." } } } } }, "CallForwardRulesModifyObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "description": "A unique identifier for the auto attendant call forward selective rule." }, "enabled": { "type": "boolean", "example": true, "description": "Flag to indicate if always call forwarding selective rule criteria is active. If not set, flag will be set to false." } } }, "CallForwardRulesObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "description": "Unique ID for the rule." }, "name": { "type": "string", "example": "Test Rule", "description": "Unique name of rule." }, "callsFrom": { "type": "string", "example": "Any private number", "description": "Comma-separated list of incoming call numbers that, when matched, will not be forwarded. A Limit of 12 numbers is allowed. Use `Any private Number` in the comma-separated value to indicate rules that match incoming calls from a private number. Use `Any unavailable number` in the comma-separated value to match incoming calls from an unavailable number." }, "callsTo": { "type": "string", "example": "+19705550006", "description": "Comma-separated list of the types of numbers being matched for incoming call destination." }, "forwardTo": { "type": "string", "example": "+19705550026", "description": "Number to which calls will be forwarded if the rule is of type \"Forward To\" and the incoming call is matched." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." } } }, "CallForwardSelectiveCallsFromCustomNumbersObject": { "type": "object", "required": [ "privateNumberEnabled", "unavailableNumberEnabled", "numbers" ], "properties": { "privateNumberEnabled": { "type": "boolean", "example": true, "description": "Match if caller ID indicates the call is from a private number." }, "unavailableNumberEnabled": { "type": "boolean", "description": "Match if callerID is unavailable." }, "numbers": { "type": "array", "items": { "type": "string", "example": "[\"+12147691003\", \"+12147691004\"]" }, "description": "Array of number strings to be matched against incoming caller ID." } } }, "CallForwardSelectiveCallsFromObject": { "type": "object", "required": [ "selection" ], "properties": { "selection": { "type": "string", "enum": [ "ANY", "CUSTOM" ], "description": "If `CUSTOM`, use `customNumbers` to specify which incoming caller ID values cause this rule to match. `ANY` means any incoming call matches assuming the rule is in effect based on the associated schedules.\n * `ANY` - Rule matches for calls from any number.\n * `CUSTOM` - Rule matches based on the numbers and options in customNumbers.\n" }, "customNumbers": { "$ref": "#/components/schemas/CallForwardSelectiveCallsFromCustomNumbersObject", "description": "Custom rules for matching incoming caller ID information. Mandatory if the selection option is set to `CUSTOM`." } } }, "CallForwardSelectiveCallsToNumbersObject": { "type": "object", "required": [ "type" ], "properties": { "phoneNumber": { "type": "string", "example": "+19705550028", "description": "AutoCalls To phone number. Either phone number or extension should be present as mandatory." }, "extension": { "type": "string", "example": "1001", "description": "Calls To extension. Either `phoneNumber` or `extension` is mandatory." }, "type": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE" ], "description": "Calls to type options.\n * `PRIMARY` - Indicates that the given `phoneNumber` or `extension` associated with this rule's containing object is a primary number or extension.\n * `ALTERNATE` - Indicates that the given `phoneNumber` or `extension` associated with this rule's containing object is an alternate number or extension.\n" } } }, "CallForwardSelectiveCallsToObject": { "type": "object", "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardSelectiveCallsToNumbersObject" }, "description": "Array of numbers to be matched against the calling destination number." } } }, "CallForwardSelectiveForwardToObject": { "type": "object", "required": [ "selection" ], "properties": { "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Phone number used if selection is `FORWARD_TO_SPECIFIED_NUMBER`." }, "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "Controls what happens when the rule matches.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, forward to the destination for the auto attendant.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination for this rule.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" } } }, "GetAutoAttendantCallForwardSelectiveRuleObject": { "type": "object", "required": [ "id", "name", "enabled", "businessSchedule", "forwardTo", "callsFrom", "callsTo" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9WR1Z6ZENCU2RXeGw", "description": "Unique ID for the rule." }, "name": { "type": "string", "example": "Test Rule", "description": "Unique name for the selective rule in the auto attendant." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "$ref": "#/components/schemas/CallForwardSelectiveForwardToObject", "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "$ref": "#/components/schemas/CallForwardSelectiveCallsFromObject", "description": "Settings related to the rule matching based on incoming caller ID." }, "callsTo": { "$ref": "#/components/schemas/CallForwardSelectiveCallsToObject", "description": "Settings related to the rule matching based on the destination number." } } }, "GetAutoAttendantCallForwardSettingsObject": { "type": "object", "required": [ "callForwarding" ], "properties": { "callForwarding": { "$ref": "#/components/schemas/AutoAttendantCallForwardSettingsDetailsObject", "description": "Settings related to `Always`, `Busy`, and `No Answer` call forwarding." } } }, "GetAutoAttendantObject": { "type": "object", "required": [ "id", "name", "enabled", "tollFreeNumber", "firstName", "lastName", "businessSchedule", "extensionDialing", "nameDialing", "businessHoursMenu", "afterHoursMenu" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the auto attendant." }, "name": { "type": "string", "example": "Main Line AA - Test", "description": "Unique name for the auto attendant." }, "enabled": { "type": "boolean", "example": true, "description": "Flag to indicate if auto attendant number is enabled or not." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Auto attendant phone number. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "1001", "description": "Auto attendant extension. Either `phoneNumber` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341001", "description": "Routing prefix + extension of a person or workspace." }, "tollFreeNumber": { "type": "boolean", "description": "Flag to indicate if auto attendant number is toll-free number." }, "firstName": { "type": "string", "example": "Main Line AA", "description": "First name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Test", "description": "Last name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersObject" }, "description": "Alternate numbers defined for the auto attendant." }, "language": { "type": "string", "example": "English", "description": "Language for the auto attendant." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code for the auto attendant." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Business hours defined for the auto attendant." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Holiday defined for the auto attendant." }, "extensionDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Extension dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "nameDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Name dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Time zone defined for the auto attendant." }, "businessHoursMenu": { "$ref": "#/components/schemas/HoursMenuGetObject", "description": "Business hours menu defined for the auto attendant." }, "afterHoursMenu": { "$ref": "#/components/schemas/HoursMenuGetObject", "description": "After hours menu defined for the auto attendant." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this auto attendant." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "GetCallForwardAlwaysSettingObject": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "sendToVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Always` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19705550006", "description": "Destination for `Always` call forwarding. Required if field `enabled` is set to `true`." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "GetCallForwardSelectiveSettingObject": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "sendToVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Busy` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19705550006", "description": "Destination for `Busy` call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "HoursMenuGetObject": { "type": "object", "required": [ "greeting", "extensionEnabled", "keyConfigurations" ], "properties": { "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type defined for the auto attendant." }, "extensionEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if auto attendant extension is enabled or not." }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileGetObject", "description": "Announcement Audio File details." }, "keyConfigurations": { "$ref": "#/components/schemas/KeyConfigurationsGetObject", "description": "Key configurations defined for the auto attendant." }, "callTreatment": { "$ref": "#/components/schemas/CallTreatmentObject", "description": "Call treatment details." } } }, "HoursMenuObject": { "type": "object", "required": [ "greeting", "extensionEnabled", "keyConfigurations" ], "properties": { "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type defined for the auto attendant." }, "extensionEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if auto attendant extension is enabled or not." }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileObject", "description": "Announcement Audio File details." }, "keyConfigurations": { "$ref": "#/components/schemas/KeyConfigurationsObject", "description": "Key configurations defined for the auto attendant." }, "callTreatment": { "$ref": "#/components/schemas/CallTreatmentObject", "description": "Call treatment details." } } }, "KeyConfigurationsGetObject": { "type": "object", "required": [ "key", "action" ], "properties": { "key": { "type": "string", "enum": [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "*", "#" ], "description": "Key assigned to specific menu configuration." }, "action": { "type": "string", "enum": [ "PLAY_ANNOUNCEMENT", "TRANSFER_WITH_PROMPT", "TRANSFER_WITHOUT_PROMPT", "TRANSFER_TO_OPERATOR", "TRANSFER_TO_MAILBOX", "NAME_DIALING", "EXTENSION_DIALING", "REPEAT_MENU", "EXIT" ], "description": "Action assigned to specific menu key configuration.\n * `PLAY_ANNOUNCEMENT` - Plays a recorded message and then returns to the current Auto Attendant menu.\n * `TRANSFER_WITH_PROMPT` - Transfers the call to the specified number, without playing a transfer prompt.\n * `TRANSFER_WITHOUT_PROMPT` - Plays the message and then transfers the call to the specified number.\n * `TRANSFER_TO_OPERATOR` - Plays the message and then transfers the call to the specified operator number.\n * `TRANSFER_TO_MAILBOX` - Prompts the user for an extension, and transfers the user to voice mailbox of the dialed extension.\n * `NAME_DIALING` - Brings the user into the automated name directory.\n * `EXTENSION_DIALING` - Prompts the user for an extension, and transfers the user.\n * `REPEAT_MENU` - Replays the Auto Attendant greeting.\n * `EXIT` - Terminates the call.\n" }, "description": { "type": "string", "example": "Exit the menu", "description": "The description of each menu key." }, "value": { "type": "string", "example": "+19705550006", "description": "Value based on actions." }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileGetObject", "description": "Pre-configured announcement audio files when PLAY_ANNOUNCEMENT is set." } } }, "KeyConfigurationsObject": { "type": "object", "required": [ "key", "action" ], "properties": { "key": { "type": "string", "enum": [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "*", "#" ], "description": "Key assigned to specific menu configuration." }, "action": { "type": "string", "enum": [ "PLAY_ANNOUNCEMENT", "TRANSFER_WITH_PROMPT", "TRANSFER_WITHOUT_PROMPT", "TRANSFER_TO_OPERATOR", "TRANSFER_TO_MAILBOX", "NAME_DIALING", "EXTENSION_DIALING", "REPEAT_MENU", "EXIT" ], "description": "Action assigned to specific menu key configuration.\n * `PLAY_ANNOUNCEMENT` - Plays a recorded message and then returns to the current Auto Attendant menu.\n * `TRANSFER_WITH_PROMPT` - Transfers the call to the specified number, without playing a transfer prompt.\n * `TRANSFER_WITHOUT_PROMPT` - Plays the message and then transfers the call to the specified number.\n * `TRANSFER_TO_OPERATOR` - Plays the message and then transfers the call to the specified operator number.\n * `TRANSFER_TO_MAILBOX` - Prompts the user for an extension, and transfers the user to voice mailbox of the dialed extension.\n * `NAME_DIALING` - Brings the user into the automated name directory.\n * `EXTENSION_DIALING` - Prompts the user for an extension, and transfers the user.\n * `REPEAT_MENU` - Replays the Auto Attendant greeting.\n * `EXIT` - Terminates the call.\n" }, "description": { "type": "string", "example": "Exit the menu", "description": "The description of each menu key." }, "value": { "type": "string", "example": "+19705550006", "description": "Value based on actions." }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileObject", "description": "Pre-configured announcement audio files when PLAY_ANNOUNCEMENT is set." } } }, "ListAutoAttendantObject": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "tollFreeNumber" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the auto attendant." }, "name": { "type": "string", "example": "Main Line AA - Test", "description": "Unique name for the auto attendant." }, "locationName": { "type": "string", "example": "Houston", "description": "Name of location for auto attendant." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzI2NDE1MA", "description": "ID of location for auto attendant." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Auto attendant phone number. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "1001", "description": "Auto attendant extension. Either `phoneNumber` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341001", "description": "Routing prefix + extension of a person or workspace." }, "tollFreeNumber": { "type": "boolean", "description": "Flag to indicate if auto attendant number is toll-free number." } } }, "ModifyAutoAttendantCallForwardSelectiveRuleObject": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "Test Rule New Name", "description": "Unique name for the selective rule in the auto attendant." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "$ref": "#/components/schemas/CallForwardSelectiveForwardToObject", "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "$ref": "#/components/schemas/CallForwardSelectiveCallsFromObject", "description": "Settings related the rule matching based on incoming caller ID." }, "callsTo": { "$ref": "#/components/schemas/CallForwardSelectiveCallsToObject", "description": "Settings related to the rule matching based on the destination number." } } }, "ModifyAutoAttendantCallForwardSettingsObject": { "type": "object", "required": [ "callForwarding" ], "properties": { "callForwarding": { "$ref": "#/components/schemas/AutoAttendantCallForwardSettingsModifyDetailsObject", "description": "Settings related to `Always`, `Busy`, and `No Answer` call forwarding." } } }, "ModifyAutoAttendantObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Main Line IA - Test", "description": "Unique name for the auto attendant." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Auto attendant phone number. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "1001", "description": "Auto attendant extension. Either `phoneNumber` or `extension` is mandatory." }, "firstName": { "type": "string", "example": "Main Line AA", "description": "First name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Test", "description": "Last name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersObject" }, "description": "Alternate numbers defined for the auto attendant." }, "languageCode": { "type": "string", "example": "en_us", "description": "Announcement language code for the auto attendant." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Business hours defined for the auto attendant." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Holiday defined for the auto attendant." }, "extensionDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Extension dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "nameDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Name dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Time zone defined for the auto attendant." }, "businessHoursMenu": { "$ref": "#/components/schemas/HoursMenuObject", "description": "Business hours menu defined for the auto attendant." }, "afterHoursMenu": { "$ref": "#/components/schemas/HoursMenuObject", "description": "After hours menu defined for the auto attendant." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this auto attendant." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "ModifyCallForwardAlwaysSettingObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Always` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19705550006", "description": "Destination for `Always` call forwarding. Required if field `enabled` is set tu true." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "ModifyCallForwardSelectiveSettingObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Busy` call forwarding is enable or disabled." }, "destination": { "type": "string", "example": "+19705550006", "description": "Destination for `Busy` call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "PostAutoAttendantCallForwardSelectiveRuleObject": { "type": "object", "required": [ "name", "forwardTo", "callsFrom" ], "properties": { "name": { "type": "string", "example": "Test Rule", "description": "Unique name for the selective rule in the auto attendant." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "$ref": "#/components/schemas/CallForwardSelectiveForwardToObject", "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "$ref": "#/components/schemas/CallForwardSelectiveCallsFromObject", "description": "Settings related to the rule matching based on incoming caller ID." }, "callsTo": { "$ref": "#/components/schemas/CallForwardSelectiveCallsToObject", "description": "Settings related to the rule matching based on the destination number." } } }, "PostAutoAttendantObject": { "type": "object", "required": [ "name", "businessSchedule", "businessHoursMenu", "afterHoursMenu" ], "properties": { "name": { "type": "string", "example": "Main Line IA - Test", "description": "Unique name for the auto attendant." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "Auto attendant phone number. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "1001", "description": "Auto attendant extension. Either `phoneNumber` or `extension` is mandatory." }, "firstName": { "type": "string", "example": "Main Line AA", "description": "First name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Test", "description": "Last name defined for an auto attendant. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersObject" }, "description": "Alternate numbers defined for the auto attendant." }, "languageCode": { "type": "string", "example": "en_us", "description": "Announcement language code for the auto attendant." }, "businessSchedule": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Business hours defined for the auto attendant." }, "holidaySchedule": { "type": "string", "example": "AUTOATTENDANT-HOLIDAY", "description": "Holiday defined for the auto attendant." }, "extensionDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Extension dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "nameDialing": { "type": "string", "enum": [ "ENTERPRISE", "GROUP" ], "description": "Name dialing setting. If the values are not set default will be set as `ENTERPRISE`." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Time zone defined for the auto attendant." }, "businessHoursMenu": { "$ref": "#/components/schemas/PostHoursMenuObject", "description": "Business hours menu defined for the auto attendant." }, "afterHoursMenu": { "$ref": "#/components/schemas/PostHoursMenuObject", "description": "After hours menu defined for the auto attendant." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this auto attendant." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PostHoursMenuObject": { "type": "object", "required": [ "greeting", "extensionEnabled", "keyConfigurations" ], "properties": { "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type defined for the auto attendant." }, "extensionEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if auto attendant extension is enabled or not." }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileObject", "description": "Announcement Audio File details." }, "keyConfigurations": { "$ref": "#/components/schemas/KeyConfigurationsObject", "description": "Key configurations defined for the auto attendant." }, "callTreatment": { "$ref": "#/components/schemas/CallTreatmentObject", "description": "Call treatment details." } } }, "AutoAttendantPrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AutoAttendantPrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "AutoAttendantPrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "STATE": { "type": "string", "enum": [ "ACTIVE", "INACTIVE" ], "description": " * `ACTIVE` - Phone number is in the active state.\n * `INACTIVE` - Phone number is in the inactive state.\n" }, "TelephonyType": { "type": "string", "enum": [ "PSTN_NUMBER" ], "description": " * `PSTN_NUMBER` - The object is a PSTN number.\n" }, "AutoAttendantAlternateAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AutoAttendantAlternateAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "AutoAttendantAlternateAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "AutoAttendantCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AutoAttendantCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "AutoAttendantCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "ModesGet": { "type": "object", "required": [ "normalOperationEnabled", "id", "name", "type", "level", "forwardTo" ], "properties": { "normalOperationEnabled": { "type": "boolean", "example": true, "description": "Normal operation is enabled or disabled." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "The ID of the operating mode." }, "name": { "type": "string", "example": "Day", "description": "The name of the operating mode." }, "type": { "type": "string", "enum": [ "NONE", "SAME_HOURS_DAILY", "DIFFERENT_HOURS_DAILY", "HOLIDAY" ], "description": "The type of the operating mode.\n * `NONE` - The operating mode is not scheduled.\n * `SAME_HOURS_DAILY` - Single time duration for Monday-Friday and single time duration for Saturday-Sunday.\n * `DIFFERENT_HOURS_DAILY` - Individual time durations for every day of the week.\n * `HOLIDAY` - Holidays which have date durations spanning multiple days, as well as an optional yearly recurrence by day or date.\n" }, "level": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "The level of the operating mode.\n * `LOCATION` - The operating mode is at the location level.\n * `ORGANIZATION` - The operating mode is at the organization level.\n" }, "forwardTo": { "type": "object", "required": [ "selection", "destination", "destinationVoicemailEnabled", "defaultDestination", "defaultDestinationVoicemailEnabled", "defaultForwardToSelection" ], "properties": { "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "The selection for forwarding.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, the mode's own default forwarding selection is to be applied.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" }, "destination": { "type": "string", "example": "+19705550006", "description": "The destination for forwarding. Required when the selection is set to `FORWARD_TO_SPECIFIED_NUMBER`." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Sending incoming calls to voicemail is enabled/disabled when the destination is an internal phone number and that number has the voicemail service enabled." }, "defaultDestination": { "type": "string", "example": "00000", "description": "The operating mode's destination." }, "defaultDestinationVoicemailEnabled": { "type": "boolean", "description": "The operating mode's destination voicemail enabled." }, "defaultForwardToSelection": { "type": "string", "enum": [ "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "The operating mode's forward to selection.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" } }, "description": "Forward to settings." } } }, "ModesPatch": { "type": "object", "required": [ "normalOperationEnabled", "id", "forwardTo" ], "properties": { "normalOperationEnabled": { "type": "boolean", "example": true, "description": "Normal operation is enabled or disabled." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "The ID of the operating mode." }, "forwardTo": { "type": "object", "required": [ "selection" ], "properties": { "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "The selection for forwarding.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, forward to the destination for the hunt group.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination for this rule.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" }, "destination": { "type": "string", "example": "+19705550006", "description": "The destination for forwarding. Required when the selection is set to `FORWARD_TO_SPECIFIED_NUMBER`." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Sending incoming calls to voicemail is enabled/disabled when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Forward to settings." } } }, "GetAnnouncementFileInfo": { "type": "object", "required": [ "id", "fileName", "fileSize", "mediaFileType", "level", "isTextToSpeech" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9kODc5YWZlZC1jNTRhLTQyOTctOGY0Mi02ZmEyMDJjN2E1M2E", "description": "ID of the announcement." }, "fileName": { "type": "string", "example": "Greeting-1.wav", "description": "Name of greeting file." }, "fileSize": { "type": "string", "example": "33456", "description": "Size of greeting file in kilo-bytes." }, "mediaFileType": { "$ref": "#/components/schemas/mediaType", "description": "Media file type of the announcement." }, "level": { "$ref": "#/components/schemas/level", "description": "Level where the announcement is created." }, "isTextToSpeech": { "type": "boolean", "description": "Indicates whether the announcement is a text-to-speech file." } } }, "mediaType": { "type": "string", "enum": [ "WMA", "WAV", "GP", "MOV" ], "description": " * `WMA` - WMA File Extension.\n * `WAV` - WAV File Extension.\n * `GP` - 3GP File Extension.\n * `MOV` - MOV File Extension.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION", "ENTITY" ], "description": " * `ORGANIZATION` - Organization level.\n * `LOCATION` - Location level.\n * `ENTITY` - Entity level.\n" }, "CallTreatmentObject": { "type": "object", "properties": { "retryAttemptForNoInput": { "type": "string", "enum": [ "NO_REPEAT", "ONE_TIME", "TWO_TIMES", "THREE_TIMES" ], "description": "Number of times to repeat the Welcome greeting when the user does not provide an input. By default, NO_REPEAT is set.\n * `NO_REPEAT` - Announcement will not be repeated.\n * `ONE_TIME` - Repeat the announcement once.\n * `TWO_TIMES` - Repeat the announcement twice.\n * `THREE_TIMES` - Repeat the announcement thrice.\n" }, "noInputTimer": { "type": "string", "example": "10", "description": "Interval the Auto Attendant service waits before timing out. By default, 10 seconds. Min value is 1 and max value is 60." }, "actionToBePerformed": { "$ref": "#/components/schemas/ActionToBePerformedObject", "description": "Action to perform after the retry attempt is reached." } } }, "ActionToBePerformedObject": { "type": "object", "required": [ "action", "greeting" ], "properties": { "action": { "type": "string", "enum": [ "PLAY_MESSAGE_AND_DISCONNECT", "TRANSFER_WITHOUT_PROMPT", "TRANSFER_WITH_PROMPT", "TRANSFER_TO_OPERATOR", "TRANSFER_TO_MAILBOX", "DISCONNECT" ], "description": "Action to perform after the retry attempt is reached.\n * `PLAY_MESSAGE_AND_DISCONNECT` - Plays a recorded message and then disconnects the call.\n * `TRANSFER_WITHOUT_PROMPT` - Transfers the call to the specified number, without playing a transfer prompt.\n * `TRANSFER_WITH_PROMPT` - Plays the message and then transfers the call to the specified number.\n * `TRANSFER_TO_OPERATOR` - Plays the message and then transfers the call to the specified operator number.\n * `TRANSFER_TO_MAILBOX` - Transfers the call to the configured mailbox, without playing a transfer prompt.\n * `DISCONNECT` - Disconnect the call.\n" }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type is defined when `action` is set to `PLAY_MESSAGE_AND_DISCONNECT`.\n * `DEFAULT` - Play default greeting.\n * `CUSTOM` - Play custom greeting.\n" }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileGetObject", "description": "Pre-configured announcement audio files when `action` is set to `PLAY_MESSAGE_AND_DISCONNECT` and `greeting` is set to `CUSTOM`." }, "transferCallTo": { "type": "string", "example": "9878945608", "description": "Transfer call to the specified number when `action` is set to `TRANSFER_WITH_PROMPT`, `TRANSFER_WITHOUT_PROMPT` and `TRANSFER_TO_OPERATOR` and `TRANSFER_TO_MAILBOX`." } } }, "DirectLineCallerIdNameObject": { "type": "object", "properties": { "selection": { "$ref": "#/components/schemas/SelectionObject", "description": "The selection of the direct line caller ID name. Defaults to `DISPLAY_NAME`." }, "customName": { "type": "string", "example": "Hakim Smith", "description": "The custom direct line caller ID name. Required if `selection` is set to `CUSTOM_NAME`." } }, "description": "Settings for the direct line caller ID name to be shown for this workspace." }, "DirectLineCallerIdNameObjectForPut": { "type": "object", "properties": { "selection": { "$ref": "#/components/schemas/SelectionObject", "description": "The selection of the direct line caller ID name." }, "customName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the custom direct line caller ID name. To clear the `customName`, the attribute must be set to null or empty string. Required if `selection` is set to `CUSTOM_NAME`." } }, "description": "Settings for the direct line caller ID name to be shown for this workspace." }, "SelectionObject": { "type": "string", "enum": [ "CUSTOM_NAME", "DISPLAY_NAME" ], "description": " * `DISPLAY_NAME` - When this option is selected, `displayName` is to be shown for this workspace.\n * `CUSTOM_NAME` - When this option is selected, `customName` is to be shown for this workspace." }, "CallParkSettingsObject": { "type": "object", "required": [ "ringPattern" ], "properties": { "ringPattern": { "type": "string", "enum": [ "NORMAL", "LONG_LONG", "SHORT_SHORT_LONG", "SHORT_LONG_SHORT" ], "description": "Ring pattern for when this callpark is called.\n * `NORMAL` - Normal incoming ring pattern.\n * `LONG_LONG` - Incoming ring pattern of two long rings.\n * `SHORT_SHORT_LONG` - Incoming ring pattern of two short rings, followed by a short ring.\n * `SHORT_LONG_SHORT` - Incoming ring pattern of a short ring, followed by a long ring, followed by a short ring.\n" }, "recallTime": { "type": "number", "example": 60, "description": "Amount of time within 30 and 600 seconds the Call Park will be parked. If the call isn't picked up within the set time, then the call will be recalled based on the Call Park Recall setting." }, "huntWaitTime": { "type": "number", "example": 60, "description": "Amount of time within 30 and 600 seconds the Call Park will be parked. If the call isn't picked up, the call will revert back to the hunt group (after the person who parked the call is alerted)." } } }, "GetAvailableRecallHuntGroupsObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "description": "A unique identifier for the hunt group." }, "name": { "type": "string", "example": "Technical Support Group - 5558675309", "description": "Unique name for the hunt group." } } }, "GetCallParkExtensionObject": { "type": "object", "required": [ "extension", "name" ], "properties": { "extension": { "type": "string", "example": "1415", "description": "The extension for the call park extension." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341415", "description": "Routing prefix + extension of a person or workspace." }, "name": { "type": "string", "example": "14159265", "description": "Unique name for the call park extension." } } }, "GetCallParkObject": { "type": "object", "required": [ "id", "name", "recall", "parkOnAgentsEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "description": "A unique identifier for the call park." }, "name": { "type": "string", "example": "technical support - insurance - customer 1", "description": "Unique name for the call park. The maximum length is 80." }, "recall": { "$ref": "#/components/schemas/GetRecallHuntGroupObject", "description": "Recall options that are added to call park." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineCallParksObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "parkOnAgentsEnabled": { "type": "boolean", "description": "Whether or not the calls will be parked on agents as a destination." }, "callParkExtensions": { "type": "array", "items": { "$ref": "#/components/schemas/ListCPCallParkExtensionObject" }, "description": "Array of call park extensions assigned to a call park." } } }, "GetCallParkSettingsObject": { "type": "object", "required": [ "callParkRecall", "callParkSettings" ], "properties": { "callParkRecall": { "$ref": "#/components/schemas/GetRecallHuntGroupObject", "description": "Recall options that are added to call park." }, "callParkSettings": { "$ref": "#/components/schemas/CallParkSettingsObject", "description": "Setting controlling call park behavior." } } }, "GetPersonPlaceVirtualLineCallParksObject": { "type": "object", "required": [ "id", "firstName", "lastName", "displayName", "type", "email" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "description": "ID of a person, workspace or virtual line." }, "firstName": { "type": "string", "example": "John", "description": "First name of a person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Brown", "description": "Last name of a person, workspace or virtual line." }, "displayName": { "type": "string", "example": "johnBrown", "description": "Display name of a person, workspace or virtual line." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": "Type of the person, workspace or virtual line.\n * `PEOPLE` - Indicates that this object is a user.\n * `PLACE` - Indicates that this object is a place.\n * `VIRTUAL_LINE` - Indicates that this object is a virtual line.\n" }, "email": { "type": "string", "example": "john.brown@example.com", "description": "Email of a person or workspace." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/GetUserNumberItemObject" }, "description": "List of phone numbers of a person, workspace or virtual line." } } }, "GetRecallHuntGroupObject": { "type": "object", "required": [ "option" ], "properties": { "huntGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "description": "Alternate user which is a hunt group ID for call park recall alternate destination." }, "huntGroupName": { "type": "string", "example": "Technical Support Group - 5558675309", "description": "Unique name for the hunt group." }, "option": { "type": "string", "enum": [ "ALERT_PARKING_USER_ONLY", "ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP", "ALERT_HUNT_GROUP_ONLY" ], "description": "Call park recall options.\n * `ALERT_PARKING_USER_ONLY` - Alert parking user only.\n * `ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP` - Alert parking user first, then hunt group.\n * `ALERT_HUNT_GROUP_ONLY` - Alert hunt group only.\n" } } }, "GetUserNumberItemObject": { "type": "object", "properties": { "external": { "type": "string", "example": "+19075552859", "description": "Phone number of a person, workspace or virtual line." }, "extension": { "type": "string", "example": "8080", "description": "Extension of a person, workspace or virtual line." } } }, "ListCPCallParkExtensionObject": { "type": "object", "required": [ "id", "extension", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMGYzZTkwNGItYzliNC00ODNmLWI4MWItZmI0ZjkyMWcxNDUzCg", "description": "Unique identifier for the call park extension." }, "extension": { "type": "string", "example": "1415", "description": "The extension for the call park." }, "name": { "type": "string", "example": "14159265", "description": "A unique name for the call park extension." } } }, "ListCallParkExtensionObject": { "type": "object", "required": [ "id", "extension", "name", "locationId", "locationName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vMGYzZTkwNGItYzliNC00ODNmLWI4MWItZmI0ZjkyMWcxNDUzCg", "description": "Unique identifier for the call park extension." }, "extension": { "type": "string", "example": "1415", "description": "The extension for the call park extension." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341415", "description": "Routing prefix + extension of a person or workspace." }, "name": { "type": "string", "example": "14159265", "description": "A unique name for the call park extension." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location for call park extension." }, "locationName": { "type": "string", "example": "WXCSIVDKCPAPIC4S1", "description": "Name of location for call park extension." } } }, "ListCallParkObject": { "type": "object", "required": [ "name", "id", "locationName", "locationId" ], "properties": { "name": { "type": "string", "example": "technical support - insurance - customer 1", "description": "Unique name for the call park. The maximum length is 80." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSSy9kR1ZqYUc1cFkyRnNJSE4xY0hCdmNuUWdMU0JwYm5OMWNtRnVZMlVnTFNCamRYTjBiMjFsY2lBeA==", "description": "A unique identifier for the call park." }, "locationName": { "type": "string", "example": "Alaska", "description": "Name of the location for the call park." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of the location for the call park." } } }, "ModifyCallExtensionParkObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Illinois, Call Park Extension", "description": "Name for the call park extension. The maximum length is 30." }, "extension": { "type": "string", "example": "407721", "description": "Unique extension which will be assigned to call park extension. The minimum length is 2, maximum length is 10." } } }, "ModifyCallParkObject": { "type": "object", "properties": { "name": { "type": "string", "example": "technical support - insurance - customer 1", "description": "Unique name for the call park. The maximum length is 80." }, "recall": { "$ref": "#/components/schemas/PutRecallHuntGroupObject", "description": "Recall options that are added to call park." }, "agents": { "type": "array", "items": { "type": "string" }, "description": "Array of ID strings of people, workspaces and virtual lines that are added to call park. The new list of `agents` will replace any existing call park agents list." }, "parkOnAgentsEnabled": { "type": "boolean", "description": "Whether or not the calls will be parked on agents as a destination." }, "callParkExtensions": { "type": "array", "items": { "type": "string" }, "description": "Array of ID strings of call park extensions assigned to a call park." } } }, "ModifyCallParkSettingsObject": { "type": "object", "properties": { "callParkRecall": { "$ref": "#/components/schemas/PutRecallHuntGroupObject", "description": "Recall options that are added to call park." }, "callParkSettings": { "$ref": "#/components/schemas/CallParkSettingsObject", "description": "Setting controlling call park behavior." } } }, "PostCallParkExtensionObject": { "type": "object", "required": [ "name", "extension" ], "properties": { "name": { "type": "string", "example": "Illinois, Call Park Extension", "description": "Name for the call park extension. The maximum length is 30." }, "extension": { "type": "string", "example": "407721", "description": "Unique extension which will be assigned to call park extension. The minimum length is 2, maximum length is 10." } } }, "PostCallParkObject": { "type": "object", "required": [ "name", "recall" ], "properties": { "name": { "type": "string", "example": "technical support - insurance - customer 1", "description": "Unique name for the call park. The maximum length is 80." }, "recall": { "$ref": "#/components/schemas/PutRecallHuntGroupObject", "description": "Recall options that are added to the call park." }, "agents": { "type": "array", "items": { "type": "string" }, "description": "Array of ID strings of people, workspaces and virtual lines that are added to the call park." }, "parkOnAgentsEnabled": { "type": "boolean", "description": "Whether or not the calls will be parked on agents as a destination." }, "callParkExtensions": { "type": "array", "items": { "type": "string" }, "description": "Array of ID strings of call park extensions assigned to a call park." } } }, "PutRecallHuntGroupObject": { "type": "object", "required": [ "option" ], "properties": { "huntGroupId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZEdWamFHNXBZMkZzTFhOMWNIQnZjblF0TlRVMU9EWTNOVE13T1VCbmJXRnBiQzVqYjIwPQ", "description": "Alternate user which is a hunt group ID for call park recall alternate destination." }, "option": { "type": "string", "enum": [ "ALERT_PARKING_USER_ONLY", "ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP", "ALERT_HUNT_GROUP_ONLY" ], "description": "Call park recall options.\n * `ALERT_PARKING_USER_ONLY` - Alert parking user only.\n * `ALERT_PARKING_USER_FIRST_THEN_HUNT_GROUP` - Alert parking user first, then hunt group.\n * `ALERT_HUNT_GROUP_ONLY` - Alert hunt group only.\n" } } }, "GetCallPickupObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "description": "A unique identifier for the call pickup." }, "name": { "type": "string", "example": "North Alaska-Group", "description": "Unique name for the call pickup. The maximum length is 80." }, "notificationType": { "type": "string", "enum": [ "NONE", "AUDIO_ONLY", "VISUAL_ONLY", "AUDIO_AND_VISUAL" ], "description": "Type of the notification when an incoming call is unanswered. The call pickup group notifies all of its members. Default: NONE.\n * `NONE` - Notification is not sent to any member of the call pickup group.\n * `AUDIO_ONLY` - When the `notificationDelayTimerSeconds` number of seconds has elapsed, play an audio notification for each call pickup group member.\n * `VISUAL_ONLY` - When the `notificationDelayTimerSeconds` number of seconds has elapsed, provide a visual notification to every call pickup group member.\n * `AUDIO_AND_VISUAL` - When the `notificationDelayTimerSeconds` number of seconds has elapsed, provide an audio and visual notification to every call pickup group member.\n" }, "notificationDelayTimerSeconds": { "type": "number", "example": 6, "description": "After the number of seconds given by the `notificationDelayTimerSeconds` has elapsed, notify every member of the call pickup group when an incoming call goes unanswered. The `notificationType` field specifies the notification method. Default: 6." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineCallPickupObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." } } }, "GetPersonPlaceVirtualLineCallPickupObject": { "type": "object", "required": [ "id", "firstName", "lastName", "displayName", "type", "email" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of a person, workspace or virtual line." }, "firstName": { "type": "string", "example": "John", "description": "First name of a person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Brown", "description": "Last name of a person, workspace or virtual line." }, "displayName": { "type": "string", "example": "johnBrown", "description": "Display name of a person, workspace or virtual line." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": "Type of the person, workspace or virtual line.\n * `PEOPLE` - Indicates that this object is a user.\n * `PLACE` - Indicates that this object is a place.\n * `VIRTUAL_LINE` - Indicates that this object is a virtual line.\n" }, "email": { "type": "string", "example": "john.brown@example.com", "description": "Email of a person, workspace or virtual line." }, "phoneNumber": { "type": "array", "items": { "$ref": "#/components/schemas/GetUserNumberItemObject" }, "description": "List of phone numbers of a person, workspace or virtual line." } } }, "ListCallPickupObject": { "type": "object", "required": [ "name", "id", "locationName", "locationId" ], "properties": { "name": { "type": "string", "example": "North Alaska-Group", "description": "Unique name for the call pickup. The maximum length is 80." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "description": "A unique identifier for the call pickup." }, "locationName": { "type": "string", "example": "Alaska", "description": "Name of the location for call pickup." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of the location for call pickup." } } }, "ModifyCallPickupObject": { "type": "object", "properties": { "name": { "type": "string", "example": "North Alaska-Group", "description": "Unique name for the call pickup. The maximum length is 80." }, "notificationType": { "type": "string", "enum": [ "NONE", "AUDIO_ONLY", "VISUAL_ONLY", "AUDIO_AND_VISUAL" ], "description": "Type of the notification when an incoming call is unanswered. The call pickup group notifies all of its members. Default: NONE.\n * `NONE` - Notification is not sent to any member of the call pickup group.\n * `AUDIO_ONLY` - When the notificationDelayTimerSeconds number of seconds has elapsed, play an audio notification for each call pickup group member.\n * `VISUAL_ONLY` - When the notificationDelayTimerSeconds number of seconds has elapsed, provide a visual notification to every call pickup group member.\n * `AUDIO_AND_VISUAL` - When the `notificationDelayTimerSeconds` number of seconds has elapsed, provide an audio and visual notification to every call pickup group member.\n" }, "notificationDelayTimerSeconds": { "type": "number", "example": 6, "description": "After the number of seconds given by the `notificationDelayTimerSeconds` has elapsed, notify every member of the call pickup group when an incoming call goes unanswered. The `notificationType` field specifies the notification method. Default: 6." }, "agents": { "type": "array", "items": { "type": "string" }, "description": "An array of people, workspace, and virtual lines IDs, that are added to call pickup." } } }, "PostCallPickupObject": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "North Alaska-Group", "description": "Unique name for the call pickup. The maximum length is 80." }, "notificationType": { "type": "string", "enum": [ "NONE", "AUDIO_ONLY", "VISUAL_ONLY", "AUDIO_AND_VISUAL" ], "description": "Type of the notification when an incoming call is unanswered. The call pickup group notifies all of its members. Default: NONE.\n * `NONE` - Notification is not sent to any member of the call pickup group.\n * `AUDIO_ONLY` - When the notificationDelayTimerSeconds number of seconds has elapsed, play an audio notification for each call pickup group member.\n * `VISUAL_ONLY` - When the notificationDelayTimerSeconds number of seconds has elapsed, provide a visual notification to every call pickup group member.\n * `AUDIO_AND_VISUAL` - When the `notificationDelayTimerSeconds` number of seconds has elapsed, provide an audio and visual notification to every call pickup group member.\n" }, "notificationDelayTimerSeconds": { "type": "number", "example": 6, "description": "After the number of seconds given by the `notificationDelayTimerSeconds` has elapsed, notify every member of the call pickup group when an incoming call goes unanswered. The `notificationType` field specifies the notification method. Default: 6." }, "agents": { "type": "array", "items": { "type": "string" }, "description": "An Array of ID strings of people, workspaces and virtual lines that are added to call pickup." } } }, "AlternateNumbersWithPattern": { "type": "object", "required": [ "phoneNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Alternate phone number for the hunt group." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this alternate number is called. Only available when `distinctiveRing` is enabled for the hunt group." } } }, "AnnouncementAudioFile": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the Announcement file." }, "name": { "type": "string", "example": "Public_Announcement.wav", "description": "Name of the announcement file. `name`, `mediaFileType`, `level` are mandatory if `id` is not provided for uploading an announcement." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of announcement file." }, "level": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION", "ENTITY" ], "description": "The level at which this announcement exists." } } }, "AnnouncementAudioFileGet": { "type": "object", "required": [ "id", "name", "mediaFileType", "level", "isTextToSpeech" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC8zMjAxNjRmNC1lNWEzLTQxZmYtYTMyNi02N2MwOThlNDFkMWQ", "description": "Unique identifier of the Announcement file." }, "name": { "type": "string", "example": "Public_Announcement.wav", "description": "Name of the announcement file." }, "mediaFileType": { "type": "string", "example": "WAV", "description": "Media file type of announcement file." }, "level": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION", "ENTITY" ], "description": "The level at which this announcement exists." }, "isTextToSpeech": { "type": "boolean", "description": "Indicates whether the announcement is a text-to-speech file." } } }, "AudioAnnouncementFileFeatureGetObject": { "type": "object", "required": [ "id", "fileName", "mediaFileType", "level", "isTextToSpeech" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the announcement." }, "fileName": { "type": "string", "example": "AUDIO_FILE.wav", "description": "Audio announcement file name." }, "mediaFileType": { "type": "string", "enum": [ "WAV", "WMA", "3GP" ], "description": "Audio announcement file type.\n * `WAV` - WAV File Extension.\n * `WMA` - WMA File Extension.\n * `3GP` - 3GP File Extension.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION", "ENTITY" ], "description": "Audio announcement file type location.\n * `ORGANIZATION` - Audio file is configured across organization.\n * `LOCATION` - Audio file is configured across location.\n * `ENTITY` - Audio file is configured on instance level.\n" }, "isTextToSpeech": { "type": "boolean", "description": "Indicates whether the announcement is a text-to-speech file." } } }, "AudioAnnouncementFileFeatureObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5UL2QzVjBPWFIxWjJkM2FFQm1iR1Y0TWk1amFYTmpieTVqYjIw", "description": "A unique identifier for the announcement. `name`, `mediaFileType`, `level` are mandatory if `id` is not provided for uploading an announcement." }, "fileName": { "type": "string", "example": "AUDIO_FILE.wav", "description": "Audio announcement file name." }, "mediaFileType": { "type": "string", "enum": [ "WAV", "WMA", "3GP" ], "description": "Audio announcement file type.\n * `WAV` - WAV File Extension.\n * `WMA` - WMA File Extension.\n * `3GP` - 3GP File Extension.\n" }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION", "ENTITY" ], "description": "Audio announcement file type location.\n * `ORGANIZATION` - Audio file is configured across organisation.\n * `LOCATION` - Audio file is configured across location.\n * `ENTITY` - Audio file is configured on instance level.\n" } } }, "CallForwardRulesGet": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9kR1Z6ZEZKMWJHVTA", "description": "Unique ID for the rule." }, "name": { "type": "string", "example": "My Rule", "description": "Unique name of rule." }, "callFrom": { "type": "string", "example": "Any private Number,2025551212", "description": "Comma-separated list of incoming call numbers that, when matched, will not be forwarded. A Limit of 12 numbers is allowed. Use `Any private Number` in the comma-separated value to indicate rules that match incoming calls from a private number. Use `Any unavailable number` in the comma-separated value to match incoming calls from an unavailable number." }, "callsTo": { "type": "string", "example": "Primary", "description": "Comma-separated list of the types of numbers being matched for incoming call destination." }, "forwardTo": { "type": "string", "example": "2025557736", "description": "Number to which calls will be forwarded if the rule is of type \"Forward To\" and the incoming call is matched." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." } } }, "CallForwardRulesSet": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9kR1Z6ZEZKMWJHVTA", "description": "Unique ID for the rule." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." } } }, "CallForwardSettingsGet": { "type": "object", "required": [ "callForwarding" ], "properties": { "callForwarding": { "type": "object", "required": [ "always", "selective" ], "properties": { "always": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Always` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Always\" call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you choose." }, "selective": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Busy` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for `Busy` call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Indicates enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Selectively forward calls to a designated number, depending on criteria rules. You'll need to have at least one rule for forwarding applied for call forwarding to be active." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardRulesGet" }, "description": "Rules for selectively forwarding calls." }, "operatingModes": { "type": "object", "required": [ "enabled", "currentOperatingModeId", "exceptionType" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Operating modes are enabled or disabled." }, "currentOperatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "The ID of the current operating mode." }, "exceptionType": { "type": "string", "enum": [ "MANUAL_SWITCH_BACK", "AUTOMATIC_SWITCH_BACK_EARLY_START", "AUTOMATIC_SWITCH_BACK_EXTENSION", "AUTOMATIC_SWITCH_BACK_STANDARD" ], "description": "The exception type.\n * `MANUAL_SWITCH_BACK` - The mode was switched to or extended by the user for manual switch back and runs as an exception until the user manual switches the feature back to normal operation or a different mode.\n * `AUTOMATIC_SWITCH_BACK_EARLY_START` - The mode was switched to by the user before its start time and runs as an exception until its end time is reached at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_EXTENSION` - The current mode was extended by the user before its end time and runs as an exception until the extension end time (mode's end time + extension of up to 12 hours) is reached at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_STANDARD` - The mode will remain the current operating mode for the feature until its normal end time is reached.\n" }, "modes": { "type": "array", "items": { "$ref": "#/components/schemas/ModesGet" }, "description": "Operating modes." } }, "description": "Settings related to operating modes." } }, "description": "Settings related to `Always`, `Busy`, and `No Answer` call forwarding." } } }, "CallForwardingNumbers": { "type": "object", "required": [ "type" ], "properties": { "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Only return call queues with matching primary phone number or extension." }, "extension": { "type": "string", "example": "7781", "description": "Primary phone extension of the call queue." }, "type": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE" ], "description": "Type of\n * `PRIMARY` - Indicates that the given `phoneNumber` or `extension` associated with this rule's containing object is a primary number or extension.\n * `ALTERNATE` - Indicates that the given `phoneNumber` or `extension` associated with this rule's containing object is an alternate number or extension.\n" } } }, "CallQueueAudioFilesObject": { "type": "object", "required": [ "fileName", "mediaFileType" ], "properties": { "fileName": { "type": "string", "example": "AudioFile1.wav", "description": "Name of the file." }, "mediaFileType": { "type": "string", "enum": [ "WMA", "WAV", "3GP" ], "description": "Media Type of the audio file.\n * `WMA` - WMA File Extension.\n * `WAV` - WAV File Extension.\n * `3GP` - 3GP File Extension.\n" } } }, "CallQueueHolidaySchedulesObject": { "type": "object", "required": [ "scheduleName", "scheduleLevel" ], "properties": { "scheduleName": { "type": "string", "example": "2022 All Holidays", "description": "Name of the schedule configured for a holiday service." }, "scheduleLevel": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "Indicates whether the schedule in scheduleName is specific to the organization or location.\n * `LOCATION` - Schedule is configured across a location.\n * `ORGANIZATION` - Schedule is configured across an organization.\n" } } }, "CallQueueNightSchedulesObject": { "type": "object", "required": [ "scheduleName", "scheduleLevel" ], "properties": { "scheduleName": { "type": "string", "example": "Working Hours", "description": "Name of the schedule configured for a night service." }, "scheduleLevel": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "Indicates whether the schedule in scheduleName is specific to the organization or location.\n * `LOCATION` - Schedule is configured across a location.\n * `ORGANIZATION` - Schedule is configured across an organization.\n" } } }, "CallQueueQueueSettingsGetObject": { "type": "object", "required": [ "queueSize", "overflow" ], "properties": { "queueSize": { "type": "number", "example": 50, "description": "The maximum number of calls for this call queue. Once this number is reached, the `overflow` settings are triggered." }, "callOfferToneEnabled": { "type": "boolean", "example": true, "description": "Play ringing tone to callers when their call is set to an available agent." }, "resetCallStatisticsEnabled": { "type": "boolean", "description": "Reset caller statistics upon queue entry." }, "overflow": { "type": "object", "required": [ "action", "greeting" ], "properties": { "action": { "type": "string", "enum": [ "PERFORM_BUSY_TREATMENT", "PLAY_RINGING_UNTIL_CALLER_HANGS_UP", "TRANSFER_TO_PHONE_NUMBER" ], "description": "Indicates how to handle new calls when the queue is full.\n * `PERFORM_BUSY_TREATMENT` - The caller hears a fast-busy tone.\n * `PLAY_RINGING_UNTIL_CALLER_HANGS_UP` - The caller hears ringing until they disconnect.\n * `TRANSFER_TO_PHONE_NUMBER` - Number where you want to transfer overflow calls.\n" }, "sendToVoicemail": { "type": "boolean", "description": "When `true`, forwards all calls to a voicemail service of an internal number. This option is ignored when an external `transferNumber` is entered." }, "transferNumber": { "type": "string", "example": "+15555551212", "description": "Destination number for overflow calls when `action` is set to `TRANSFER_TO_PHONE_NUMBER`." }, "overflowAfterWaitEnabled": { "type": "boolean", "example": true, "description": "After calls wait for the configured number of seconds and no agent is available, the overflow treatment is triggered." }, "overflowAfterWaitTime": { "type": "number", "example": 20, "description": "Number of seconds to wait before the overflow treatment is triggered when no agent is available. The minimum value 0, The maximum value is 7200 seconds." }, "playOverflowGreetingEnabled": { "type": "boolean", "example": true, "description": "Indicate overflow audio to be played, otherwise, callers will hear the hold music until the call is answered by a user." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `overflow` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Settings for incoming calls exceed queueSize." }, "welcomeMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play entrance message. The default value is `true`." }, "alwaysEnabled": { "type": "boolean", "description": "Mandatory entrance message. The default value is `false`." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `welcomeMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message when callers first reach the queue. For example, “Thank you for calling. An agent will be with you shortly.” It can be set as mandatory. If the mandatory option is not selected and a caller reaches the call queue while there is an available agent, the caller will not hear this announcement and is transferred to an agent. The welcome message feature is enabled by default." }, "waitMessage": { "type": "object", "required": [ "waitMode" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play Wait Message." }, "waitMode": { "type": "string", "enum": [ "TIME", "POSITION" ], "description": "Estimated wait message operating mode. Supported values `TIME` and `POSITION`.\n * `TIME` - Announce the waiting time.\n * `POSITION` - Announce queue position.\n" }, "handlingTime": { "type": "number", "example": 100, "description": "The number of minutes for which the estimated wait is played. The minimum time is 10 minutes. The maximum time is 100 minutes." }, "defaultHandlingTime": { "type": "number", "example": 100, "description": "The default number of call handling minutes. The minimum time is 1 minutes, The maximum time is 100 minutes." }, "queuePosition": { "type": "number", "example": 100, "description": "The number of the position for which the estimated wait is played. The minimum positions are 10, The maximum positions are 100." }, "highVolumeMessageEnabled": { "type": "boolean", "description": "Play time / Play position High Volume." }, "estimatedWaitingTime": { "type": "number", "example": 600, "description": "The number of estimated waiting times in seconds. The minimum time is 10 seconds. The maximum time is 600 seconds." }, "callbackOptionEnabled": { "type": "boolean", "description": "Callback options enabled/disabled. Default value is false." }, "minimumEstimatedCallbackTime": { "type": "number", "example": 10, "description": "The minimum estimated callback times in minutes. The default value is 30." }, "internationalCallbackEnabled": { "type": "boolean", "description": "The international numbers for callback is enabled/disabled. The default value is `false`." }, "playUpdatedEstimatedWaitMessage": { "type": "boolean", "example": true, "description": "Play updated estimated wait message." } }, "description": "Notify the caller with either their estimated wait time or position in the queue. If this option is enabled, it plays after the welcome message and before the comfort message. By default, it is not enabled." }, "comfortMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play periodic comfort message." }, "timeBetweenMessages": { "type": "number", "example": 10, "description": "The interval in seconds between each repetition of the comfort message played to queued users. The minimum time is 10 seconds.The maximum time is 600 seconds." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `comfortMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message after the welcome message and before hold music. This is typically a `CUSTOM` announcement that plays information, such as current promotions or information about products and services." }, "comfortMessageBypass": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play comfort bypass message." }, "callWaitingAgeThreshold": { "type": "number", "example": 10, "description": "The interval in seconds between each repetition of the comfort bypass message played to queued users. The minimum time is 1 seconds. The maximum time is 120 seconds." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `comfortMessageBypass` greetings. These files are from the list of announcements files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a shorter comfort message instead of the usual Comfort or Music On Hold announcement to all the calls that should be answered quickly. This feature prevents a caller from hearing a short portion of the standard comfort message that abruptly ends when they are connected to an agent." }, "mohMessage": { "type": "object", "required": [ "normalSource", "alternateSource" ], "properties": { "normalSource": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable media on hold for queued calls." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `mohMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." }, "audioPlaylistId": { "type": "string", "description": "Identifier of the playlist used for this MOH source." } } }, "alternateSource": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable media on hold for queued calls." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `mohMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." }, "audioPlaylistId": { "type": "string", "description": "Identifier of the playlist used for this MOH source." } } } }, "description": "Play music after the comforting message in a repetitive loop." }, "whisperMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play the Whisper Message." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFileGet" }, "description": "Array of announcement files to be played as `whisperMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message to the agent immediately before the incoming call is connected. The message typically announces the identity of the call queue from which the call is coming." } } }, "CallQueueQueueSettingsObject": { "type": "object", "required": [ "queueSize", "overflow" ], "properties": { "queueSize": { "type": "number", "example": 50, "description": "The maximum number of calls for this call queue. Once this number is reached, the `overflow` settings are triggered." }, "callOfferToneEnabled": { "type": "boolean", "example": true, "description": "Play ringing tone to callers when their call is set to an available agent." }, "resetCallStatisticsEnabled": { "type": "boolean", "description": "Reset caller statistics upon queue entry." }, "overflow": { "type": "object", "required": [ "action", "greeting" ], "properties": { "action": { "type": "string", "enum": [ "PERFORM_BUSY_TREATMENT", "PLAY_RINGING_UNTIL_CALLER_HANGS_UP", "TRANSFER_TO_PHONE_NUMBER" ], "description": "Indicates how to handle new calls when the queue is full.\n * `PERFORM_BUSY_TREATMENT` - The caller hears a fast-busy tone.\n * `PLAY_RINGING_UNTIL_CALLER_HANGS_UP` - The caller hears ringing until they disconnect.\n * `TRANSFER_TO_PHONE_NUMBER` - Number where you want to transfer overflow calls.\n" }, "sendToVoicemail": { "type": "boolean", "description": "When `true`, forwards all calls to a voicemail service of an internal number. This option is ignored when an external `transferNumber` is entered." }, "transferNumber": { "type": "string", "example": "+15555551212", "description": "Destination number for overflow calls when `action` is set to `TRANSFER_TO_PHONE_NUMBER`." }, "overflowAfterWaitEnabled": { "type": "boolean", "example": true, "description": "After calls wait for the configured number of seconds and no agent is available, the overflow treatment is triggered." }, "overflowAfterWaitTime": { "type": "number", "example": 20, "description": "Number of seconds to wait before the overflow treatment is triggered when no agent is available. The minimum value 0, The maximum value is 7200 seconds." }, "playOverflowGreetingEnabled": { "type": "boolean", "example": true, "description": "Indicate overflow audio to be played, otherwise, callers will hear the hold music until the call is answered by a user." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `overflow` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Settings for incoming calls exceed queueSize." }, "welcomeMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play entrance message. The default value is `true`." }, "alwaysEnabled": { "type": "boolean", "description": "Mandatory entrance message. The default value is `false`." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `welcomeMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message when callers first reach the queue. For example, “Thank you for calling. An agent will be with you shortly.” It can be set as mandatory. If the mandatory option is not selected and a caller reaches the call queue while there is an available agent, the caller will not hear this announcement and is transferred to an agent. The welcome message feature is enabled by default." }, "waitMessage": { "type": "object", "required": [ "waitMode" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play Wait Message." }, "waitMode": { "type": "string", "enum": [ "TIME", "POSITION" ], "description": "Estimated wait message operating mode. Supported values `TIME` and `POSITION`.\n * `TIME` - Announce the waiting time.\n * `POSITION` - Announce queue position.\n" }, "handlingTime": { "type": "number", "example": 100, "description": "The number of minutes for which the estimated wait is played. The minimum time is 10 minutes. The maximum time is 100 minutes." }, "defaultHandlingTime": { "type": "number", "example": 100, "description": "The default number of call handling minutes. The minimum time is 1 minutes, The maximum time is 100 minutes." }, "queuePosition": { "type": "number", "example": 100, "description": "The number of the position for which the estimated wait is played. The minimum positions are 10, The maximum positions are 100." }, "highVolumeMessageEnabled": { "type": "boolean", "description": "Play time / Play position High Volume." }, "estimatedWaitingTime": { "type": "number", "example": 600, "description": "The number of estimated waiting times in seconds. The minimum time is 10 seconds. The maximum time is 600 seconds." }, "callbackOptionEnabled": { "type": "boolean", "description": "Callback options enabled/disabled. Default value is false." }, "minimumEstimatedCallbackTime": { "type": "number", "example": 10, "description": "The minimum estimated callback times in minutes. The default value is 30." }, "internationalCallbackEnabled": { "type": "boolean", "description": "The international numbers for callback is enabled/disabled. The default value is `false`." }, "playUpdatedEstimatedWaitMessage": { "type": "boolean", "example": true, "description": "Play updated estimated wait message." } }, "description": "Notify the caller with either their estimated wait time or position in the queue. If this option is enabled, it plays after the welcome message and before the comfort message. By default, it is not enabled." }, "comfortMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play periodic comfort message." }, "timeBetweenMessages": { "type": "number", "example": 10, "description": "The interval in seconds between each repetition of the comfort message played to queued users. The minimum time is 10 seconds.The maximum time is 600 seconds." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `comfortMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message after the welcome message and before hold music. This is typically a `CUSTOM` announcement that plays information, such as current promotions or information about products and services." }, "comfortMessageBypass": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play comfort bypass message." }, "callWaitingAgeThreshold": { "type": "number", "example": 10, "description": "The interval in seconds between each repetition of the comfort bypass message played to queued users. The minimum time is 1 seconds. The maximum time is 120 seconds." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `comfortMessageBypass` greetings. These files are from the list of announcements files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a shorter comfort message instead of the usual Comfort or Music On Hold announcement to all the calls that should be answered quickly. This feature prevents a caller from hearing a short portion of the standard comfort message that abruptly ends when they are connected to an agent." }, "mohMessage": { "type": "object", "required": [ "normalSource", "alternateSource" ], "properties": { "normalSource": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable media on hold for queued calls." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `mohMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." }, "audioPlaylistId": { "type": "string", "description": "Identifier of the playlist used for this MOH source." } } }, "alternateSource": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable media on hold for queued calls." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `mohMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." }, "audioPlaylistId": { "type": "string", "description": "Identifier of the playlist used for this MOH source." } } } }, "description": "Play music after the comforting message in a repetitive loop." }, "whisperMessage": { "type": "object", "required": [ "greeting" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled play the Whisper Message." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioAnnouncementFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementAudioFile" }, "description": "Array of announcement files to be played as `whisperMessage` greetings. These files are from the list of announcement files associated with this call queue. For `CUSTOM` announcement, a minimum of 1 file is mandatory, and the maximum is 4." } }, "description": "Play a message to the agent immediately before the incoming call is connected. The message typically announces the identity of the call queue from which the call is coming." } } }, "CreateCallQueueObject": { "type": "object", "required": [ "name", "callPolicies", "queueSettings", "agents" ], "properties": { "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the call queue." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Primary phone number of the call queue. Either a `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "5309", "description": "Primary phone extension of the call queue. Either a `phoneNumber` or extension is mandatory." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this call queue. Defaults to \".\"." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this call queue. Defaults to `phoneNumber` if set, otherwise defaults to call group name." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the call queue." }, "callPolicies": { "$ref": "#/components/schemas/PostCallQueueCallPolicyObject", "description": "Policy controlling how calls are routed to `agents`." }, "queueSettings": { "$ref": "#/components/schemas/CallQueueQueueSettingsObject", "description": "Overall call queue settings." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PostPersonPlaceVirtualLineCallQueueObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "callingLineIdPolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of Calling Line ID Policy Selected for Call Queue.\n * `DIRECT_LINE` - Calling Line ID Policy will show the caller's direct line number.\n * `LOCATION_NUMBER` - Calling Line ID Policy will show the main number for the location.\n * `CUSTOM` - Calling Line ID Policy will show the value from the `callingLineIdPhoneNumber` field.\n" }, "callingLineIdPhoneNumber": { "type": "string", "example": "+12072342368", "description": "Calling line ID Phone number which will be shown if CUSTOM is selected." }, "allowCallWaitingForAgentsEnabled": { "type": "boolean", "description": "If `true`, call waiting is enabled for the agents." }, "allowAgentJoinEnabled": { "type": "boolean", "description": "Whether or not to allow agents to join or unjoin a queue." }, "phoneNumberForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "When true, indicates that the agent's configuration allows them to use the queue's Caller ID for outgoing calls." } } }, "CreateForwardingRuleObject": { "type": "object", "required": [ "name", "callsFrom", "callsTo" ], "properties": { "name": { "type": "string", "example": "New Selective Rule", "description": "Unique name for the selective rule in the hunt group." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "holidaySchedule": { "type": "string", "example": "HolidayScheduleOne", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "businessSchedule": { "type": "string", "example": "BusinessScheduleTwo", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "type": "object", "required": [ "selection" ], "properties": { "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "Controls what happens when the rule matches.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, forward to the destination for the hunt group.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination for this rule.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Phone number to forward calls to. Required when selection is `FORWARD_TO_SPECIFIED_NUMBER`." } }, "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "type": "object", "required": [ "selection", "customNumbers" ], "properties": { "selection": { "type": "string", "enum": [ "ANY", "CUSTOM" ], "description": "If `CUSTOM`, use `customNumbers` to specify which incoming caller ID values cause this rule to match. `ANY` means any incoming call matches assuming the rule is in effect based on the associated schedules.\n * `ANY` - Rule matches for calls from any number.\n * `CUSTOM` - Rule matches based on the numbers and options in `customNumbers`.\n" }, "customNumbers": { "type": "object", "required": [ "privateNumberEnabled", "unavailableNumberEnabled" ], "properties": { "privateNumberEnabled": { "type": "boolean", "description": "Match if caller ID indicates the call is from a private number." }, "unavailableNumberEnabled": { "type": "boolean", "description": "Match if caller ID is unavailable." }, "numbers": { "type": "array", "items": { "type": "string" }, "description": "Array of number strings to be matched against incoming caller ID." } }, "description": "Custom rules for matching incoming caller ID information." } }, "description": "Settings related to the rule matching based on incoming caller ID." }, "callsTo": { "type": "object", "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardingNumbers" }, "description": "Array of numbers to be matched against the calling destination number." } }, "description": "Settings related to the rule matching based on the destination number." } } }, "GetCallQueueCallPolicyObject": { "type": "object", "required": [ "routingType", "policy", "callBounce", "distinctiveRing" ], "properties": { "routingType": { "$ref": "#/components/schemas/HuntRoutingTypeSelection", "description": "Call routing type to use to dispatch calls to agents." }, "policy": { "$ref": "#/components/schemas/HuntPolicySelection", "description": "Call routing policy to use to dispatch calls to agents." }, "callBounce": { "type": "object", "required": [ "callBounceEnabled", "callBounceMaxRings", "agentUnavailableEnabled", "alertAgentEnabled", "alertAgentMaxSeconds", "callBounceOnHoldEnabled", "callBounceOnHoldMaxSeconds" ], "properties": { "callBounceEnabled": { "type": "boolean", "example": true, "description": "If enabled, bounce calls after the set number of rings." }, "callBounceMaxRings": { "type": "number", "example": 5, "description": "Number of rings after which to bounce call, if call bounce is enabled." }, "agentUnavailableEnabled": { "type": "boolean", "example": true, "description": "Bounce if agent becomes unavailable." }, "alertAgentEnabled": { "type": "boolean", "example": true, "description": "Alert agent if call on hold more than `alertAgentMaxSeconds`." }, "alertAgentMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to alert agent if `alertAgentEnabled`." }, "callBounceOnHoldEnabled": { "type": "boolean", "example": true, "description": "Bounce if call on hold more than `callBounceMaxSeconds`." }, "callBounceOnHoldMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to bounce if `callBounceEnabled`." } }, "description": "Settings for when the call into the call queue is not answered." }, "distinctiveRing": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the distinctive ring is enabled." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this call queue is called. Only available when `distinctiveRing` is enabled for the call queue." } }, "description": "Whether or not the call queue has the distinctive ring option enabled." } } }, "GetCallQueueForcedForwardObject": { "type": "object", "required": [ "forcedForwardEnabled", "playAnnouncementBeforeEnabled", "audioMessageSelection" ], "properties": { "forcedForwardEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue forced forward routing policy setting is enabled." }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureGetObject" }, "description": "List of Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." } } }, "GetCallQueueHolidayObject": { "type": "object", "required": [ "holidayServiceEnabled", "action", "holidayScheduleLevel", "playAnnouncementBeforeEnabled", "audioMessageSelection" ], "properties": { "holidayServiceEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue holiday service routing policy is enabled." }, "action": { "type": "string", "enum": [ "BUSY", "TRANSFER" ], "description": "The call processing action type.\n * `BUSY` - The caller hears a fast-busy tone.\n * `TRANSFER` - Transfers the call to number specified in `transferPhoneNumber`.\n" }, "holidayScheduleLevel": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "The schedule mentioned in `holidayScheduleName` is org or location specific. (Must be from `holidaySchedules` list)\n * `LOCATION` - Schedule is configured across a location.\n * `ORGANIZATION` - Schedule is configured across an organization.\n" }, "holidayScheduleName": { "type": "string", "example": "2022 Holidays Period", "description": "Name of the schedule configured for a holiday service as one of from `holidaySchedules` list." }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureGetObject" }, "description": "List of Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." }, "holidaySchedules": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueueHolidaySchedulesObject" }, "description": "Lists the pre-configured holiday schedules." } } }, "GetCallQueueNightServiceObject": { "type": "object", "required": [ "nightServiceEnabled", "playAnnouncementBeforeEnabled", "announcementMode", "audioMessageSelection", "forceNightServiceEnabled", "manualAudioMessageSelection" ], "properties": { "nightServiceEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue night service routing policy is enabled." }, "action": { "type": "string", "enum": [ "BUSY", "TRANSFER" ], "description": "The call processing action type.\n * `BUSY` - The caller hears a fast busy tone.\n * `TRANSFER` - Transfers the call to number specified in `transferPhoneNumber`.\n" }, "transferPhoneNumber": { "type": "string", "example": "1234", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "announcementMode": { "type": "string", "enum": [ "NORMAL", "MANUAL" ], "description": "The type of announcements to played.\n * `NORMAL` - Plays announcement as per `audioMessageSelection`.\n * `MANUAL` - Plays announcement as per `manualAudioMessageSelection`.\n" }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcements to be played when announcementMode is set to `NORMAL`.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureGetObject" }, "description": "List of Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." }, "businessHoursName": { "type": "string", "example": "Working Hour", "description": "Name of the schedule configured for a night service as one of from `businessHourSchedules` list." }, "businessHoursLevel": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "The above mentioned schedule is org or location specific. (Must be from `businessHourSchedules` list).\n * `ORGANIZATION` - Schedule is configured across an organization.\n * `LOCATION` - Schedule is configured across a location.\n" }, "businessHourSchedules": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueueNightSchedulesObject" }, "description": "Lists the pre-configured business hour schedules." }, "forceNightServiceEnabled": { "type": "boolean", "example": true, "description": "Force night service regardless of business hour schedule." }, "manualAudioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcements to be played when announcementMode is set to NORMAL.`MANUAL`.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "manualAudioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureGetObject" }, "description": "List Of Audio Files." } } }, "GetCallQueueObject": { "type": "object", "required": [ "id", "name", "enabled", "alternateNumberSettings", "callPolicies", "queueSettings", "agents" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "description": "A unique identifier for the call queue." }, "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the call queue." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." }, "language": { "type": "string", "example": "English", "description": "Language for the call queue." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this call queue. Defaults to `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this call queue. Defaults to the `phoneNumber` if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the call queue." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Primary phone number of the call queue." }, "extension": { "type": "string", "example": "5309", "description": "Extension of the call queue." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12345309", "description": "Routing prefix + extension of a person or workspace." }, "tollFreeNumber": { "type": "boolean", "description": "Indicate if the number is toll free." }, "phoneNumberForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "When true, indicates that the agent's configuration allows them to use the queue's Caller ID for outgoing calls." }, "callingLineIdPolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of Calling Line ID Policy Selected for Call Queue.\n * `DIRECT_LINE` - Calling Line ID Policy will show the caller's direct line number.\n * `LOCATION_NUMBER` - Calling Line ID Policy will show the main number for the location.\n * `CUSTOM` - Calling Line ID Policy will show the value from the `callingLineIdPhoneNumber` field.\n" }, "callingLineIdPhoneNumber": { "type": "string", "example": "+12072342368", "description": "Calling line ID Phone number which will be shown if CUSTOM is selected." }, "alternateNumberSettings": { "type": "object", "required": [ "distinctiveRingEnabled", "alternateNumbers" ], "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Distinctive Ringing selected for the alternate numbers in the call queue overrides the normal ringing patterns set for the Alternate Numbers." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersWithPattern" }, "description": "Allows up to 10 numbers, each with an optional distinctive ring setting override." } }, "description": "The alternate numbers feature allows you to assign multiple phone numbers or extensions to a call queue. Each number will reach the same greeting and each menu will function identically to the main number. The alternate numbers option enables you to have up to ten (10) phone numbers ring into the call queue." }, "callPolicies": { "$ref": "#/components/schemas/GetCallQueueCallPolicyObject", "description": "Policy controlling how calls are routed to `agents`." }, "queueSettings": { "$ref": "#/components/schemas/CallQueueQueueSettingsGetObject", "description": "Overall call queue settings." }, "allowCallWaitingForAgentsEnabled": { "type": "boolean", "description": "Flag to indicate whether call waiting is enabled for `agents`." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineCallQueueObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "allowAgentJoinEnabled": { "type": "boolean", "description": "Whether or not to allow agents to join or unjoin a queue." } } }, "GetCallQueueStrandedCallsObject": { "type": "object", "required": [ "action", "audioMessageSelection" ], "properties": { "action": { "type": "string", "enum": [ "NONE", "BUSY", "TRANSFER", "NIGHT_SERVICE", "RINGING", "ANNOUNCEMENT" ], "description": "The call processing action type.\n * `NONE` - Call remains in the queue.\n * `BUSY` - Calls are removed from the queue and are provided with the Busy treatment. If the queue is configured with the Call Forwarding Busy or the Voice Messaging service, then the call is handled accordingly.\n * `TRANSFER` - Calls are removed from the queue and are transferred to the configured `transferPhoneNumber`.\n * `NIGHT_SERVICE` - Calls are handled according to the Night Service configuration. If the Night Service action is set to `none`, then this is equivalent to this policy being set to `none` (that is, calls remain in the queue).\n * `RINGING` - Calls are removed from the queue and are provided with ringing until the caller releases the call. The ringback tone played to the caller is localized according to the country code of the caller.\n * `ANNOUNCEMENT` - Calls are removed from the queue and are provided with an announcement that is played in a loop until the caller releases the call.\n" }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureGetObject" }, "description": "List of Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." } } }, "GetForwardingRuleObject": { "type": "object", "required": [ "name", "id", "callsFrom", "callsTo" ], "properties": { "name": { "type": "string", "example": "New Selective Rule", "description": "Unique name for the selective rule in the hunt group." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9kR1Z6ZEZKMWJHVTA", "description": "Unique ID for the rule." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "holidaySchedule": { "type": "string", "example": "HolidayScheduleOne", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "businessSchedule": { "type": "string", "example": "BusinessScheduleTwo", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "type": "object", "required": [ "selection" ], "properties": { "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "Controls what happens when the rule matches.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, forward to the destination for the hunt group.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination for this rule.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Phone number used if selection is `FORWARD_TO_SPECIFIED_NUMBER`." } }, "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "type": "object", "required": [ "selection", "customNumbers" ], "properties": { "selection": { "type": "string", "enum": [ "ANY", "CUSTOM" ], "description": "If `CUSTOM`, use `customNumbers` to specify which incoming caller ID values cause this rule to match. `ANY` means any incoming call matches assuming the rule is in effect based on the associated schedules.\n * `ANY` - Rule matches for calls from any number.\n * `CUSTOM` - Rule matches based on the numbers and options in `customNumbers`.\n" }, "customNumbers": { "type": "object", "required": [ "privateNumberEnabled", "unavailableNumberEnabled" ], "properties": { "privateNumberEnabled": { "type": "boolean", "description": "Match if caller ID indicates the call is from a private number." }, "unavailableNumberEnabled": { "type": "boolean", "description": "Match if caller ID is unavailable." }, "numbers": { "type": "array", "items": { "type": "string" }, "description": "Array of number strings to be matched against incoming caller ID." } }, "description": "Custom rules for matching incoming caller ID information." } }, "description": "Settings related to the rule matching based on incoming caller ID." }, "callsTo": { "type": "object", "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardingNumbers" }, "description": "Array of numbers to be matched against the calling destination number." } }, "description": "Settings related to the rule matching based on the destination number." } } }, "GetPersonPlaceVirtualLineCallQueueObject": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of person, workspace or virtual line." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": "Type of the person, workspace or virtual line.\n * `PEOPLE` - Indicates that this object is a user.\n * `PLACE` - Indicates that this object is a place.\n * `VIRTUAL_LINE` - Indicates that this object is a virtual line.\n" }, "firstName": { "type": "string", "example": "Hakim", "description": "First name of person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Smith", "description": "First name of person, workspace or virtual line." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Phone number of person, workspace or virtual line." }, "extension": { "type": "string", "example": "5309", "description": "Extension of person, workspace or virtual line." }, "weight": { "type": "string", "example": "50", "description": "Weight of person, workspace or virtual line. Only applied when call policy is `WEIGHTED`." }, "skillLevel": { "type": "number", "example": 1, "description": "Skill level of person, workspace or virtual line. Only applied when the call `routingType` is `SKILL_BASED`." }, "joinEnabled": { "type": "boolean", "example": true, "description": "Indicates the join status of the agent for this queue. The default value while creating call queue is `true`." }, "location": { "$ref": "#/components/schemas/LocationObject", "description": "Location of the call queue." } } }, "HuntPolicySelection": { "type": "string", "enum": [ "CIRCULAR", "REGULAR", "SIMULTANEOUS", "UNIFORM", "WEIGHTED" ], "description": " * `CIRCULAR` - This option cycles through all agents after the last agent that took a call. It sends calls to the next available agent. This is supported for `SKILL_BASED`.\n * `REGULAR` - Send the call through the queue of agents in order, starting from the top each time. This is supported for `SKILL_BASED`.\n * `SIMULTANEOUS` - Sends calls to all agents at once\n * `UNIFORM` - Sends calls to the agent that has been idle the longest. If they don't answer, proceed to the next agent who has been idle the second longest, and so on until the call is answered. This is supported for `SKILL_BASED`.\n * `WEIGHTED` - Sends calls to idle agents based on percentages you assign to each agent (up to 100%).\n" }, "HuntRoutingTypeSelection": { "type": "string", "enum": [ "PRIORITY_BASED", "SKILL_BASED" ], "description": " * `PRIORITY_BASED` - Default routing type which directly uses the routing policy to dispatch calls to the agents.\n * `SKILL_BASED` - This option uses skill level as the criteria to route calls to agents. When there is more than one agent with the same skill level, the selected `policy` helps dispatch the calls to the agents.\n" }, "ListCallQueueObject": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "enabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "description": "A unique identifier for the call queue." }, "name": { "type": "string", "example": "5714328359", "description": "Unique name for the call queue." }, "locationName": { "type": "string", "example": "WXCSIVDKCPAPIC4S1", "description": "Name of location for call queue." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location for call queue." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Primary phone number of the call queue." }, "extension": { "type": "string", "example": "5309", "description": "Primary phone extension of the call queue." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12345309", "description": "Routing prefix + extension of a person or workspace." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." } } }, "ModifyCallForwardingObject": { "type": "object", "properties": { "callForwarding": { "type": "object", "properties": { "always": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Always` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for `Always` call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Sending incoming calls to voicemail is enabled/disabled when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for forwarding all incoming calls to the destination you choose." }, "selective": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`Busy` call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for `Busy` call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Sending incoming calls to voicemail is enabled/disabled when the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Selectively forward calls to a designated number, depending on criteria rules. You'll need to have at least one rule for forwarding applied for call forwarding to be active." }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardRulesSet" }, "description": "Rules for selectively forwarding calls." }, "operatingModes": { "type": "object", "description": "Configuration for forwarding via Operating modes (Schedule Based Routing).", "required": [ "enabled", "modes" ], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether operating modes forwarding is enabled." }, "modes": { "type": "array", "items": { "$ref": "#/components/schemas/ModesPatch" }, "description": "List of operating mode configurations." } } } }, "description": "Settings related to `Always`, `Busy`, and `No Answer` call forwarding." } } }, "ModifyCallQueueCallPolicyObject": { "type": "object", "required": [ "routingType" ], "properties": { "routingType": { "$ref": "#/components/schemas/HuntRoutingTypeSelection", "description": "Call routing type to use to dispatch calls to agents." }, "policy": { "$ref": "#/components/schemas/HuntPolicySelection", "description": "Call routing policy to use to dispatch calls to agents." }, "callBounce": { "type": "object", "properties": { "callBounceEnabled": { "type": "boolean", "example": true, "description": "If enabled, bounce calls after the set number of rings." }, "callBounceMaxRings": { "type": "number", "example": 5, "description": "Number of rings after which to bounce call, if call bounce is enabled." }, "agentUnavailableEnabled": { "type": "boolean", "example": true, "description": "Bounce if agent becomes unavailable." }, "alertAgentEnabled": { "type": "boolean", "example": true, "description": "Alert agent if call on hold more than `alertAgentMaxSeconds`." }, "alertAgentMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to alert agent if `alertAgentEnabled.`" }, "callBounceOnHoldEnabled": { "type": "boolean", "example": true, "description": "Bounce if call on hold more than `callBounceMaxSeconds`." }, "callBounceOnHoldMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to bounce if `callBounceEnabled`." } }, "description": "Settings for when the call is not answered." }, "distinctiveRing": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the `distinctiveRing` is enabled." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this call queue is called. Only available when `distinctiveRing` is enabled for the call queue." } }, "description": "Whether or not the call queue has the `distinctiveRing` option enabled." } } }, "ModifyCallQueueForcedForwardObject": { "type": "object", "required": [ "forcedForwardEnabled", "playAnnouncementBeforeEnabled", "audioMessageSelection" ], "properties": { "forcedForwardEnabled": { "type": "boolean", "example": true, "description": "Enable or disable call forced forward service routing policy." }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureObject" }, "description": "List of pre-configured Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." } } }, "ModifyCallQueueHolidayObject": { "type": "object", "required": [ "holidayServiceEnabled", "action", "holidayScheduleLevel", "playAnnouncementBeforeEnabled", "audioMessageSelection" ], "properties": { "holidayServiceEnabled": { "type": "boolean", "example": true, "description": "Enable or Disable the call queue holiday service routing policy." }, "action": { "type": "string", "enum": [ "BUSY", "TRANSFER" ], "description": "The call processing action type.\n * `BUSY` - The caller hears a fast-busy tone.\n * `TRANSFER` - Transfers the call to number specified in `transferPhoneNumber`.\n" }, "holidayScheduleLevel": { "type": "string", "enum": [ "LOCATION", "ORGANIZATION" ], "description": "The schedule mentioned in `holidayScheduleName` is org or location specific. (Must be from `holidaySchedules` list)\n * `LOCATION` - Schedule is configured across a location.\n * `ORGANIZATION` - Schedule is configured across an organization.\n" }, "holidayScheduleName": { "type": "string", "example": "2022 Holidays Period", "description": "Name of the schedule configured for a holiday service as one of from `holidaySchedules` list." }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureObject" }, "description": "List of pre-configured Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." } } }, "ModifyCallQueueObject": { "type": "object", "required": [ "queueSettings" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." }, "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the call queue." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this call queue. Defaults to `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this call queue. Defaults to the `phoneNumber` if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the hunt group." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Primary phone number of the call queue." }, "extension": { "type": "string", "example": "5309", "description": "Extension of the call queue." }, "alternateNumberSettings": { "type": "object", "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Distinctive Ringing selected for the alternate numbers in the call queue overrides the normal ringing patterns set for Alternate Numbers." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersWithPattern" }, "description": "Allows up to 10 numbers, each with an optional distinctive ring setting override." } }, "description": "The alternate numbers feature allows you to assign multiple phone numbers or extensions to a call queue. Each number will reach the same greeting and each menu will function identically to the main number. The alternate numbers option enables you to have up to ten (10) phone numbers ring into the call queue." }, "callPolicies": { "$ref": "#/components/schemas/ModifyCallQueueCallPolicyObject", "description": "Policy controlling how calls are routed to agents." }, "callingLineIdPolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of Calling Line ID Policy Selected for Call Queue.\n * `DIRECT_LINE` - Calling Line ID Policy will show the caller's direct line number.\n * `LOCATION_NUMBER` - Calling Line ID Policy will show the main number for the location.\n * `CUSTOM` - Calling Line ID Policy will show the value from the `callingLineIdPhoneNumber` field.\n" }, "callingLineIdPhoneNumber": { "type": "string", "example": "+12072342368", "description": "Calling line ID Phone number which will be shown if CUSTOM is selected." }, "queueSettings": { "$ref": "#/components/schemas/CallQueueQueueSettingsObject", "description": "Overall call queue settings." }, "allowCallWaitingForAgentsEnabled": { "type": "boolean", "description": "Flag to indicate whether call waiting is enabled for agents." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/ModifyPersonPlaceVirtualLineCallQueueObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "allowAgentJoinEnabled": { "type": "boolean", "description": "Whether or not to allow agents to join or unjoin a queue." }, "phoneNumberForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates that the agent's configuration allows them to use the queue's Caller ID for outgoing calls." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this call queue." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "ModifyCallQueueStrandedCallsObject": { "type": "object", "required": [ "action", "audioMessageSelection" ], "properties": { "action": { "type": "string", "enum": [ "NONE", "BUSY", "TRANSFER", "NIGHT_SERVICE", "RINGING", "ANNOUNCEMENT" ], "description": "The call processing action type.\n * `NONE` - Call remains in the queue.\n * `BUSY` - Calls are removed from the queue and are provided with the Busy treatment. If the queue is configured with the Call Forwarding Busy or the Voice Messaging service, then the call is handled accordingly.\n * `TRANSFER` - Calls are removed from the queue and are transferred to the configured `transferPhoneNumber`.\n * `NIGHT_SERVICE` - Calls are handled according to the Night Service configuration. If the Night Service action is set to `none`, then this is equivalent to this policy being set to `none` (that is, calls remain in the queue).\n * `RINGING` - Calls are removed from the queue and are provided with ringing until the caller releases the call. The ringback tone played to the caller is localized according to the country code of the caller.\n * `ANNOUNCEMENT` - Calls are removed from the queue and are provided with an announcement that is played in a loop until the caller releases the call.\n" }, "transferPhoneNumber": { "type": "string", "example": "1235557890", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcement to be played.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureObject" }, "description": "List of pre-configured Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." } } }, "ModifyForwardingRuleObject": { "type": "object", "properties": { "name": { "type": "string", "example": "New Selective Rule", "description": "Unique name for the selective rule in the hunt group." }, "enabled": { "type": "boolean", "example": true, "description": "Reflects if rule is enabled." }, "holidaySchedule": { "type": "string", "example": "HolidayScheduleOne", "description": "Name of the location's holiday schedule which determines when this selective call forwarding rule is in effect." }, "businessSchedule": { "type": "string", "example": "BusinessScheduleTwo", "description": "Name of the location's business schedule which determines when this selective call forwarding rule is in effect." }, "forwardTo": { "type": "object", "properties": { "selection": { "type": "string", "enum": [ "FORWARD_TO_DEFAULT_NUMBER", "FORWARD_TO_SPECIFIED_NUMBER", "DO_NOT_FORWARD" ], "description": "Controls what happens when the rule matches.\n * `FORWARD_TO_DEFAULT_NUMBER` - When the rule matches, forward to the destination for the hunt group.\n * `FORWARD_TO_SPECIFIED_NUMBER` - When the rule matches, forward to the destination for this rule.\n * `DO_NOT_FORWARD` - When the rule matches, do not forward to another number.\n" }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Phone number used if selection is `FORWARD_TO_SPECIFIED_NUMBER`." } }, "description": "Controls what happens when the rule matches including the destination number for the call forwarding." }, "callsFrom": { "type": "object", "properties": { "selection": { "type": "string", "enum": [ "ANY", "CUSTOM" ], "description": "If `CUSTOM`, use `customNumbers` to specific which incoming caller ID values cause this rule to match. `ANY` means any incoming call matches assuming the rule is in effect based on the associated schedules.\n * `ANY` - Rule matches for calls from any number.\n * `CUSTOM` - Rule matches based on the numbers and options in `customNumbers`.\n" }, "customNumbers": { "type": "object", "properties": { "privateNumberEnabled": { "type": "boolean", "description": "Match if caller ID indicates the call is from a private number." }, "unavailableNumberEnabled": { "type": "boolean", "description": "Match if caller ID is unavailable." }, "numbers": { "type": "array", "items": { "type": "string" }, "description": "Array of number strings to be matched against incoming caller ID." } }, "description": "Custom rules for matching incoming caller ID information." } }, "description": "Settings related the rule matching based on incoming caller ID." }, "callsTo": { "type": "object", "properties": { "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallForwardingNumbers" }, "description": "Array of numbers to be matched against the calling destination number." } }, "description": "Settings related to the rule matching based on the destination number." } } }, "ModifyPersonPlaceVirtualLineCallQueueObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzgzYjQ0OTIyLWZlOWYtMTFlYi1hNGI4LTMzNjI3YmVkNjdiNQ", "description": "ID of person, workspace or virtual line." }, "weight": { "type": "string", "example": "50", "description": "Weight of person, workspace or virtual line. Only applied when call policy is `WEIGHTED`." }, "skillLevel": { "type": "number", "example": 1, "description": "Skill level of person, workspace or virtual line. Only applied when call routing type is `SKILL_BASED`." }, "joinEnabled": { "type": "boolean", "example": true, "description": "Indicates the join status of the agent for this queue. The default value for newly added agents is `true`." } } }, "PatchCallQueueNightServiceObject": { "type": "object", "required": [ "nightServiceEnabled", "playAnnouncementBeforeEnabled", "announcementMode", "audioMessageSelection", "forceNightServiceEnabled", "manualAudioMessageSelection" ], "properties": { "nightServiceEnabled": { "type": "boolean", "example": true, "description": "Enable or disable call queue night service routing policy." }, "action": { "type": "string", "enum": [ "BUSY", "TRANSFER" ], "description": "The call processing action type.\n * `BUSY` - The caller hears a fast busy tone.\n * `TRANSFER` - Transfers the call to number specified in `transferPhoneNumber`.\n" }, "transferPhoneNumber": { "type": "string", "example": "1234", "description": "Call gets transferred to this number when action is set to `TRANSFER`. This can also be an extension." }, "playAnnouncementBeforeEnabled": { "type": "boolean", "example": true, "description": "Indicates whether an announcement plays to callers before the action is applied." }, "announcementMode": { "type": "string", "enum": [ "NORMAL", "MANUAL" ], "description": "The type of announcements to played.\n * `NORMAL` - Plays announcement as per `audioMessageSelection`.\n * `MANUAL` - Plays announcement as per `manualAudioMessageSelection`.\n" }, "audioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcements to be played when announcementMode is set to `NORMAL`.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "audioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureObject" }, "description": "List of pre-configured Announcement Audio Files when `audioMessageSelection` is `CUSTOM`." }, "businessHoursName": { "type": "string", "example": "Working Hour", "description": "Name of the schedule configured for a night service as one of from `businessHourSchedules` list." }, "businessHoursLevel": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "The above mentioned schedule is org or location specific. (Must be from `businessHourSchedules` list)\n * `ORGANIZATION` - Schedule is configured across an organization.\n * `LOCATION` - Schedule is configured across a location.\n" }, "forceNightServiceEnabled": { "type": "boolean", "example": true, "description": "Force night service regardless of business hour schedule." }, "manualAudioMessageSelection": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "The type of announcements to be played when announcementMode is set to `MANUAL`.\n * `DEFAULT` - Default Audio Message Selection.\n * `CUSTOM` - Custom Audio Message Selection.\n" }, "manualAudioFiles": { "type": "array", "items": { "$ref": "#/components/schemas/AudioAnnouncementFileFeatureObject" }, "description": "List Of pre-configured Audio Files." } } }, "PostCallQueueCallPolicyObject": { "type": "object", "required": [ "routingType", "policy", "callBounce", "distinctiveRing" ], "properties": { "routingType": { "$ref": "#/components/schemas/HuntRoutingTypeSelection", "description": "Call routing type to use to dispatch calls to agents. The routing type should be `SKILL_BASED` if you want to assign skill level to `agents`. Only certain `policy` are allowed in `SKILL_BASED` type." }, "policy": { "$ref": "#/components/schemas/HuntPolicySelection", "description": "Call routing policy to use to dispatch calls to `agents`." }, "callBounce": { "type": "object", "properties": { "callBounceEnabled": { "type": "boolean", "example": true, "description": "If enabled, bounce calls after the set number of rings." }, "callBounceMaxRings": { "type": "number", "example": 5, "description": "Number of rings after which to bounce call, if `callBounce` is enabled." }, "agentUnavailableEnabled": { "type": "boolean", "example": true, "description": "Bounce if agent becomes unavailable." }, "alertAgentEnabled": { "type": "boolean", "example": true, "description": "Alert agent if call on hold more than `alertAgentMaxSeconds`." }, "alertAgentMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to alert agent if `alertAgentEnabled`." }, "callBounceOnHoldEnabled": { "type": "boolean", "example": true, "description": "Bounce if call on hold more than `callBounceMaxSeconds`." }, "callBounceOnHoldMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to bounce if `callBounceEnabled`." } }, "description": "Settings for when the call into the hunt group is not answered." }, "distinctiveRing": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the `distinctiveRing` is enabled." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this call queue is called. Only available when `distinctiveRing` is enabled for the call queue." } }, "description": "Whether or not the call queue has the `distinctiveRing` option enabled." } } }, "PostPersonPlaceVirtualLineCallQueueObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of person, workspace or virtual line." }, "weight": { "type": "string", "example": "50", "description": "Weight of person, workspace or virtual line. Only applied when call policy is `WEIGHTED`." }, "skillLevel": { "type": "number", "example": 1, "description": "Skill level of person, workspace or virtual line. Only applied when call routing type is `SKILL_BASED`." } } }, "RingPatternObject": { "type": "string", "enum": [ "NORMAL", "LONG_LONG", "SHORT_SHORT_LONG", "SHORT_LONG_SHORT" ], "description": " * `NORMAL` - Normal incoming ring pattern.\n * `LONG_LONG` - Incoming ring pattern of two long rings.\n * `SHORT_SHORT_LONG` - Incoming ring pattern of two short rings, followed by a short ring.\n * `SHORT_LONG_SHORT` - Incoming ring pattern of a short ring, followed by a long ring, followed by a short ring.\n" }, "CallQueuePrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueuePrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "CallQueuePrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "CallQueueAlternateAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueueAlternateAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "CallQueueAlternateAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "CallQueueCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/CallQueueCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "CallQueueCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "AvailableAgentListGetObject": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableAgentObject" }, "description": "Array of available agents." } } }, "AvailableAgentObject": { "type": "object", "required": [ "id", "lastName", "firstName", "displayName", "type", "email", "hasCxEssentials" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of a person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Brown", "description": "Last name of a person, workspace or virtual line." }, "firstName": { "type": "string", "example": "John", "description": "First name of a person, workspace or virtual line." }, "displayName": { "type": "string", "example": "johnBrown", "description": "Display name of a person, workspace or virtual line." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": "Type of the person, workspace or virtual line.\n * `PEOPLE` - Object is a user.\n * `PLACE` - Object is a place.\n * `VIRTUAL_LINE` - Object is a virtual line.\n" }, "email": { "type": "string", "example": "john.brown@example.com", "description": "Email of a person, workspace or virtual line." }, "hasCxEssentials": { "type": "boolean", "example": true, "description": "Person has the CX Essentials license." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/GetUserNumberItemObject" }, "description": "List of phone numbers of a person, workspace or virtual line." } } }, "ListSupervisorObject": { "type": "object", "required": [ "id", "agentCount" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81OGVkZTIwNi0yNTM5LTQ1ZjQtODg4Ny05M2E3ZWIwZWI3ZDI", "description": "A unique identifier for the supervisor." }, "firstName": { "type": "string", "example": "John", "description": "First name of the supervisor." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of the supervisor." }, "phoneNumber": { "type": "string", "example": "+19845550186", "description": "Primary phone number of the supervisor." }, "extension": { "type": "string", "example": "12554", "description": "Primary phone extension of the supervisor." }, "routingPrefix": { "type": "string", "example": "34", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "3412554", "description": "Routing prefix + extension of a person." }, "agentCount": { "type": "integer", "example": 2, "description": "Number of agents managed by supervisor. A supervisor must manage at least one agent." } } }, "PostPersonPlaceVirtualLineSupervisorObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzE3NzczMWRiLWE1YzEtNGI2MC05ZTMwLTNhM2MxMGFiM2IxMQ", "description": "Identifier of the person, workspace or virtual line." } } }, "CreateSupervisorObject": { "type": "object", "required": [ "id", "agents" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81OGVkZTIwNi0yNTM5LTQ1ZjQtODg4Ny05M2E3ZWIwZWI3ZDI", "description": "A unique identifier for the supervisor." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PostPersonPlaceVirtualLineSupervisorObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." } } }, "BulkSupervisorsDelete": { "type": "object", "required": [ "supervisorIds" ], "properties": { "supervisorIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80Y2I1M2ZmMy01NWViLTQ2MzYtYTE4ZC05NWVjZmFhM2E4NmY,Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNzY2ZDNjNC0xZTg1LTQ4YzgtYTFkZi1mMWUzYTAyMDg1MWE" }, "description": "Array of supervisors IDs to be deleted." }, "deleteAll": { "type": "boolean", "description": "If present the `supervisorIds` array is ignored, and all supervisors in the context are deleted. **WARNING**: This will remove all supervisors from the organization." } } }, "AvailableSupervisorsListObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YzVlODRhMS0wZmEwLTQzNDAtODVkZC1mMzM1ZGQ4MTkxMmI", "description": "A unique identifier for the supervisor." }, "firstName": { "type": "string", "example": "Adam", "description": "First name of the supervisor." }, "lastName": { "type": "string", "example": "Sandler", "description": "Last name of the supervisor." }, "displayName": { "type": "string", "example": "Adam Sandler", "description": "(string, optional) - Display name of the supervisor." }, "phoneNumber": { "type": "string", "example": "+19845550200", "description": "Primary phone number of the supervisor." }, "extension": { "type": "string", "example": "0020", "description": "Primary phone extension of the supervisor." }, "routingPrefix": { "type": "string", "example": "34543", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "345430020", "description": "Routing prefix + extension of a person." } } }, "ListSupervisorAgentObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "description": "ID of person, workspace or virtual line." }, "lastName": { "type": "string", "example": "user", "description": "Last name of the agent." }, "firstName": { "type": "string", "example": "test", "description": "First name of the agent." }, "extension": { "type": "string", "example": "0020", "description": "Primary phone extension of the agent." }, "esn": { "type": "string", "example": "0020", "description": "Routing prefix + extension of a agent." }, "phoneNumber": { "type": "string", "example": "+1972998998", "description": "Primary phone number of the agent." } } }, "AgentAction": { "type": "string", "enum": [ "ADD", "DELETE" ], "description": " * `ADD` - Assign an agent to a supervisor.\n * `DELETE` - Remove an agent from a supervisor.\n" }, "PutPersonPlaceVirtualLineAgentObject": { "type": "object", "required": [ "id", "action" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS81OGVkZTIwNi0yNTM5LTQ1ZjQtODg4Ny05M2E3ZWIwZWI3ZDI", "description": "ID of person, workspace or virtual line. **WARNING**: The `id` returned is always of type `PEOPLE` even if the agent is a workspace or virtual line. The `type` of the agent `id` will be corrected in a future release." }, "action": { "$ref": "#/components/schemas/AgentAction", "description": "Enumeration that indicates whether an agent needs to be added (`ADD`) or deleted (`DELETE`) from a supervisor." } } }, "CreateAgentObject": { "type": "object", "required": [ "agents" ], "properties": { "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PutPersonPlaceVirtualLineAgentObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls. **WARNING**: The `id` returned is in UUID format, since we don't have agentType from OCI response. This will be converting to Hydra type in future release." } } }, "ListSupervisorAgentStatusObject": { "type": "object", "required": [ "id", "status", "message" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85NTA4OTc4ZC05YmFkLTRmYWEtYTljNC0wOWQ4NWQ4ZmRjZTY", "description": "ID of person, workspace or virtual line. **WARNING**: The `id` returned is in UUID format, since we don't have agentType from OCI response. This will be converting to Hydra type in future release." }, "status": { "type": "string", "example": "DUPLICATE", "description": "status of the agent." }, "message": { "type": "string", "example": "[Error 6612] Agent 9508978d-9bad-4faa-a9c4-09d85d8fdce6 is already assigned to the supervisor.", "description": "Detailed message for the status." } } }, "AvailableAgentListObject": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YzVlODRhMS0wZmEwLTQzNDAtODVkZC1mMzM1ZGQ4MTkxMmI", "description": "A unique identifier for the agent." }, "firstName": { "type": "string", "example": "Adam", "description": "First name of the agent." }, "lastName": { "type": "string", "example": "Sandler", "description": "Last name of the agent." }, "displayName": { "type": "string", "example": "Adam Sandler", "description": "(string, optional) - Display name of the agent." }, "phoneNumber": { "type": "string", "example": "+19845550200", "description": "Primary phone number of the agent." }, "extension": { "type": "string", "example": "0020", "description": "Primary phone extension of the agent." }, "routingPrefix": { "type": "string", "example": "34543", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "345430020", "description": "Routing prefix + extension of a person." }, "type": { "$ref": "#/components/schemas/UserType", "description": "Type of the person, workspace or virtual line." } } }, "UserType": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": " * `PEOPLE` - The associated member is a person.\n * `PLACE` - The associated member is a workspace.\n * `VIRTUAL_LINE` - The associated member is a virtual line.\n" }, "ListCallQueueAgentObject": { "type": "object", "required": [ "id", "firstName", "lastName", "queueCount", "locationCount", "joinCount", "unjoinCount", "location", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zYjY4Yjg2YS1hMTZiLTRmNzItOTlmZi01ZDlhZjgyZWNmNTE", "description": "Unique call queue agent identifier." }, "firstName": { "type": "string", "example": "test_301_person_phone_extnsion", "description": "First name for the call queue agent." }, "lastName": { "type": "string", "example": "last_nam", "description": "Last name for the call queue agent." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the call queue agent." }, "extension": { "type": "string", "example": "23234", "description": "Primary phone extension of the call queue agent." }, "routingPrefix": { "type": "string", "example": "8002", "description": "Routing prefix of the call queue agent." }, "esn": { "type": "string", "example": "23234", "description": "Routing prefix + extension of a agent." }, "queueCount": { "type": "number", "example": 1, "description": "Denotes the queue count for call queue agent." }, "locationCount": { "type": "number", "example": 1, "description": "Denotes the location count for call queue agent." }, "joinCount": { "type": "number", "example": 1, "description": "Denotes the join count for call queue agent." }, "unjoinCount": { "type": "number", "description": "Denotes unjoin count for call queue agent." }, "location": { "type": "object", "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "Location2", "description": "The location name where the call queue agent resides." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzVmMDI3OGZlLWU4OGMtNDMzNy04MGViLWRjY2NiM2VlMDU1MA", "description": "ID of location for call queue agent." } }, "description": "The location information." }, "type": { "type": "string", "example": "PEOPLE", "description": "The type of the call queue agent." } } }, "GetCallQueueAgentObject": { "type": "object", "required": [ "agent", "queues" ], "properties": { "agent": { "type": "object", "required": [ "id", "firstName", "lastName", "location", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xZmNiMjczZS0wYzdmLTQ1ZGUtYmNlOC0yMWE3YzFlYjVjYmY", "description": "A unique identifier for the call queue agent." }, "firstName": { "type": "string", "example": "Arthur", "description": "First name for the call queue agent." }, "lastName": { "type": "string", "example": "Murray", "description": "last name for the call queue agent." }, "phoneNumber": { "type": "string", "example": "19728881234", "description": "Primary phone number of the call queue agent." }, "extension": { "type": "string", "example": "34543", "description": "Primary phone extension of the call queue agent." }, "esn": { "type": "string", "example": "34543180", "description": "Routing prefix + extension of a agent." }, "location": { "type": "object", "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "RCDN", "description": "The location name where the call queue agent resides." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "description": "ID of location for call queue agent." } }, "description": "The location information." }, "type": { "type": "string", "example": "PEOPLE", "description": "TIMEhe type of the call queue agent." } } }, "queues": { "type": "array", "items": { "type": "object", "required": [ "id", "name", "routingPrefix", "locationId", "locationName", "joinEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvZjM4NDIxZGYtN2MxOC00NGI1LThlNmQtNDFmZTEyMTFlZDFk", "description": "Unique identifier of the call queue." }, "name": { "type": "string", "example": "YU7", "description": "Unique name for the call queue." }, "phoneNumber": { "type": "string", "example": "12144184002", "description": "Primary phone number of the call queue." }, "routingPrefix": { "type": "string", "example": "34543", "description": "The routing prefix for the call queue." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "description": "The location identifier of the call queue." }, "locationName": { "type": "string", "example": "RCDN", "description": "The location name where the call queue resides." }, "joinEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." } } } } } }, "ModifyAgentsForCallQueueObject": { "type": "object", "required": [ "settings" ], "properties": { "settings": { "type": "array", "items": { "type": "object", "required": [ "queueId", "joinEnabled" ], "properties": { "queueId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvZjM4NDIxZGYtN2MxOC00NGI1LThlNmQtNDFmZTEyMTFlZDFk", "description": "Unique call queue identifier." }, "joinEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." } } } } } }, "ListCallQueueEssentialsObject": { "type": "object", "required": [ "id", "name", "hasCxEssentials", "locationName", "locationId", "enabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTU1MzY4Y2QtZDg5Mi00YzFlLTk0YjYtNzdjNjRiYWQ3NWMx", "description": "A unique identifier for the call queue." }, "name": { "type": "string", "example": "5714328359", "description": "Unique name for the call queue." }, "hasCxEssentials": { "type": "boolean", "example": true, "description": "Denotes if the call queue has Customer Assist license." }, "locationName": { "type": "string", "example": "WXCSIVDKCPAPIC4S1", "description": "Name of location for call queue." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location for call queue." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the call queue." }, "extension": { "type": "string", "example": "7781", "description": "Primary phone extension of the call queue." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." }, "department": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "description": "Unique identifier of the department." }, "name": { "type": "string", "example": "HR", "description": "Name of the department." } }, "description": "The department information." } } }, "GetCallQueueEssentialsObject": { "type": "object", "required": [ "id", "name", "hasCxEssentials", "enabled", "alternateNumberSettings", "callPolicies", "queueSettings", "agents" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvNTU1MzY4Y2QtZDg5Mi00YzFlLTk0YjYtNzdjNjRiYWQ3NWMx", "description": "A unique identifier for the call queue." }, "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the call queue." }, "hasCxEssentials": { "type": "boolean", "example": true, "description": "Denotes if the call queue has Customer Assist license." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call queue is enabled." }, "language": { "type": "string", "example": "English", "description": "Language for call queue." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code for call queue." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this call queue. Defaults to \".\"." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this call queue. Defaults to the phone number if set, otherwise defaults to call group name." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the call queue." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the call queue." }, "extension": { "type": "string", "example": "7781", "description": "Extension of the call queue." }, "alternateNumberSettings": { "type": "object", "required": [ "distinctiveRingEnabled", "alternateNumbers" ], "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Distinctive Ringing selected for the alternate numbers in the call queue overrides the normal ringing patterns set for Alternate Number." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersWithPattern" }, "description": "Allows up to 10 numbers, each with an optional distinctive ring setting override." } }, "description": "The alternate numbers feature allows you to assign multiple phone numbers or extensions to a call queue. Each number will reach the same greeting and each menu will function identically to the main number. The alternate numbers option enables you to have up to ten (10) phone numbers ring into the call queue." }, "callPolicies": { "$ref": "#/components/schemas/GetCallQueueEssentialsCallPolicyObject", "description": "Policy controlling how calls are routed to agents." }, "queueSettings": { "$ref": "#/components/schemas/CallQueueQueueEssentialsSettingsObject", "description": "Overall call queue settings." }, "allowCallWaitingForAgentsEnabled": { "type": "boolean", "description": "Flag to indicate whether call waiting is enabled for agents." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceObject" }, "description": "People, including workspaces, that are eligible to receive calls." }, "department": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZjA2ZWRiOGMtMjMxNC00ZTcxLWIzNzgtZTdiMmQwNjk3OTliOjk2YWJjMmFhLTNkY2MtMTFlNS1hMTUyLWZlMzQ4MTljZGM5YQ", "description": "Unique identifier of the department." }, "name": { "type": "string", "example": "HR", "description": "Name of the department." } }, "description": "The department information." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this call queue." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "GetPersonPlaceObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of person or workspace." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name of person or workspace." }, "lastName": { "type": "string", "example": "Smith", "description": "First name of person or workspace." }, "phoneNumber": { "type": "string", "example": "+15555551234", "description": "Phone number of person or workspace." }, "extension": { "type": "string", "example": "1234", "description": "Extension of person or workspace." }, "weight": { "type": "string", "example": "50", "description": "Weight of person or workspace. Only applied when call policy is `WEIGHTED`." } } }, "GetCallQueueEssentialsCallPolicyObject": { "type": "object", "required": [ "policy", "callBounce", "distinctiveRing" ], "properties": { "policy": { "$ref": "#/components/schemas/HuntPolicyEssentialSelection", "description": "Call routing policy to use to dispatch calls to agents." }, "callBounce": { "type": "object", "required": [ "callBounceEnabled", "callBounceMaxRings", "agentUnavailableEnabled", "alertAgentEnabled", "alertAgentMaxSeconds", "callBounceOnHoldEnabled", "callBounceOnHoldMaxSeconds" ], "properties": { "callBounceEnabled": { "type": "boolean", "example": true, "description": "If enabled, bounce calls after the set number of rings." }, "callBounceMaxRings": { "type": "number", "example": 5, "description": "Number of rings after which to bounce call, if call bounce is enabled." }, "agentUnavailableEnabled": { "type": "boolean", "example": true, "description": "Bounce if agent becomes unavailable." }, "alertAgentEnabled": { "type": "boolean", "example": true, "description": "Alert agent if call on hold more than alertAgentMaxSeconds." }, "alertAgentMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to alert agent if alertAgentEnabled." }, "callBounceOnHoldEnabled": { "type": "boolean", "example": true, "description": "Bounce if call on hold more than callBounceMaxSeconds." }, "callBounceOnHoldMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to bounce if callBounceEnabled." } }, "description": "Settings for when the call into the call queue is not answered." }, "distinctiveRing": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the distinctive ring is enabled." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this callqueue is called. Only available when `distinctiveRing` is enabled for the call queue." } }, "description": "Whether or not the call queue has the distinctive ring option enabled." } } }, "CallQueueQueueEssentialsSettingsObject": { "type": "object", "required": [ "queueSize", "overflow" ], "properties": { "queueSize": { "type": "number", "example": 50, "description": "The maximum number of calls for this call queue. Once this number is reached, the overflow settings are triggered." }, "callOfferToneEnabled `true`": { "type": "boolean", "description": "Play ringing tone to callers when their call is set to an available agent." }, "resetCallStatisticsEnabled": { "type": "boolean", "description": "Reset caller statistics upon queue entry." }, "overflow": { "type": "object", "required": [ "action", "greeting" ], "properties": { "action": { "type": "string", "enum": [ "PERFORM_BUSY_TREATMENT", "PLAY_RINGING_UNTIL_CALLER_HANGS_UP", "TRANSFER_TO_PHONE_NUMBER" ], "description": "Indicates how to handle new calls when the queue is full.\n * `PERFORM_BUSY_TREATMENT` - The caller hears a fast-busy tone.\n * `PLAY_RINGING_UNTIL_CALLER_HANGS_UP` - The caller hears ringing until they disconnect.\n * `TRANSFER_TO_PHONE_NUMBER` - Number where you want to transfer overflow calls.\n" }, "sendToVoicemail": { "type": "boolean", "description": "When `true`, forwards all calls to a voicemail service of an internal number. This option is ignored when an external `transferNumber` is entered." }, "transferNumber": { "type": "string", "example": "+15553331212", "description": "Destination number for overflow calls when `action` is set to `TRANSFER_TO_PHONE_NUMBER`." }, "overflowAfterWaitEnabled": { "type": "boolean", "example": true, "description": "After calls wait for the configured number of seconds and no agent is available, the overflow treatment is triggered." }, "overflowAfterWaitTime": { "type": "number", "example": 20, "description": "Number of seconds to wait before the overflow treatment is triggered when no agent is available." }, "playOverflowGreetingEnabled": { "type": "boolean", "example": true, "description": "Indicate overflow audio to be played, otherwise callers will hear the hold music until the call is answered by a user." }, "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "Indicates how to handle new calls when the queue is full.\n * `CUSTOM` - Play the custom announcement specified by the `fileName` field.\n * `DEFAULT` - Play default announcement.\n" }, "audioFiles": { "type": "array", "items": { "type": "string" }, "description": "Array of announcement file name strings to be played as overflow greetings. These files are from the list of announcements files associated with this call queue." } }, "description": "Settings for incoming calls exceed queueSize." } } }, "HuntPolicyEssentialSelection": { "type": "string", "enum": [ "CIRCULAR", "REGULAR", "SIMULTANEOUS", "UNIFORM", "WEIGHTED" ], "description": " * `CIRCULAR` - This option cycles through all agents after the last agent that took a call. It sends calls to the next available agent.\n * `REGULAR` - Send the call through the queue of agents in order, starting from the top each time.\n * `SIMULTANEOUS` - Sends calls to all agents at once\n * `UNIFORM` - Sends calls to the agent that has been idle the longest. If they don't answer, proceed to the next agent who has been idle the second longest, and so on until the call is answered.\n * `WEIGHTED` - Sends call to idle agents based on percentages you assign to each agent (up to 100%).\n" }, "CreateCallQueueEssentialsObject": { "type": "object", "required": [ "name", "callPolicies", "queueSettings", "agents" ], "properties": { "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the call queue." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Primary phone number of the call queue. Either a `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "5309", "description": "Primary phone extension of the call queue. Either a `phoneNumber` or extension is mandatory." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this call queue. Defaults to \".\". This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this call queue. Defaults to `phoneNumber` if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the call queue." }, "callPolicies": { "$ref": "#/components/schemas/PostCallQueueEssentialCallPolicyObject", "description": "Policy controlling how calls are routed to `agents`." }, "queueSettings": { "$ref": "#/components/schemas/CallQueueQueueSettingsObject", "description": "Overall call queue settings." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PostPersonPlaceVirtualLineCallQueueObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "callingLineIdPolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of Calling Line ID Policy Selected for Call Queue.\n * `DIRECT_LINE` - Calling Line ID Policy will show the caller's direct line number.\n * `LOCATION_NUMBER` - Calling Line ID Policy will show the main number for the location.\n * `CUSTOM` - Calling Line ID Policy will show the value from the `callingLineIdPhoneNumber` field.\n" }, "callingLineIdPhoneNumber": { "type": "string", "example": "+12072342368", "description": "Calling line ID Phone number which will be shown if CUSTOM is selected." }, "allowAgentJoinEnabled": { "type": "boolean", "description": "Whether or not to allow agents to join or unjoin a queue." }, "phoneNumberForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates that the agent's configuration allows them to use the queue's Caller ID for outgoing calls." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this call queue." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PostCallQueueEssentialCallPolicyObject": { "type": "object", "required": [ "routingType", "policy", "callBounce", "distinctiveRing" ], "properties": { "routingType": { "$ref": "#/components/schemas/HuntRoutingTypeSelection", "description": "Call routing type to use to dispatch calls to agents. The routing type should be `SKILL_BASED` if you want to assign skill level to `agents`. Only certain `policy` are allowed in `SKILL_BASED` type." }, "policy": { "$ref": "#/components/schemas/HuntPolicyEssentialSelection", "description": "Call routing policy to use to dispatch calls to `agents`." }, "callBounce": { "type": "object", "properties": { "callBounceEnabled": { "type": "boolean", "example": true, "description": "If enabled, bounce calls after the set number of rings." }, "callBounceMaxRings": { "type": "number", "example": 5, "description": "Number of rings after which to bounce call, if `callBounce` is enabled." }, "agentUnavailableEnabled": { "type": "boolean", "example": true, "description": "Bounce if agent becomes unavailable." }, "alertAgentEnabled": { "type": "boolean", "example": true, "description": "Alert agent if call on hold more than `alertAgentMaxSeconds`." }, "alertAgentMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to alert agent if `alertAgentEnabled`." }, "callBounceOnHoldEnabled": { "type": "boolean", "example": true, "description": "Bounce if call on hold more than `callBounceMaxSeconds`." }, "callBounceOnHoldMaxSeconds": { "type": "number", "example": 20, "description": "Number of second after which to bounce if `callBounceEnabled`." } }, "description": "Settings for when the call into the hunt group is not answered." }, "distinctiveRing": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the `distinctiveRing` is enabled." }, "ringPattern": { "$ref": "#/components/schemas/RingPatternObject", "description": "Ring pattern for when this call queue is called. Only available when `distinctiveRing` is enabled for the call queue." } }, "description": "Whether or not the call queue has the `distinctiveRing` option enabled." } } }, "GetCallRecordingObject": { "type": "object", "required": [ "organization", "enabled", "vendorId", "vendorName", "termsOfServiceUrl" ], "properties": { "organization": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9lNTEzMTg1Zi01YTJmLTQ0OTUtYjM1Yi03MDY3YmY3Y2U0OGU", "description": "A unique identifier for the organization." }, "name": { "type": "string", "example": "Alaska Cisco Organization", "description": "A unique name for the organization." } }, "description": "Details of the organization." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call recording is enabled." }, "vendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "description": "A unique identifier for the vendor." }, "vendorName": { "type": "string", "example": "Dubber", "description": "A unique name for the vendor." }, "termsOfServiceUrl": { "type": "string", "example": "https://www.dubber.net/terms", "description": "Url where can be found terms of service for the vendor.\n\n**NOTE**: This is expected to be empty for webex recording platform." } } }, "GetCallRecordingTermsOfServiceObject": { "type": "object", "required": [ "vendorId", "vendorName", "termsOfServiceEnabled", "termsOfServiceUrl" ], "properties": { "vendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvNTNkYzRjODctODQwOC00ODgyLTk1NzAtZGNhMmJjZGI5Mjgw", "description": "A unique identifier for the vendor." }, "vendorName": { "type": "string", "example": "Dubber", "description": "A unique name for the vendor." }, "termsOfServiceEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call recording terms of service are enabled." }, "termsOfServiceUrl": { "type": "string", "example": "https://www.dubber.net/terms", "description": "Url where can be found terms of service for the vendor.\n\n**NOTE**: This is expected to be empty for webex recording platform." } } }, "GetComplianceAnnouncementObject": { "type": "object", "required": [ "inboundPSTNCallsEnabled", "useOrgSettingsEnabled", "outboundPSTNCallsEnabled", "outboundPSTNCallsDelayEnabled", "delayInSeconds" ], "properties": { "inboundPSTNCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether the call recording START/STOP announcement is played to an inbound caller." }, "useOrgSettingsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether to use the customer level compliance announcement default settings." }, "outboundPSTNCallsEnabled": { "type": "boolean", "description": "Flag to indicate whether the call recording START/STOP announcement is played to an outbound caller." }, "outboundPSTNCallsDelayEnabled": { "type": "boolean", "description": "Flag to indicate whether compliance announcement is played after a specified delay in seconds." }, "delayInSeconds": { "type": "number", "example": 10, "description": "Number of seconds to wait before playing the compliance announcement." } } }, "GetOrgComplianceAnnouncementObject": { "type": "object", "required": [ "inboundPSTNCallsEnabled", "outboundPSTNCallsEnabled", "outboundPSTNCallsDelayEnabled", "delayInSeconds" ], "properties": { "inboundPSTNCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether the call recording START/STOP announcement is played to an inbound caller." }, "outboundPSTNCallsEnabled": { "type": "boolean", "description": "Flag to indicate whether the call recording START/STOP announcement is played to an outbound caller." }, "outboundPSTNCallsDelayEnabled": { "type": "boolean", "description": "Flag to indicate whether compliance announcement is played after a specified delay in seconds." }, "delayInSeconds": { "type": "number", "example": 10, "description": "Number of seconds to wait before playing the compliance announcement." } } }, "ModifyCallRecordingSettingsObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the call recording is enabled." } } }, "ModifyCallRecordingTermsOfServiceObject": { "type": "object", "required": [ "termsOfServiceEnabled" ], "properties": { "termsOfServiceEnabled": { "type": "boolean", "example": true, "description": "Whether or not the call recording terms of service are enabled." } } }, "ModifyComplianceAnnouncementObject": { "type": "object", "properties": { "inboundPSTNCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether the Call Recording START/STOP announcement is played to an inbound caller." }, "useOrgSettingsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether to use the customer level compliance announcement default settings." }, "outboundPSTNCallsEnabled": { "type": "boolean", "description": "Flag to indicate whether the Call Recording START/STOP announcement is played to an outbound caller." }, "outboundPSTNCallsDelayEnabled": { "type": "boolean", "description": "Flag to indicate whether compliance announcement is played after a specified delay in seconds." }, "delayInSeconds": { "type": "number", "example": 10, "description": "Number of seconds to wait before playing the compliance announcement." } } }, "ModifyOrgComplianceAnnouncementObject": { "type": "object", "properties": { "inboundPSTNCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate whether the call recording START/STOP announcement is played to an inbound caller." }, "outboundPSTNCallsEnabled": { "type": "boolean", "description": "Flag to indicate whether the call recording START/STOP announcement is played to an outbound caller." }, "outboundPSTNCallsDelayEnabled": { "type": "boolean", "description": "Flag to indicate whether compliance announcement is played after a specified delay in seconds." }, "delayInSeconds": { "type": "number", "example": 10, "description": "Number of seconds to wait before playing the compliance announcement." } } }, "CallRecordingRegionsResponse": { "type": "object", "required": [ "regions" ], "properties": { "regions": { "type": "array", "items": { "$ref": "#/components/schemas/Regions" }, "description": "Contains region details." } } }, "Regions": { "type": "object", "required": [ "code", "name", "defaultEnabled" ], "properties": { "code": { "type": "string", "example": "US", "description": "Two character region code." }, "name": { "type": "string", "example": "United States", "description": "Name of the region." }, "defaultEnabled": { "type": "string", "example": "false", "description": "Enabled by default." } } }, "CallRecordingVendorUsersResponse": { "type": "object", "required": [ "vendorId", "members" ], "properties": { "vendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "description": "Call recording vendor ID." }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/Members" }, "description": "Contains member details" } } }, "Members": { "type": "object", "required": [ "id", "type", "licenseType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLXdlc3QtMl9yL1BMQUNFL2U2OTczZDgyLWM1NTUtNDMwOC05NGU3LWI3ZWU2MjczY2YyMg", "description": "Unique identifier of the member." }, "lastName": { "type": "string", "example": "jones", "description": "Last name of the member." }, "firstName": { "type": "string", "example": "Vickor", "description": "First name of the member." }, "type": { "$ref": "#/components/schemas/MemberType", "description": "Type of member." }, "licenseType": { "$ref": "#/components/schemas/UserLicenseType", "description": "License type of the member." } } }, "UserLicenseType": { "type": "string", "enum": [ "BASIC_USER", "PROFESSIONAL_USER", "WORKSPACE", "PROFESSIONAL_WORKSPACE", "VIRTUAL_PROFILE" ], "description": " * `BASIC_USER` - License type is webex calling standard user.\n * `PROFESSIONAL_USER` - License type is webex calling professional user.\n * `WORKSPACE` - License type is webex calling common area workspace.\n * `PROFESSIONAL_WORKSPACE` - License type is webex calling professional workspace.\n * `VIRTUAL_PROFILE` - License type is webex calling virtual profile.\n" }, "CallRecordingVendorsPatchRequest": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "description": "Unique identifier of the call recording vendor." }, "orgDefaultEnabled": { "type": "boolean", "example": true, "description": "Vendor is enabled by default." }, "storageRegion": { "type": "string", "example": "US", "description": "Regions where call recordings are stored." }, "orgStorageRegionEnabled": { "type": "boolean", "example": true, "description": "Region-based call recording storage is enabled." }, "failureBehavior": { "$ref": "#/components/schemas/FailureBehavior", "description": "Type of failure behavior." }, "orgFailureBehaviorEnabled": { "type": "boolean", "example": true, "description": "Failure behavior is enabled." } } }, "FailureBehavior": { "type": "string", "enum": [ "PROCEED_WITH_CALL_NO_ANNOUNCEMENT", "PROCEED_CALL_WITH_ANNOUNCEMENT", "END_CALL_WITH_ANNOUNCEMENT" ], "description": " * `PROCEED_WITH_CALL_NO_ANNOUNCEMENT` - Failure behavior will make sure that the call proceeds without announcement.\n * `PROCEED_CALL_WITH_ANNOUNCEMENT` - Failure behavior will make sure that the call proceeds with an announcement.\n * `END_CALL_WITH_ANNOUNCEMENT` - Failure behavior will make sure that the call ends with an announcement.\n" }, "CallRecordingVendorPatchResponse": { "type": "object", "required": [ "jobId" ], "properties": { "jobId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8yOTQ5ZmRiOC1kODg1LTQxMzAtYjhiNy1jNmJiYmM5ZWQzOTE", "description": "Unique job ID of the call recording job." } } }, "CallRecordingLocationVendorsResponse": { "type": "object", "required": [ "orgDefaultEnabled", "orgDefaultVendorId", "orgDefaultVendorName", "defaultVendorId", "defaultVendorName", "vendors", "failureBehavior" ], "properties": { "orgDefaultEnabled": { "type": "boolean", "example": true, "description": "Default call recording is enabled." }, "orgDefaultVendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "description": "Unique identifier of a vendor." }, "orgDefaultVendorName": { "type": "string", "example": "Webex", "description": "Name of the call recording vendor." }, "defaultVendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvMGE0MjY3NTQtYTQ3MC00YzJkLThiYTAtZmJjNjc3M2E4YTdj", "description": "Unique identifier of a vendor." }, "defaultVendorName": { "type": "string", "example": "Webex", "description": "Name of the call recording vendor." }, "vendors": { "type": "array", "items": { "$ref": "#/components/schemas/Vendor" }, "description": "List of available vendors and their details." }, "orgStorageRegionEnabled": { "type": "boolean", "example": true, "description": "Region-based storage is enabled." }, "orgStorageRegion": { "type": "string", "example": "US", "description": "Org level two character Region code." }, "storageRegion": { "type": "string", "example": "US", "description": "Location level character Region code." }, "orgFailureBehaviorEnabled": { "type": "boolean", "example": true, "description": "Failure behavior is enabled." }, "orgFailureBehavior": { "$ref": "#/components/schemas/FailureBehavior", "description": "Type of org-level failure behavior." }, "failureBehavior": { "$ref": "#/components/schemas/FailureBehavior", "description": "Type of location level failure behavior." } } }, "Vendor": { "type": "object", "required": [ "id", "name", "description", "migrateUserCreationEnabled", "loginUrl", "termsOfServiceUrl" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmVjYjYzNGUtYzMyZS00ZWJmLThlYzMtMmVhYjk3Y2IyNjNk", "description": "Unique identifier of a vendor." }, "name": { "type": "string", "example": "Dubber", "description": "Name of a call recording vendor." }, "description": { "type": "string", "example": "This is the Dubber instance for the US region.", "description": "Describing some vendor info." }, "migrateUserCreationEnabled": { "type": "boolean", "example": true, "description": "Users can be migrated." }, "loginUrl": { "type": "string", "example": "https://wxc-us.dubber.net/login?sso=webex", "description": "Login URL of the vendor." }, "termsOfServiceUrl": { "type": "string", "example": "https://www.dubber.net/terms", "description": "URL to vendor's terms of service." } } }, "CallRecordingJobList": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/CallRecordingJobStatus" }, "description": "List of call recording jobs." } } }, "CallRecordingJobStatus": { "type": "object", "required": [ "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "vendorId", "counts" ], "properties": { "name": { "type": "string", "example": "managecallrecordingprovider", "description": "Name of the job." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wNjZkOTQzNC1kODEyLTQzODItODVhMC00MjBlOTFlODg3ZTY", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ADMINBATCHCLIENT_a02c7b0c-4d28-4e98-b47b-0a135a4b287f_0", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODA2NzZhZC0yNjRlLTRmMWMtYmIwYS1jMWZiNmQ0ODlmZTI", "description": "Unique identifier of the user who has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "description": "Unique identifier of the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8zNDEyODExZi0xMWI4LTQ2YTAtYWExNS1lZmEwMjRjODI5ODM", "description": "Unique identifier of the customer for which the job was run." }, "instanceId": { "type": "number", "example": 637210, "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": "Most recent status of the job at the time of invocation." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzlmZTFmZDllLTlkM2QtNDUxZi04MDEwLTMwY2U1ZjRlNTYyNQ", "description": "Unique identifier of a location." }, "vendorId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JFQ09SRElOR19WRU5ET1IvZmYzNzMzOTYtMGVmMC00N2NiLTk5NzEtNzg0MDI5YzZjMTQ3", "description": "Unique identifier of a vendor." }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." } } }, "CallRecordingVendorsList": { "type": "object", "required": [ "vendorId", "vendorName", "vendors", "failureBehavior" ], "properties": { "vendorId": { "type": "string", "description": "Unique identifier of the vendor." }, "vendorName": { "type": "string", "description": "Name of the vendor." }, "vendors": { "$ref": "#/components/schemas/CallRecordingVendors", "description": "List of call recording vendors" }, "storageRegion": { "type": "string", "description": "Call recording storage region. Only applicable for Webex as a vendor and isn't used for other vendors." }, "failureBehavior": { "$ref": "#/components/schemas/FailureBehavior", "description": "Call recording failure behavior." } } }, "CallRecordingVendors": { "type": "object", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/CallRecordingVendor" }, "description": "List of call recording vendors." } } }, "CallRecordingVendor": { "type": "object", "required": [ "id", "name", "description", "migrateUserCreationEnabled", "loginUrl", "termsOfServiceUrl" ], "properties": { "id": { "type": "string", "description": "Unique identifier of the vendor." }, "name": { "type": "string", "description": "Name of the vendor." }, "description": { "type": "string", "description": "Description of the vendor." }, "migrateUserCreationEnabled": { "type": "boolean", "description": "Represents whether user creation is integrated for this vendor. When user creation is integrated, a call recording account in the vendor's system is automatically created when a user is created or added." }, "loginUrl": { "type": "string", "description": "Vendor login page to access user call recordings." }, "termsOfServiceUrl": { "type": "string", "description": "Vendor terms of service URL." } } }, "CallRecordingVendorPatch": { "type": "object", "required": [ "vendorId" ], "properties": { "vendorId": { "type": "string", "description": "Unique identifier of the vendor." }, "storageRegion": { "type": "string", "description": "Call recording storage region. Only applicable for Webex as a vendor and isn't used for other vendors." }, "failureBehavior": { "$ref": "#/components/schemas/FailureBehavior", "description": "Call recording failure behavior." } } }, "QueryParamsObject": { "type": "object", "properties": { "example_param_1": { "type": "string", "example": "example_value_1", "description": "An example key-value pair that will be sent to the agent." }, "example_param_2": { "type": "string", "example": "example_value_2", "description": "Another example key-value pair that will be sent to the agent." }, "example_param_3": { "type": "string", "example": "example_value_3", "description": "Another example key-value pair that will be sent to the agent." } } }, "GetScreenPopConfigurationObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable screen pop." }, "screenPopUrl": { "type": "string", "example": "https://www.salesforce.com/page", "description": "The screen pop URL that integrates Webex calls with other business apps like CRM, ticketing tools, and order entry systems." }, "desktopLabel": { "type": "string", "example": "CRM Integration with Webex CallQueue screen pop", "description": "A label for the screen pop configuration." }, "queryParams": { "$ref": "#/components/schemas/QueryParamsObject", "description": "The additional user-defined key-value pairs that must be sent to the agent." } } }, "ModifyScreenPopConfigurationPayload": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable screen pop." }, "screenPopUrl": { "type": "string", "example": "https://www.salesforce.com/page", "description": "The screen pop URL that integrates Webex calls with other business apps like CRM, ticketing tools, and order entry systems." }, "desktopLabel": { "type": "string", "example": "CRM Integration with Webex CallQueue screen pop", "description": "A label for the screen pop configuration." }, "queryParams": { "$ref": "#/components/schemas/QueryParamsObject", "description": "The additional user-defined key-value pairs that must be sent to the agent." } } }, "GetAvailableAgentsCallQueueObject": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFLzE3NzczMWRiLWE1YzEtNGI2MC05ZTMwLTNhM2MxMGFiM2IxMQ", "description": "Unique agent identifier." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of the agent assigned to the particular location." }, "firstName": { "type": "string", "example": "John", "description": "First name of the agent assigned to the particular location. Defaults to \".\"." }, "displayName": { "type": "string", "example": "John Smith", "description": "(string, optional) - Display name of the agent." }, "type": { "$ref": "#/components/schemas/UserType", "description": "Type of the person, workspace or virtual line." }, "email": { "type": "string", "example": "johnSmith@gmail.com", "description": "Email of the agent." }, "hasCxEssentials": { "type": "boolean", "example": true, "description": "Denotes whether the agent has Customer Assist license." }, "phoneNumbers": { "type": "object", "properties": { "external": { "type": "string", "example": "+12143456103", "description": "External phoneNumber of the agent." }, "extension": { "type": "string", "example": "23234", "description": "Extension of the agent." } }, "description": "Phone number and extension of the agent." } } }, "WrapUpReasonObject": { "type": "object", "required": [ "id", "name", "numberOfQueuesAssigned" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "description": "Unique wrap-up identifier." }, "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." }, "description": { "type": "string", "example": "This is a description for wrap-up reason 1", "description": "Description of the wrap-up reason." }, "numberOfQueuesAssigned": { "type": "number", "example": 1, "description": "Number of queues assigned to the wrap-up reason." } } }, "QueueObjectWithDefaultEnabled": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "phoneNumber", "defaultWrapupEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "description": "Unique queue identifier." }, "name": { "type": "string", "example": "Queue 1", "description": "Name of the queue." }, "locationName": { "type": "string", "example": "Location 1", "description": "Name of the location." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M3YmRjMmI5LWFmZmUtNDE0NC1hZTNkLTI4MWZmZTFjZThlYw", "description": "Unique location identifier." }, "phoneNumber": { "type": "string", "example": "+1234567890", "description": "Phone number of the queue." }, "extension": { "type": "number", "example": 1234, "description": "Extension of the queue." }, "defaultWrapupEnabled": { "type": "boolean", "description": "Denotes whether the default wrap-up is enabled for the queue." } } }, "WrapUpReasonDetailsObject": { "type": "object", "required": [ "name", "defaultWrapupQueuesCount", "queues" ], "properties": { "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." }, "description": { "type": "string", "example": "This is a description for wrap-up reason 1", "description": "Description of the wrap-up reason." }, "defaultWrapupQueuesCount": { "type": "number", "example": 1, "description": "Number of queues assigned to the wrap-up reason." }, "queues": { "type": "array", "items": { "$ref": "#/components/schemas/QueueObjectWithDefaultEnabled" }, "description": "List of queues assigned to the wrap-up reason." } } }, "CreateWrapUpReasonPayload": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." }, "description": { "type": "string", "example": "This is a description for wrap-up reason 1", "description": "Description of the wrap-up reason." }, "queues": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi" }, "description": "List of queue IDs assigned to the wrap-up reason." }, "assignAllQueuesEnabled": { "type": "boolean", "description": "Denotes whether all queues are assigned to the wrap-up reason." } } }, "ValidateWrapUpReasonPayload": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." } } }, "UpdateWrapUpReasonPayload": { "type": "object", "properties": { "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." }, "description": { "type": "string", "example": "This is a description for wrap-up reason 1", "description": "Description of the wrap-up reason." }, "queuesToAssign": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi" }, "description": "List of queue IDs to assign to the wrap-up reason." }, "queuesToUnassign": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMTM1NDg0YTMtN2Y0Yi00MTlhLWI2ZGQtMTk4NmY5MmQwYWQ1" }, "description": "List of queue IDs to unassign from the wrap-up reason." }, "assignAllQueuesEnabled": { "type": "boolean", "description": "Denotes whether all queues are assigned to the wrap-up reason." }, "unassignAllQueuesEnabled": { "type": "boolean", "description": "Denotes whether all queues are unassigned from the wrap-up reason." } } }, "QueueObject": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "phoneNumber" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvOGY1MDI2ZjMtMDZjYi00OTU3LWE0MDQtNDYyM2UzYjJjYzVi", "description": "Unique queue identifier." }, "name": { "type": "string", "example": "Queue 1", "description": "Name of the queue." }, "locationName": { "type": "string", "example": "Location 1", "description": "Name of the location." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2M3YmRjMmI5LWFmZmUtNDE0NC1hZTNkLTI4MWZmZTFjZThlYw", "description": "Unique location identifier." }, "phoneNumber": { "type": "string", "example": "+1234567890", "description": "Phone number of the queue." }, "extension": { "type": "number", "example": 1234, "description": "Extension of the queue." } } }, "QueueWrapUpReasonObject": { "type": "object", "required": [ "id", "name", "isDefaultEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "description": "Unique wrap-up identifier." }, "name": { "type": "string", "example": "Wrap up reason 1", "description": "Name of the wrap-up reason." }, "description": { "type": "string", "example": "This is a description for wrap-up reason 1", "description": "Description of the wrap-up reason." }, "isDefaultEnabled": { "type": "boolean", "example": true, "description": "Denotes whether the default wrap-up is enabled for the queue." } } }, "UpdateWrapUpReasonByLocationQueuePayload": { "type": "object", "properties": { "wrapupReasons": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2" }, "description": "List of wrap-up reason IDs." }, "defaultWrapupReasonId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1dSQVBVUF9SRUFTT05fSUQvOGVmNzM4OTctMmQzNS00ZjgwLWJkOGQtYzRjNmRhNWNlZjA2", "description": "Unique wrap-up identifier." }, "wrapupTimerEnabled": { "type": "boolean", "example": true, "description": "Denotes whether the wrap-up timer is enabled." }, "wrapupTimer": { "type": "number", "example": 60, "description": "Wrap up timer value in seconds." } } }, "CreateHuntGroupObject": { "type": "object", "required": [ "name", "callPolicies", "agents", "enabled" ], "properties": { "name": { "type": "string", "example": "5558675309-Group", "description": "Unique name for the hunt group." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the hunt group. Either phone number or extension are required." }, "extension": { "type": "string", "example": "7781", "description": "Primary phone extension of the hunt group. Either phone number or extension are required." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this hunt group. Defaults to `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this hunt group. Defaults to the phone number if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the hunt group." }, "callPolicies": { "$ref": "#/components/schemas/PostHuntGroupCallPolicyObject", "description": "Policy controlling how calls are routed to agents." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PostPersonPlaceVirtualLineHuntGroupObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the hunt group is enabled." }, "huntGroupCallerIdForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "Enable the hunt group to be used as the caller ID when the agent places outgoing calls. When set to true the hunt group's caller ID will be used." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this hunt group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "GetHuntGroupCallPolicyObject": { "type": "object", "required": [ "policy", "noAnswer" ], "properties": { "policy": { "$ref": "#/components/schemas/HuntPolicySelection", "description": "Call routing policy used to dispatch calls to agents." }, "waitingEnabled": { "type": "boolean", "example": true, "description": "If `false`, then the option is treated as \"Advance when busy\". The hunt group won't ring agents when they're on a call and advances to the next agent. If a hunt group agent has call waiting enabled and the call is advanced to them, the call waits until that hunt group agent isn't busy." }, "groupBusyEnabled": { "type": "boolean", "example": true, "description": "When `true`, the hunt group busy status will be set to busy. All new calls will get busy treatment. If `busyRedirect` is enabled, the calls are routed to the destination specified in `busyRedirect`." }, "allowMembersToControlGroupBusyEnabled": { "type": "boolean", "example": true, "description": "When `true`, agents can change the hunt group busy status." }, "noAnswer": { "type": "object", "required": [ "nextAgentEnabled", "nextAgentRings", "forwardEnabled", "numberOfRings", "systemMaxNumberOfRings", "destinationVoicemailEnabled" ], "properties": { "nextAgentEnabled": { "type": "boolean", "example": true, "description": "If enabled, advance to next agent after the `nextAgentRings` has occurred." }, "nextAgentRings": { "type": "number", "example": 3, "description": "Number of rings before call will be forwarded if unanswered and `nextAgentEnabled` is true." }, "forwardEnabled": { "type": "boolean", "description": "If `true`, forwards unanswered calls to the destination after the number of rings occurs." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination if `forwardEnabled` is True." }, "numberOfRings": { "type": "number", "example": 15, "description": "Number of rings before forwarding calls if `forwardEnabled` is true." }, "systemMaxNumberOfRings": { "type": "number", "example": 15, "description": "System-wide maximum number of rings allowed for `numberOfRings` setting." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "If `destinationVoicemailEnabled` is true, enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for when the call into the hunt group is not answered." }, "busyRedirect": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, calls are diverted to a defined phone number when all agents are busy, or when the hunt group busy status is set to busy." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for busy redirect." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "The enabled or disabled state of sending diverted incoming calls to the `destination` number's voicemail if the `destination` is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for sending calls to a specified destination when all agents are busy or when the hunt group busy status is set to busy." }, "businessContinuityRedirect": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, unreachable, unanswered calls are diverted to a defined phone number. For persons with only a mobile device, calls won't be diverted if there is a network outage." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for business continuity redirect." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "The enabled or disabled state of sending diverted incoming calls to the `destination` number's voicemail if the `destination` is an internal phone number and that number has the voicemail service enabled." } }, "description": "Settings for sending calls to a specified destination if the phone is not connected to the network for any reason, such as a power outage, failed internet connection, or wiring problem." } } }, "GetHuntGroupObject": { "type": "object", "required": [ "id", "name", "enabled", "distinctiveRing", "alternateNumbers", "callPolicies", "agents" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "description": "A unique identifier for the hunt group." }, "name": { "type": "string", "example": "5558675309-Group", "description": "Unique name for the hunt group." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the hunt group is enabled." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the hunt group." }, "extension": { "type": "string", "example": "7781", "description": "Extension of the hunt group." }, "distinctiveRing": { "type": "boolean", "example": true, "description": "Whether or not the hunt group has the distinctive ring option enabled." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersWithPattern" }, "description": "The alternate numbers feature allows you to assign multiple phone numbers or extensions to a hunt group. Each number will reach the same greeting and each menu will function identically to the main number. The alternate numbers option enables you to have up to ten (10) phone numbers ring into the hunt group." }, "language": { "type": "string", "example": "English", "description": "Language for hunt group." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code for hunt group." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this hunt group. Defaults to `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this hunt group. Defaults to phone number if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the hunt group." }, "callPolicies": { "$ref": "#/components/schemas/GetHuntGroupCallPolicyObject", "description": "Policy controlling how calls are routed to agents." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/GetPersonPlaceVirtualLineHuntGroupObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "huntGroupCallerIdForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "Whether or not the hunt group can be used as the caller ID when the agent places outgoing calls." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this hunt group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "GetPersonPlaceVirtualLineHuntGroupObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of person, workspace or virtual line." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name of person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of person, workspace or virtual line." }, "phoneNumber": { "type": "string", "example": "+15555551234", "description": "Phone number of person, workspace or virtual line." }, "extension": { "type": "string", "example": "1234", "description": "Extension of person, workspace or virtual line." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341234", "description": "Routing prefix + extension of a person or workspace." }, "weight": { "type": "string", "example": "50", "description": "Weight of person, workspace or virtual line. Only applied when call policy is `WEIGHTED`." } } }, "ListHuntGroupObject": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "enabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvYUhaaFpUTjJNRzh5YjBBMk5EazBNVEk1Tnk1cGJuUXhNQzVpWTJ4a0xuZGxZbVY0TG1OdmJRPT0", "description": "A unique identifier for the hunt group." }, "name": { "type": "string", "example": "5714328359", "description": "Unique name for the hunt group." }, "locationName": { "type": "string", "example": "WXCSIVDKCPAPIC4S1", "description": "Name of the location for the hunt group." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location for hunt group." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the hunt group." }, "extension": { "type": "string", "example": "7781", "description": "Primary phone extension of the hunt group." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12347781", "description": "Routing prefix + extension of a person or workspace." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the hunt group is enabled." } } }, "ModifyHuntGroupObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the hunt group is enabled." }, "name": { "type": "string", "example": "5558675309-Group", "description": "Unique name for the hunt group." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Primary phone number of the hunt group." }, "extension": { "type": "string", "example": "7781", "description": "Primary phone extension of the hunt group." }, "distinctiveRing": { "type": "boolean", "example": true, "description": "Whether or not the hunt group has the distinctive ring option enabled." }, "alternateNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/AlternateNumbersWithPattern" }, "description": "The alternate numbers feature allows you to assign multiple phone numbers or extensions to a hunt group. Each number will reach the same greeting and each menu will function identically to the main number. The alternate numbers option enables you to have up to ten (10) phone numbers ring into the hunt group." }, "languageCode": { "type": "string", "example": "en-US", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this hunt group. Defaults to `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this hunt group. Defaults to the phone number if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "timeZone": { "type": "string", "example": "America/Chicago", "description": "Time zone for the hunt group." }, "callPolicies": { "$ref": "#/components/schemas/PostHuntGroupCallPolicyObject", "description": "Policy controlling how calls are routed to agents." }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/PostPersonPlaceVirtualLineHuntGroupObject" }, "description": "People, workspaces and virtual lines that are eligible to receive calls." }, "huntGroupCallerIdForOutgoingCallsEnabled": { "type": "boolean", "example": true, "description": "Enable the hunt group to be used as the caller ID when the agent places outgoing calls. When set to true the hunt group's caller ID will be used." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this hunt group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PostHuntGroupCallPolicyObject": { "type": "object", "required": [ "policy", "noAnswer" ], "properties": { "policy": { "$ref": "#/components/schemas/HuntPolicySelection", "description": "Call routing policy used to dispatch calls to agents." }, "waitingEnabled": { "type": "boolean", "example": true, "description": "If `false`, then the option is treated as \"Advance when busy\". The hunt group won't ring agents when they're on a call and advances to the next agent. If a hunt group agent has call waiting enabled and the call is advanced to them, the call waits until that hunt group agent isn't busy." }, "groupBusyEnabled": { "type": "boolean", "example": true, "description": "If `true`, the hunt group busy status will be set to busy. All new calls will get busy treatment. If `busyRedirect` is enabled, the calls are routed to the destination specified in `busyRedirect`." }, "allowMembersToControlGroupBusyEnabled": { "type": "boolean", "example": true, "description": "If true, agents can change the hunt group busy status." }, "noAnswer": { "type": "object", "required": [ "nextAgentEnabled", "nextAgentRings", "forwardEnabled", "numberOfRings", "destinationVoicemailEnabled" ], "properties": { "nextAgentEnabled": { "type": "boolean", "example": true, "description": "If enabled, advance to next agent after the `nextAgentRings` has occurred." }, "nextAgentRings": { "type": "number", "example": 3, "description": "Number of rings before call will be forwarded if unanswered and `nextAgentEnabled` is true." }, "forwardEnabled": { "type": "boolean", "description": "If `true`, forwards unanswered calls to the destination after the number of rings occurs." }, "numberOfRings": { "type": "number", "example": 15, "description": "Number of rings before forwarding calls if `forwardEnabled` is true." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination if `forwardEnabled` is True." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "If `forwardEnabled` is true, enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled. If `destinationVoicemailEnabled` is enabled, then *55 is added as a prefix for `destination`." } }, "description": "Settings for when the call into the hunt group is not answered." }, "busyRedirect": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, calls are diverted to a defined phone number when all agents are busy, or when the hunt group busy status is set to busy." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for busy redirect." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "The enabled or disabled state of sending diverted incoming calls to the `destination` number's voicemail if the `destination` is an internal phone number and that number has the voicemail service enabled. If `destinationVoicemailEnabled` is enabled, then *55 is added as a prefix for `destination`." } }, "description": "Settings for sending calls to a specified destination when all agents are busy or when the hunt group busy status is set to busy." }, "businessContinuityRedirect": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, unreachable, unanswered calls are diverted to a defined phone number. For persons with only a mobile device, calls won't be diverted if there is a network outage." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for business continuity redirect." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "The enabled or disabled state of sending diverted incoming calls to the `destination` number's voicemail if the `destination` is an internal phone number and that number has the voicemail service enabled. If `destinationVoicemailEnabled` is enabled, then *55 is added as a prefix for `destination`." } }, "description": "Settings for sending calls to a specified destination if the phone is not connected to the network for any reason, such as a power outage, failed internet connection, or wiring problem." } } }, "PostPersonPlaceVirtualLineHuntGroupObject": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE1NmE", "description": "ID of person, workspace or virtual line." }, "weight": { "type": "string", "example": "50", "description": "Weight of person, workspace or virtual line. Only applied when call policy is `WEIGHTED`." } } }, "HuntGroupPrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/HuntGroupPrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "HuntGroupPrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "HuntGroupAlternateAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/HuntGroupAlternateAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "HuntGroupAlternateAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "HuntGroupCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/HuntGroupCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "HuntGroupCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "OperatingModeListGetObject": { "type": "object", "required": [ "id", "name", "type", "level", "callForwarding" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "A unique identifier for the `operating mode`." }, "name": { "type": "string", "example": "Day Operating Mode", "description": "Unique name for the `operating mode`." }, "type": { "$ref": "#/components/schemas/OperatingModeScheduleTypeObject", "description": "Defines the scheduling of the `operating mode`." }, "level": { "$ref": "#/components/schemas/OrgLocLevelObject", "description": "Level at which the `operating mode` would be defined." }, "location": { "$ref": "#/components/schemas/LocationObject", "description": "Location object having a unique identifier for the location, and its name. Mandatory if level is `LOCATION`." }, "callForwarding": { "$ref": "#/components/schemas/OperatingModeCallForwarding", "description": "Call forwarding settings for an `operating mode`." } } }, "OperatingModeCallForwarding": { "type": "object", "required": [ "enabled", "destination", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Call forwarding is enabled, or disabled. `False` if the flag is not set." }, "destination": { "type": "string", "example": "+19705550006", "description": "The destination for forwarding." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "The destination voicemail enabled. `False` if the flag is not set." } } }, "OperatingModeScheduleTypeObject": { "type": "string", "enum": [ "SAME_HOURS_DAILY", "DIFFERENT_HOURS_DAILY", "HOLIDAY", "NONE" ], "description": " * `SAME_HOURS_DAILY` - Specifies the `operating mode` is active during the same hours daily (i.e., same schedule for Monday to Friday, and Saturday to Sunday).\n * `DIFFERENT_HOURS_DAILY` - Specifies the `operating mode` is active during different hours for different days of the week.\n * `HOLIDAY` - Specifies the `operating mode` is active during holidays with their own days, and recurrence.\n * `NONE` - Specifies the `operating mode` doesn't have any schedules defined.\n" }, "OrgLocLevelObject": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": " * `ORGANIZATION` - Specifies this `operating mode` is configured across the organization.\n * `LOCATION` - Specifies this `operating mode` is configured across a location.\n" }, "OperatingModeGetObject": { "type": "object", "required": [ "id", "name", "type", "level", "callForwarding" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "A unique identifier for the `operating mode`." }, "name": { "type": "string", "example": "Day Operating Mode", "description": "Unique name for the `operating mode`." }, "type": { "$ref": "#/components/schemas/OperatingModeScheduleTypeObject", "description": "Defines the scheduling of the `operating mode`." }, "level": { "$ref": "#/components/schemas/OrgLocLevelObject", "description": "Level at which the `operating mode` would be defined." }, "location": { "$ref": "#/components/schemas/LocationObject", "description": "Location object having a unique identifier for the location, and its name. Mandatory if level is `LOCATION`." }, "sameHoursDaily": { "$ref": "#/components/schemas/OperatingModeSameHoursDailyScheduleObject", "description": "`Operating mode` schedule for same hours daily. Present if type is `SAME_HOURS_DAILY`." }, "differentHoursDaily": { "$ref": "#/components/schemas/OperatingModeDifferentHoursDailyScheduleObject", "description": "`Operating mode` schedule for different hours daily. Present if type is `DIFFERENT_HOURS_DAILY`." }, "holidays": { "type": "array", "items": { "$ref": "#/components/schemas/OperatingModeHolidayGetObject" }, "description": "`Operating mode` schedule for holidays. Present if type is `HOLIDAY`." }, "callForwarding": { "$ref": "#/components/schemas/OperatingModeCallForwarding", "description": "Call forwarding settings for an `operating mode`." } } }, "OperatingModeSameHoursDailyScheduleObject": { "type": "object", "required": [ "mondayToFriday", "saturdayToSunday" ], "properties": { "mondayToFriday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Monday to Friday." }, "saturdayToSunday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Saturday to Sunday." } } }, "OperatingModeDayScheduleObject": { "type": "object", "required": [ "enabled", "allDayEnabled", "startTime", "endTime" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Specifies if the `operating mode` schedule for the specified weekday(s) is enabled, or not. `False` if the flag is not set." }, "allDayEnabled": { "type": "boolean", "description": "Specifies if the `operating mode` is enabled for the entire day. `False` if the flag is not set." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time for the `operating mode`." }, "endTime": { "type": "string", "example": "17:00", "description": "End time for the `operating mode`." } } }, "OperatingModeDifferentHoursDailyScheduleObject": { "type": "object", "required": [ "sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday" ], "properties": { "sunday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Sunday." }, "monday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Monday." }, "tuesday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Tuesday." }, "wednesday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Wednesday." }, "thursday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Thursday." }, "friday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Friday." }, "saturday": { "$ref": "#/components/schemas/OperatingModeDayScheduleObject", "description": "`Operating mode` schedule for Saturday." } } }, "OperatingModeHolidayGetObject": { "type": "object", "required": [ "id", "name", "allDayEnabled", "startDate", "endDate" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTIwOQ", "description": "A unique identifier for the holiday." }, "name": { "type": "string", "example": "Christmas", "description": "Name of the holiday." }, "allDayEnabled": { "type": "boolean", "example": true, "description": "Specifies if the `operating mode holiday` schedule event is enabled for the entire day. `False` if the flag is not set." }, "startDate": { "type": "string", "example": "2024-12-25", "description": "Start date of the `operating mode holiday`." }, "endDate": { "type": "string", "example": "2024-12-26", "description": "End date of the `operating mode holiday`." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "endTime": { "type": "string", "example": "17:00", "description": "End time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "recurrence": { "$ref": "#/components/schemas/OperatingModeRecurrenceObject", "description": "Recurrence configuration for the `operating mode holiday`." } } }, "OperatingModeRecurrenceObject": { "type": "object", "properties": { "recurYearlyByDate": { "$ref": "#/components/schemas/RecurYearlyByDateObject", "description": "Recurrence definition yearly by date." }, "recurYearlyByDay": { "$ref": "#/components/schemas/RecurYearlyByDayObject", "description": "Recurrence definition yearly by day." } } }, "MonthObject": { "type": "string", "enum": [ "`JANUARY`: Schedule the event in January.", "`FEBRUARY`: Schedule the event in February.", "`MARCH`: Schedule the event in March.", "`APRIL`: Schedule the event in April.", "`MAY`: Schedule the event in May.", "`JUNE`: Schedule the event in June.", "`JULY`: Schedule the event in July.", "`AUGUST`: Schedule the event in August.", "`SEPTEMBER`: Schedule the event in September.", "`OCTOBER`: Schedule the event in October.", "`NOVEMBER`: Schedule the event in November.", "`DECEMBER`: Schedule the event in December." ] }, "OperatingModePostObject": { "type": "object", "required": [ "name", "type", "level", "callForwarding" ], "properties": { "name": { "type": "string", "example": "Day Operating Mode", "description": "Unique name for the `operating mode`." }, "type": { "$ref": "#/components/schemas/OperatingModeScheduleTypeObject", "description": "Defines the scheduling of the `operating mode`." }, "level": { "$ref": "#/components/schemas/OrgLocLevelObject", "description": "Level at which the `operating mode` would be defined." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Unique identifier of the location. Mandatory if level is `LOCATION`." }, "sameHoursDaily": { "$ref": "#/components/schemas/OperatingModeSameHoursDailyScheduleObject", "description": "`Operating mode` schedule for same hours daily. Mandatory if type is `SAME_HOURS_DAILY`." }, "differentHoursDaily": { "$ref": "#/components/schemas/OperatingModeDifferentHoursDailyScheduleObject", "description": "`Operating mode` schedule for different hours daily. Mandatory if type is `DIFFERENT_HOURS_DAILY`." }, "holidays": { "type": "array", "items": { "$ref": "#/components/schemas/OperatingModeHolidayObject" }, "description": "`Operating mode` holidays. Mandatory if type is `HOLIDAY`." }, "callForwarding": { "$ref": "#/components/schemas/OperatingModeCallForwarding", "description": "Call forwarding settings for an `operating mode`." } } }, "OperatingModeHolidayObject": { "type": "object", "required": [ "name", "allDayEnabled", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "Christmas", "description": "Name of the holiday." }, "allDayEnabled": { "type": "boolean", "example": true, "description": "Specifies if the `operating mode holiday` schedule event is enabled for the entire day. `False` if the flag is not set." }, "startDate": { "type": "string", "example": "2024-12-25", "description": "Start date of the `operating mode holiday`." }, "endDate": { "type": "string", "example": "2024-12-26", "description": "End date of the `operating mode holiday`." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "endTime": { "type": "string", "example": "17:00", "description": "End time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "recurrence": { "$ref": "#/components/schemas/OperatingModeRecurrenceObject", "description": "Recurrence configuration for the `operating mode holiday`." } } }, "OperatingModePatchObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Day Operating Mode Updated", "description": "New unique name for the `operating mode`." }, "sameHoursDaily": { "$ref": "#/components/schemas/OperatingModeSameHoursDailyScheduleObject", "description": "Updated schedule for same hours daily." }, "differentHoursDaily": { "$ref": "#/components/schemas/OperatingModeDifferentHoursDailyScheduleObject", "description": "Updated schedule for different hours daily." }, "holidays": { "type": "array", "items": { "$ref": "#/components/schemas/OperatingModeHolidayObject" }, "description": "Updated holidays. This will replace the existing holidays." }, "callForwarding": { "$ref": "#/components/schemas/OperatingModeCallForwarding", "description": "Updated call forwarding settings for an `operating mode`." } } }, "OperatingModeHolidayPostRequestObject": { "type": "object", "required": [ "name", "allDayEnabled", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "Christmas", "description": "Name of the holiday." }, "allDayEnabled": { "type": "boolean", "example": true, "description": "Specifies if the `operating mode holiday` schedule event is enabled for the entire day. `False` if the flag is not set." }, "startDate": { "type": "string", "example": "2024-12-25", "description": "Start date of the `operating mode holiday`." }, "endDate": { "type": "string", "example": "2024-12-26", "description": "End date of the `operating mode holiday`." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "endTime": { "type": "string", "example": "17:00", "description": "End time for the `operating mode holiday`. Mandatory if `allDayEnabled` is false." }, "recurrence": { "$ref": "#/components/schemas/OperatingModeRecurrenceObject", "description": "Recurrence configuration for the `operating mode holiday`." } } }, "OperatingModeHolidayPatchObject": { "type": "object", "properties": { "name": { "type": "string", "example": "Christmas", "description": "Name of the holiday." }, "allDayEnabled": { "type": "boolean", "example": true, "description": "Specifies if the `operating mode holiday` schedule event is enabled for the entire day. If `startTime`, and `endTime` are provided, this field is ignored." }, "startDate": { "type": "string", "example": "2024-12-25", "description": "Start date of the `operating mode holiday`." }, "endDate": { "type": "string", "example": "2024-12-26", "description": "End date of the `operating mode holiday`." }, "startTime": { "type": "string", "example": "09:00", "description": "Start time for the `operating mode holiday`. Mandatory if `allDayEnabled` is not set." }, "endTime": { "type": "string", "example": "17:00", "description": "End time for the `operating mode holiday`. Mandatory if `allDayEnabled` is not set." }, "recurrence": { "$ref": "#/components/schemas/OperatingModeRecurrenceObject", "description": "Recurrence configuration for the `operating mode holiday`." } } }, "AvailableOperatingModesObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFL2JiOTc1OTcxLTBjZWYtNDdhNi05Yzc5LTliZWFjY2IwYjg4Mg", "description": "A unique identifier for the `operating mode`." }, "name": { "type": "string", "example": "Day Operating Mode", "description": "Unique name for the `operating mode`." } } }, "OperatingModeCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/OperatingModeCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "OperatingModeCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present only when the owner `type` is not `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "GetPagingGroupAgentObject": { "type": "object", "required": [ "id", "firstName", "lastName", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "description": "Agents ID." }, "firstName": { "type": "string", "example": "John", "description": "Agent's first name. Minimum length is 1. Maximum length is 64." }, "lastName": { "type": "string", "example": "Doe", "description": "Agent's last name. Minimum length is 1. Maximum length is 64." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": "Type of the person, workspace or virtual line.\n * `PEOPLE` - Indicates that this object is a person.\n * `PLACE` - Indicates that this object is a workspace, formerly known as a place.\n * `VIRTUAL_LINE` - Indicates that this object is a virtual line.\n" }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Agent's phone number. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "7781", "description": "Agent's extension. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12347781", "description": "Routing prefix + extension of a person or workspace." } } }, "GetPagingGroupObject": { "type": "object", "required": [ "id", "enabled", "name", "language", "languageCode", "firstName", "lastName", "originatorCallerIdEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "description": "A unique identifier for the paging group." }, "enabled": { "type": "boolean", "example": true, "description": "Whether or not the paging group is enabled." }, "name": { "type": "string", "example": "PagingGroup-1", "description": "Unique name for the paging group. Minimum length is 1. Maximum length is 30." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Paging group phone number. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "7781", "description": "Paging group extension. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "tollFreeNumber": { "type": "boolean", "description": "Flag to indicate toll free number." }, "language": { "type": "string", "example": "English", "description": "Paging language. Minimum length is 1. Maximum length is 40." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code." }, "firstName": { "type": "string", "example": "Paging", "description": "First name that displays when a group page is performed. Minimum length is 1. Maximum length is 64. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Group", "description": "Last name that displays when a group page is performed. Minimum length is 1. Maximum length is 64. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "originatorCallerIdEnabled": { "type": "boolean", "example": true, "description": "Determines what is shown on target users caller ID when a group page is performed. If true shows page originator ID." }, "originators": { "type": "array", "items": { "$ref": "#/components/schemas/GetPagingGroupAgentObject" }, "description": "An array of people, workspaces and virtual lines ID's who may originate pages to this paging group." }, "targets": { "type": "array", "items": { "$ref": "#/components/schemas/GetPagingGroupAgentObject" }, "description": "An array of people, workspaces and virtual lines ID's that are added to paging group as paging call targets." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this Group Paging." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "ListPagingGroupObject": { "type": "object", "required": [ "id", "name", "locationName", "locationId", "tollFreeNumber" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BBR0lOR19HUk9VUC9hSFpoWlROMk1HOHliMEEyTkRrME1USTVOeTVwYm5ReE1DNWlZMnhrTG5kbFltVjRMbU52YlE", "description": "A unique identifier for the paging group." }, "name": { "type": "string", "example": "PagingGroup-1", "description": "Unique name for the paging group. Minimum length is 1. Maximum length is 30." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Paging group phone number. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "7781", "description": "Paging group extension. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12347781", "description": "Routing prefix + extension of a person or workspace." }, "locationName": { "type": "string", "example": "Alaska", "description": "Name of location for paging group." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "Id of location for paging group." }, "tollFreeNumber": { "type": "boolean", "description": "Flag to indicate toll free number." } } }, "PostPagingGroupObject": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "PagingGroup-1", "description": "Unique name for the paging group. Minimum length is 1. Maximum length is 30." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Paging group phone number. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "7781", "description": "Paging group extension. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code." }, "firstName": { "type": "string", "example": "Paging", "description": "First name that displays when a group page is performed. Minimum length is 1. Maximum length is 64. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Group", "description": "Last name that displays when a group page is performed. Minimum length is 1. Maximum length is 64. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "originatorCallerIdEnabled": { "type": "boolean", "example": true, "description": "Determines what is shown on target users caller ID when a group page is performed. If true shows page originator ID." }, "originators": { "type": "array", "items": { "type": "string" }, "description": "An array of people, workspace, and virtual lines IDs who can originate pages to this paging group." }, "targets": { "type": "array", "items": { "type": "string" }, "description": "An array of people, workspaces and virtual lines IDs will add to a paging group as paging call targets." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this paging group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "UpdatePagingGroupObject": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the paging group is enabled." }, "name": { "type": "string", "example": "CallQueue-1", "description": "Unique name for the paging group. Minimum length is 1. Maximum length is 30." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Paging group phone number. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "7781", "description": "Paging group extension. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code." }, "firstName": { "type": "string", "example": "Hakim", "description": "First name to be shown when calls are forwarded out of this paging group. Defaults to \".\". This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name to be shown when calls are forwarded out of this paging group. Defaults to the phone number if set, otherwise defaults to call group name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "originatorCallerIdEnabled": { "type": "boolean", "example": true, "description": "Determines what is shown on target users caller ID when a group page is performed. If true shows page originator ID." }, "originators": { "type": "array", "items": { "type": "string" }, "description": "An array of people and/or workspaces, who may originate pages to this paging group." }, "targets": { "type": "array", "items": { "type": "string" }, "description": "People, including workspaces, that are added to paging group as paging call targets." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this paging group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PagingGroupPrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PagingGroupPrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PagingGroupPrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "SingleNumberReachPrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SingleNumberReachPrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "SingleNumberReachPrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "PostSingleNumberReachObject": { "type": "object", "required": [ "phoneNumber", "enabled", "name" ], "properties": { "phoneNumber": { "type": "string", "example": "+17011558169", "description": "Personal phone number used as single Number Reach." }, "enabled": { "type": "boolean", "example": true, "description": "A flag to enable or disable single Number Reach." }, "name": { "type": "string", "example": "myNumber", "description": "Name of the single number reach phone number entry." }, "doNotForwardCallsEnabled": { "type": "boolean", "description": "If enabled, the call forwarding settings of provided phone Number will not be applied." }, "answerConfirmationEnabled": { "type": "boolean", "description": "If enabled, the call recepient will be prompted to press a key before being connected." } } }, "SingleNumberReachPatchRequestObject": { "type": "object", "properties": { "alertAllNumbersForClickToDialCallsEnabled": { "type": "boolean", "description": "Flag to enable alerting single number reach numbers for click to dial calls." } } }, "SingleNumberReachNumberPatchRequestObject": { "type": "object", "required": [ "phoneNumber", "enabled", "name" ], "properties": { "phoneNumber": { "type": "string", "example": "+17011558169", "description": "Personal phone number used as single Number Reach." }, "enabled": { "type": "boolean", "example": true, "description": "A flag to enable or disable single Number Reach phone number." }, "name": { "type": "string", "example": "myNumber", "description": "Name of the single number reach phone number entry." }, "doNotForwardCallsEnabled": { "type": "boolean", "description": "If enabled, the call forwarding settings of provided phone Number will not be applied." }, "answerConfirmationEnabled": { "type": "boolean", "description": "If enabled, the call recepient will be prompted to press a key before being connected." } } }, "PostVirtualExtensionObject": { "type": "object", "required": [ "displayName", "phoneNumber", "extension" ], "properties": { "firstName": { "type": "string", "example": "John", "description": "First name of the person at the virtual extension." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of the person at the virtual extension." }, "displayName": { "type": "string", "example": "John Smith", "description": "Display name of the person at the virtual extension." }, "phoneNumber": { "type": "string", "example": "+17011558169", "description": "Directory number of the virtual extension." }, "extension": { "type": "string", "example": "9133", "description": "Extension of the virtual extension." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "ID of the location to which the virtual extension is assigned. The location ID is a unique identifier for the location in Webex Calling." } } }, "GetVirtualExtensionObject": { "type": "object", "required": [ "id", "extension", "esn", "phoneNumber", "level", "displayName" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "description": "ID of the virtual extension." }, "extension": { "type": "string", "example": "5001", "description": "Extension of the virtual extension." }, "routingPrefix": { "type": "string", "example": "4321", "description": "Routing prefix of the virtual extension's location." }, "esn": { "type": "string", "example": "43215001", "description": "ESN of the virtual extension." }, "phoneNumber": { "type": "string", "example": "+6692515287", "description": "Directory number of the virtual extension." }, "firstName": { "type": "string", "example": "John", "description": "First name of the person at the virtual extension." }, "lastName": { "type": "string", "example": "John", "description": "Last name of the person at the virtual extension." }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "Level of the virtual extension. It can be either `ORGANIZATION` or `LOCATION`.\n * `ORGANIZATION` - Organization level.\n * `LOCATION` - Location level.\n" }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2QzYjA4MGMwLWU1MjctNDQ1Zi04NTk5LTU5OWJmNzQ2MjViNg", "description": "ID of the location to which the virtual extension is assigned. The location ID is a unique identifier for the location in Webex Calling." }, "locationName": { "type": "string", "example": "Test1", "description": "Name of the location to which the virtual extension is assigned." }, "displayName": { "type": "string", "example": "John Smith", "description": "Display name of the person at the virtual extension." } } }, "GetVirtualExtensionListObject": { "type": "object", "required": [ "virtualExtensions" ], "properties": { "virtualExtensions": { "type": "array", "items": { "$ref": "#/components/schemas/GetVirtualExtensionObject" }, "description": "List of virtual extensions." } } }, "VirtualExtensionPatchRequestObject": { "type": "object", "properties": { "firstName": { "type": "string", "example": "John", "description": "First name of the person at the virtual extension." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name of the person at the virtual extension." }, "displayName": { "type": "string", "example": "John Smith", "description": "Display name of the person at the virtual extension." }, "phoneNumber": { "type": "string", "example": "+17011558169", "description": "Directory number of the virtual extension." }, "extension": { "type": "string", "example": "9133", "description": "Extension of the virtual extension." } } }, "GetVirtualExtensionSettingsObject": { "type": "object", "required": [ "mode" ], "properties": { "mode": { "type": "string", "enum": [ "STANDARD" ], "description": "Mode of the virtual extension. It can be either `STANDARD` or `ENHANCED`.\n\n + `STANDARD` - Standard virtual extension mode in which virtual extensions must be associated with a valid E.164 number, but this requires no enhanced signaling support from the PSTN provider.\n + `ENHANCED` - Enhanced signaling mode: only a few PSTN providers support this special network signaling extension." } } }, "VirtualExtensionSettingsPatchRequestObject": { "type": "object", "required": [ "mode" ], "properties": { "mode": { "type": "string", "enum": [ "STANDARD" ], "description": "Mode of the virtual extension. It can be either `STANDARD` or `ENHANCED`.\n\n + `STANDARD` - Standard Virtual extension mode in which virtual extensions must be associated with a valid E.164 number, but this requires no enhanced signaling support from the PSTN provider.\n + `ENHANCED` - Enhanced signaling mode: only a few PSTN providers support this special network signaling extension." } } }, "PostValidateExternalPhoneNumberObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "type": "string" }, "description": "List of external phone numbers to be validated." } } }, "PostVirtualExtensionRangeObject": { "type": "object", "required": [ "name", "prefix" ], "properties": { "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name of the virtual extension range. This is a unique name for the virtual extension range." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range. Prefix works in Standard and Enhanced modes. In Standard mode, it must be E.164 and unique. In Enhanced mode, it can be E.164 or non-E.164." }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of virtual extension patterns. You can add up to 100 patterns at a time. Extension patterns can include one or more right-justified wildcards “X” matching any digit." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "ID of the location to which the virtual extension range is assigned. The location ID is a unique identifier for the location in Webex Calling. This is set only when location level virtual extension range is added." } } }, "GetVirtualExtensionRangeDetailsObject": { "type": "object", "required": [ "id", "name", "prefix", "patterns" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OX1JBTkdFLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw", "description": "ID of the virtual extension range." }, "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name of the virtual extension range. This is a unique name for the virtual extension range." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range. Prefix works in Standard and Enhanced modes. In Standard mode, it must be E.164 and it must be unique. In Enhanced mode, it can be E.164 or non-E.164." }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of virtual extension patterns. The maximum number of patterns supported at a time is 100. Extension patterns can include one or more right-justified wildcards “X” matching any digit." }, "locationName": { "type": "string", "example": "Sales", "description": "Name of the location to which the virtual extension range is assigned. This is set only for virtual extension ranges at the location level." } } }, "GetVirtualExtensionRangeListObject": { "type": "object", "required": [ "id", "name", "prefix", "level" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OX1JBTkdFLzk0OThkMTE0LWMwMGMtNGZkNC1iMTk5LWU4ODQ2N2UwNzVkNw", "description": "ID of the virtual extension range." }, "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name of the virtual extension range. This is a unique name for the virtual extension range." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range. Prefix works in Standard and Enhanced modes. In Standard mode, it must be E.164 and it must be unique. In Enhanced mode, it can be E.164 or non-E.164." }, "level": { "type": "string", "enum": [ "ORGANIZATION", "LOCATION" ], "description": "Level of the virtual extension range. It can be either `ORGANIZATION` or `LOCATION`.\n * `ORGANIZATION` - Organization level.\n * `LOCATION` - Location level.\n" }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "ID of the location to which the virtual extension range is assigned. This is set only for virtual extension ranges at the location level." }, "locationName": { "type": "string", "example": "Sales", "description": "Name of the location to which the virtual extension range is assigned. This is set only for virtual extension ranges at the location level" } } }, "PutVirtualExtensionRangeObject": { "type": "object", "properties": { "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name of the virtual extension range. This is a unique name for the virtual extension range." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range." }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "The pattern to be added, replaced, or removed from a virtual extension range. The maximum number of patterns supported at a time is 100." }, "action": { "type": "string", "enum": [ "ADD", "REMOVE", "REPLACE" ], "description": "Action to be performed on the virtual extension range. It can be either `ADD`, `REMOVE` or `REPLACE`. This is mandatory when `patterns` are provided.\n * `ADD` - Add new patterns to the existing virtual extension range.\n * `REMOVE` - Remove existing patterns from the virtual extension range.\n * `REPLACE` - Replace existing patterns with new patterns in the virtual extension range.\n" } } }, "ValidateVirtualExtensionRangeRequestObject": { "type": "object", "properties": { "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "ID of the location to which the virtual extension range is assigned. The location ID is a unique identifier for the location in Webex Calling." }, "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name of the virtual extension range. This is a unique name for the virtual extension range." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range." }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of virtual extension patterns. The maximum number of patterns supported at a time is 100." }, "rangeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfRVhURU5TSU9OLzZkNmYwNmVlLTdkNDEtNDQ4Yy05MjgwLWZkM2ZiMDhmOGUyMA", "description": "ID of the virtual extension range. This is mandatory when validating for an existing virtual extension range, not present when validating a new virtual extension range before adding it." } } }, "ValidateVirtualExtensionRangeResponseObject": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "string", "enum": [ "OK", "ERRORS" ], "description": "Virtual extension range validation status.\n * `OK` - Validation is successful.\n * `ERRORS` - Validation failed.\n" }, "virtualExtensionRangeValidationStatus": { "type": "array", "items": { "$ref": "#/components/schemas/virtualExtensionRangeValidationStatusObject" }, "description": "Array of virtual extension range validation status. This is set only when the `status` is `ERRORS`." } } }, "virtualExtensionRangeValidationStatusObject": { "type": "object", "required": [ "errorCode", "message", "status" ], "properties": { "name": { "type": "string", "example": "SalesVirtualExtensionRange", "description": "Name used for virtual extension range validation." }, "prefix": { "type": "string", "example": "+1234", "description": "Prefix used for a virtual extension range validation." }, "pattern": { "type": "string", "description": "Pattern used for a virtual extension range validation." }, "errorCode": { "type": "string", "example": "27850", "description": "Error code for the virtual extension range validation." }, "message": { "type": "string", "example": "[Error 27850] Virtual Extension Range already exists with name: SalesVirtualExtensionRange", "description": "Error message for the virtual extension range validation." }, "status": { "$ref": "#/components/schemas/VirtualExtensionRangeValidationStatusEnum", "description": "Virtual extension range validation status." } } }, "VirtualExtensionRangeValidationStatusEnum": { "type": "string", "enum": [ "VALID", "DUPLICATE", "DUPLICATE_IN_LIST", "INVALID", "LIMIT_EXCEEDED" ], "description": " * `VALID` - Validation is successful.\n * `DUPLICATE` - Duplicate patterns for virtual extension range.\n * `DUPLICATE_IN_LIST` - Duplicate routing number in the pattern list.\n * `INVALID` - Invalid prefix length.\n * `LIMIT_EXCEEDED` - Exceeding pattern limit of 100 in the request.\n" }, "LocationAvailableChargeNumberListGetObject": { "type": "object", "example": { "phoneNumbers": [ { "phoneNumber": "+12056852221", "state": "ACTIVE", "isMainNumber": false, "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Alex", "lastName": "test_16", "displayName": "Alex test_16" } } ] }, "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/LocationAvailableChargeNumberObject" }, "description": "Array of phone numbers." } } }, "LocationAvailableChargeNumberObject": { "type": "object", "description": "A phone number that is available to be assigned as the location's charge number.", "example": { "phoneNumber": "+12056852221", "state": "ACTIVE", "isMainNumber": false, "tollFreeNumber": false, "isServiceNumber": false, "owner": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "type": "PEOPLE", "firstName": "Alex", "lastName": "test_16", "displayName": "Alex test_16" } }, "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE" }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "ArrayOfExtensionsObject": { "type": "object", "required": [ "extensions" ], "properties": { "extensions": { "type": "array", "items": { "type": "string" }, "description": "Array of extensions that will be validated." } } }, "CallBackEffectiveLevel": { "type": "string", "enum": [ "LOCATION_NUMBER", "LOCATION_MEMBER_NUMBER", "NONE" ], "description": " * `LOCATION_NUMBER` - Location TN.\n * `LOCATION_MEMBER_NUMBER` - Assigned number of a user, workspace, virtual line or hunt group in the location.\n * `NONE` - When no other option is selected.\n" }, "CallBackMemberType": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE", "HUNT_GROUP" ], "description": " * `PEOPLE` - Associated member is a person.\n * `PLACE` - Associated member is a workspace.\n * `VIRTUAL_LINE` - Associated member is a virtual line.\n * `HUNT_GROUP` - Associated member is a hunt group.\n" }, "CallBackQuality": { "type": "string", "enum": [ "RECOMMENDED", "NOT_RECOMMENDED", "INVALID" ], "description": " * `RECOMMENDED` - An activated number, associated with a User or Workspace.\n * `NOT_RECOMMENDED` - An activated number, associated with anything else, like Auto Attendant or Hunt Group.\n * `INVALID` - An inactive or non-existent number.\n" }, "CallBackSelected": { "type": "string", "enum": [ "LOCATION_NUMBER", "LOCATION_MEMBER_NUMBER" ], "description": " * `LOCATION_NUMBER` - Location TN.\n * `LOCATION_MEMBER_NUMBER` - Assigned number of a user, workspace, virtual line or hunt group in the location.\n" }, "ExtensionStatusObject": { "type": "object", "required": [ "state" ], "properties": { "extension": { "type": "string", "example": "407721", "description": "Unique extension which will be validated at the location level." }, "state": { "type": "string", "enum": [ "VALID", "DUPLICATE", "DUPLICATE_IN_LIST", "INVALID" ], "description": "State of the extension after it was validated.\n * `VALID` - Extension is valid.\n * `DUPLICATE` - Extension already assigned to another group.\n * `DUPLICATE_IN_LIST` - Extension already exists in the request body and was already verified.\n * `INVALID` - Extension is invalid.\n" }, "errorCode": { "type": "number", "example": 9495, "description": "Error code of the state in case extension is not valid." }, "message": { "type": "string", "example": "[Error 9495] The extension is not available. It is already assigned as a Call Park Extension: 407721.", "description": "Message assigned to the error code." } } }, "GetLocationCallBackNumberObject": { "type": "object", "required": [ "locationInfo", "locationMemberInfo", "selected", "elinExpiryTimeMinutes" ], "properties": { "locationInfo": { "type": "object", "required": [ "effectiveValue", "quality" ], "properties": { "phoneNumber": { "type": "string", "example": "+12145551767", "description": "The location DN." }, "name": { "type": "string", "example": "CPAPI_Dev_Test_Location_DND", "description": "The name of the location." }, "effectiveLevel": { "$ref": "#/components/schemas/CallBackEffectiveLevel", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "+12145551767", "description": "Location calling line ID (CLID) number. Avaliable only when number is present and quality would be invalid." }, "quality": { "$ref": "#/components/schemas/CallBackQuality", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to this location." }, "locationMemberInfo": { "type": "object", "required": [ "effectiveValue", "quality" ], "properties": { "phoneNumber": { "type": "string", "example": "+12145551767", "description": "The member DN." }, "firstName": { "type": "string", "example": "Jim", "description": "The member first name." }, "lastName": { "type": "string", "example": "Grey", "description": "The member last name. Always contains `.` if the member is a place." }, "memberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MmQ3YTY3MS00YmVlLTQ2MDItOGVkOC1jOTFmNjU5NjcxZGI", "description": "Member ID of user/place/virtual line/hunt group within the location." }, "memberType": { "$ref": "#/components/schemas/CallBackMemberType", "description": "Member Type." }, "effectiveLevel": { "$ref": "#/components/schemas/CallBackEffectiveLevel", "description": "The source from which the emergency calling line ID (CLID) is selected for an actual emergency call, applying fallback rules as necessary." }, "effectiveValue": { "type": "string", "example": "+12145551767", "description": "Location CLID number. Avaliable only when number is present and quality would be invalid." }, "quality": { "$ref": "#/components/schemas/CallBackQuality", "description": "Used to represent whether a number is a recommended ECBN." } }, "description": "Data relevant to the user/place/virtual line/hunt group (member) selected for ECBN." }, "selected": { "$ref": "#/components/schemas/CallBackSelected", "description": "Selected number type to configure emergency call back." }, "elinExpiryTimeMinutes": { "type": "integer", "example": 120, "description": "ELIN (Emergency Location Identification Number) provides location-specific callback information to emergency responders. This field indicates the time in minutes that the ELIN association remains active after being established. The default value is 60 minutes, and the valid values range from 10 to 1440 minutes." } } }, "GetPrivateNetworkConnectObject": { "type": "object", "required": [ "networkConnectionType" ], "properties": { "networkConnectionType": { "type": "string", "enum": [ "PUBLIC_INTERNET", "PRIVATE_NETWORK" ], "description": "Network Connection Type for the location.\n * `PUBLIC_INTERNET` - Use public internet for the location's connection type.\n * `PRIVATE_NETWORK` - Use private network connect for the location's connection type.\n" } } }, "GetTelephonyLocationObject": { "type": "object", "required": [ "id", "name", "announcementLanguage", "callingLineId", "connection", "externalCallerIdName", "userLimit", "outsideDialDigit", "routingPrefix", "defaultDomain" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfRk9SV0FSRElOR19TRUxFQ1RJVkVfUlVMRS9kR1Z6ZEZKMWJHVTA", "description": "A unique identifier for the location." }, "name": { "type": "string", "example": "'Denver'", "description": "The name of the location." }, "announcementLanguage": { "type": "string", "example": "'fr_fr'", "description": "Location's phone announcement language." }, "callingLineId": { "type": "object", "required": [ "name", "phoneNumber" ], "properties": { "name": { "type": "string", "example": "'Denver Incoming'", "description": "Group calling line ID name. By default the Org name." }, "phoneNumber": { "type": "string", "example": "+12145555698", "description": "Directory Number / Main number in E.164 Format." } }, "description": "Location calling line information." }, "connection": { "type": "object", "required": [ "type", "id" ], "properties": { "type": { "$ref": "#/components/schemas/RouteType", "description": "Webex Calling location only suppports `TRUNK` and `ROUTE_GROUP` connection type." }, "id": { "type": "string", "example": "'Y2lzY29zcGFyazovL3VzL1RSVU5LL2M1MGIxZjY2LTRjODMtNDAzNy04NjM1LTg2ZjlkM2VkZDQ5MQ'", "description": "A unique identifier of route type." } }, "description": "Connection details are only returned for local PSTN types of `TRUNK` or `ROUTE_GROUP`." }, "subscriptionId": { "type": "string", "example": "'trial'", "description": "PSTN connection ID given for locations with a PSTN subscription." }, "externalCallerIdName": { "type": "string", "example": "'Big Corp Denver'", "description": "External Caller ID Name value. Unicode characters." }, "userLimit": { "type": "number", "example": 500000, "description": "Limit on the number of people at the location. Read-Only." }, "pAccessNetworkInfo": { "type": "string", "example": "'Rcdn'", "description": "Emergency Location Identifier for a location. Set this field to provide the SIP access network information to the provider which will be used to populate the SIP P-Access-Network-Info header. This is helpful to establish the location of a device when you make an emergency call." }, "outsideDialDigit": { "type": "string", "example": "'Rcdn'", "description": "Must dial to reach an outside line, default is None." }, "enforceOutsideDialDigit": { "type": "boolean", "example": true, "description": "True when enforcing outside dial digit at location level to make PSTN calls." }, "routingPrefix": { "type": "string", "example": "'2'", "description": "Must dial a prefix when calling between locations having same extension within same location." }, "defaultDomain": { "type": "string", "example": "'98079822.int10.bcld.webex.com'", "description": "IP Address, hostname, or domain. Read-Only." }, "chargeNumber": { "type": "string", "example": "+14158952369", "description": "Chargeable number for the line placing the call. When set and useChargeNumberForPChargeInfo is true, all PSTN calls placed from this location will include a P-Charge-Info header with this specified number in the SIP INVITE." }, "useChargeNumberForPChargeInfo": { "type": "boolean", "example": true, "description": "Indicates whether the location's chargeNumber (if set) is enabled for use as the P-Charge-Info header in the SIP INVITE for all PSTN calls placed from this location. The field is returned as true if the location's PSTN allows use of the chargeNumber." } } }, "ListLocationObject": { "type": "object", "required": [ "id", "name", "callingLineId", "e911SetupRequired" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljYTNhZmQ3LTE5MjYtNGQ0ZS05ZDA3LTk5ZDJjMGU4OGFhMA", "description": "A unique identifier for the location." }, "name": { "type": "string", "example": "'Denver'", "description": "The name of the location." }, "outsideDialDigit": { "type": "string", "example": "'12'", "description": "Must dial to reach an outside line, default is None." }, "enforceOutsideDialDigit": { "type": "boolean", "example": true, "description": "True when enforcing outside dial digit at location level to make PSTN calls." }, "routingPrefix": { "type": "string", "example": "'2'", "description": "Must dial a prefix when calling between locations having the same extension within the same location." }, "callingLineId": { "type": "object", "required": [ "phoneNumber" ], "properties": { "name": { "type": "string", "example": "'Denver Incoming'", "description": "Group calling line ID name. By default the Org name." }, "phoneNumber": { "type": "string", "example": "+12145555698", "description": "Directory Number / Main number in E.164 Format." } }, "description": "Location calling line information." }, "e911SetupRequired": { "type": "boolean", "example": true, "description": "True if E911 setup is required." } } }, "LocationCallingResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljYTNhZmQ3LTE5MjYtNGQ0ZS05ZDA3LTk5ZDJjMGU4OGFhMA", "description": "A unique identifier for the location." } } }, "PostLocationAnnouncementLanguageObject": { "type": "object", "required": [ "announcementLanguageCode" ], "properties": { "agentEnabled": { "type": "boolean", "description": "Set to `true` to change announcement language for existing people and workspaces." }, "serviceEnabled": { "type": "boolean", "description": "Set to `true` to change announcement language for existing feature configurations." }, "announcementLanguageCode": { "type": "string", "example": "en_us", "description": "Language code." } } }, "PostLocationCallingRequest": { "type": "object", "required": [ "id", "name", "timeZone", "preferredLanguage", "announcementLanguage", "address" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzljYTNhZmQ3LTE5MjYtNGQ0ZS05ZDA3LTk5ZDJjMGU4OGFhMA", "description": "A unique identifier for the location." }, "name": { "type": "string", "example": "'Denver'", "description": "The name of the location." }, "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 the 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": "771 Alder Drive", "description": "Address 1 of the location." }, "address2": { "type": "string", "example": "Cisco Site 5", "description": "Address 2 of the location." }, "city": { "type": "string", "example": "Milpitas", "description": "City of the location." }, "state": { "type": "string", "example": "CA", "description": "State code of the location." }, "postalCode": { "type": "string", "example": "95035", "description": "Postal code of the location." }, "country": { "type": "string", "example": "US", "description": "ISO-3166 2-Letter country code of the location." } }, "description": "The address of the location." } } }, "PostValidateExtension": { "type": "object", "properties": { "extensions": { "type": "array", "items": { "type": "string", "example": "12345,3456" }, "description": "Array of Strings of IDs of the Extensions." } } }, "PostValidateExtensionResponse": { "type": "object", "required": [ "status", "extensionStatus" ], "properties": { "status": { "type": "string", "enum": [ "OK", "ERRORS" ], "description": "OK , ERRORS\n * `OK` - Validated succesfully.\n * `ERRORS` - Validated with errors.\n" }, "extensionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/extentionStatusObject" } } } }, "PutLocationCallBackNumberObject": { "type": "object", "required": [ "selected", "locationMemberId" ], "properties": { "selected": { "$ref": "#/components/schemas/CallBackSelected", "description": "Selected number type to configure emergency call back." }, "locationMemberId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hOTc0MzVjZi0zYTZmLTRmNGYtOWU1OC00OTI2OTQ5MDkwMWY", "description": "Member ID of user/place/virtual line/hunt group within the location. Required if `LOCATION_MEMBER_NUMBER` is selected." }, "elinExpiryTimeMinutes": { "type": "integer", "example": 90, "description": "ELIN (Emergency Location Identification Number) provides location-specific callback information to emergency responders. This field indicates the time in minutes that the ELIN association remains active after being established. Valid values are between 10 and 1440 minutes." } } }, "PutMusicOnHoldObject": { "type": "object", "properties": { "mohEnabled": { "type": "boolean", "example": true, "description": "Music on hold is enabled or disabled for the workspace." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type for the workspace.\n * `DEFAULT` - Play music configured at location level.\n * `CUSTOM` - Play custom music when call is placed on hold or parked. An audio file must already have been successfully uploaded to specify this option.\n" }, "audioAnnouncementFile": { "$ref": "#/components/schemas/AudioAnnouncementFileObject", "description": "Announcement Audio File details when greeting is selected to be `CUSTOM`." } } }, "PutPrivateNetworkConnectObject": { "type": "object", "required": [ "networkConnectionType" ], "properties": { "networkConnectionType": { "type": "string", "enum": [ "PUBLIC_INTERNET", "PRIVATE_NETWORK" ], "description": "Network Connection Type for the location.\n * `PUBLIC_INTERNET` - Use public internet for the location's connection type.\n * `PRIVATE_NETWORK` - Use private network connect for the location's connection type.\n" } } }, "PutTelephonyLocationObject": { "type": "object", "properties": { "announcementLanguage": { "type": "string", "example": "fr_fr", "description": "Location's phone announcement language." }, "callingLineId": { "type": "object", "properties": { "name": { "type": "string", "example": "Denver Incoming", "description": "Group calling line ID name. By default the org name." }, "phoneNumber": { "type": "string", "example": "+12145555698", "description": "Directory Number / Main number in E.164 Format." } }, "description": "Location calling line information." }, "connection": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/RouteType", "description": "Webex Calling location API only supports setting `TRUNK` or `ROUTE_GROUP`." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LL2M1MGIxZjY2LTRjODMtNDAzNy04NjM1LTg2ZjlkM2VkZDQ5MQ", "description": "A unique identifier of route type." } }, "description": "Connection details can only be modified to and from local PSTN types of `TRUNK` and `ROUTE_GROUP`." }, "externalCallerIdName": { "type": "string", "example": "Big Corp-Denve", "description": "External caller ID name value. Unicode characters." }, "pAccessNetworkInfo": { "type": "string", "example": "Richardson-TX", "description": "Emergency Location Identifier for a location. The `pAccessNetworkInfo` is set only when the location's country is Belgium(`BE`), Germany(`DE`), or France(`FR`)." }, "outsideDialDigit": { "type": "string", "example": "12", "description": "Must dial to reach an outside line. Default is none." }, "enforceOutsideDialDigit": { "type": "boolean", "example": true, "description": "True when enforcing outside dial digit at location level to make PSTN calls." }, "routingPrefix": { "type": "string", "example": "2", "description": "Must dial a prefix when calling between locations having same extension within same location, should be numeric." }, "chargeNumber": { "type": "string", "example": "+14158952369", "description": "Set the chargeable number for the line placing the call. When set and [useChargeNumberForPChargeInfo field (GET location)](/docs/api/v1/beta-location-call-settings-with-p-charge-info-support/get-location-webex-calling-details) is true for the location, all PSTN calls placed from this location will include a P-Charge-Info header with this specified number in the SIP INVITE." } } }, "RouteIdentity": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of the route type." }, "name": { "type": "string", "example": "route_identity_name", "description": "A unique name for the route identity." }, "type": { "$ref": "#/components/schemas/RouteType", "description": "Type associated with the identity." } } }, "StatusOfExtensionsObject": { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "string", "enum": [ "OK", "ERRORS" ], "description": "Status of the validated array of extensions.\n * `OK` - Indicates that all extensions were validated.\n * `ERRORS` - Indicates that not all extensions were validated.\n" }, "extensionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/ExtensionStatusObject" }, "description": "Array of extensions statuses." } } }, "extentionStatusObject": { "type": "object", "required": [ "extension", "state" ], "properties": { "extension": { "type": "string", "example": "1234", "description": "Indicates the extention ID for the status." }, "state": { "type": "string", "enum": [ "VALID", "DUPLICATE", "DUPLICATE_IN_LIST", "INVALID" ], "description": "Indicates the status for the given extention ID." }, "errorCode": { "type": "number", "example": 59475, "description": "Error code." }, "message": { "type": "string", "example": "The extension is not available. It is already assigned to a virtual extension" } } }, "LocationPUTResponse": { "type": "object", "properties": { "batchJobId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC84MWU3ODFjOC1kMDI3LTQ1ZjMtODIyZi05OTRiMmYzZTA0MzA", "description": "Admin Batch Job ID returned if a routing prefix change occurs." }, "failureReason": { "type": "string", "example": "UpdateRoutingPrefix batch job not triggered for Location", "description": "Error message if the admin batch job is not triggered if a routing prefix change occurs." } } }, "BatchResponse": { "type": "object", "required": [ "name", "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "counts" ], "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/JobExecutionStatus" }, "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" }, "counts": { "$ref": "#/components/schemas/Counts", "description": "Job statistics." } } }, "JobExecutionStatus": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "number", "description": "Unique identifier that identifies each instance of the job." }, "startTime": { "type": "string", "description": "Job execution start time in UTC format." }, "endTime": { "type": "string", "description": "Job execution end time in UTC format." }, "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." }, "stepExecutionStatuses": { "type": "array", "items": { "$ref": "#/components/schemas/StepExecutionStatuses" }, "description": "Status of each step within a job." } } }, "StepExecutionStatuses": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "number", "description": "Unique identifier that identifies each step in a job." }, "startTime": { "type": "string", "description": "Step execution start time in UTC format." }, "endTime": { "type": "string", "description": "Step execution end time in UTC format." }, "lastUpdated": { "type": "string", "description": "Last updated time for a step in UTC format." }, "statusMessage": { "type": "string", "description": "Displays status for a step." }, "exitCode": { "type": "string", "description": "Exit Code for a step." }, "name": { "type": "string", "description": "Step name." }, "timeElapsed": { "type": "string", "description": "Time lapsed since the step execution started." } } }, "Counts": { "type": "object", "required": [ "routingPrefixUpdated", "routingPrefixFailed" ], "properties": { "routingPrefixUpdated": { "type": "number", "description": "Indicates the total number of records whose routing prefix update is successful." }, "routingPrefixFailed": { "type": "number", "description": "Indicates the total number of records whose routing prefix update failed." } } }, "BatchJobError": { "type": "object", "properties": { "trackingId": { "type": "string", "description": "Unique identifier to track the HTTP requests." }, "itemNumber": { "type": "number", "description": "row number of failed record." }, "error": { "$ref": "#/components/schemas/Error" } } }, "Error": { "type": "object", "properties": { "key": { "type": "string", "description": "HTTP error code." }, "message": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorMessage" }, "description": "Message string with further error information." } } }, "ErrorMessage": { "type": "object", "required": [ "description" ], "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. For a move operation this is the target location ID." } } }, "ExternalCallerIdNumberListGet": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/NumberObject" }, "description": "Array of phone numbers." } } }, "NumberObject": { "type": "object", "required": [ "state", "phoneNumberType", "mainNumber", "includedTelephonyTypes", "tollFreeNumber", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "extension": { "type": "string", "example": "000", "description": "Extension for a phone number." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "1234000", "description": "Routing prefix + extension of a person or workspace." }, "state": { "type": "string", "example": "ACTIVE", "description": "Phone number's state." }, "phoneNumberType": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE", "FAX", "DNIS", "Default" ], "description": "Returns the filtered list of phone numbers of the given `phoneNumberType`. Response excludes any extensions without numbers. Possible input values:\n * `PRIMARY` - Filter the results to include only primary phone numbers.\n * `ALTERNATE` - Filter the results to include only alternate phone numbers.\n * `FAX` - Filter the results to include only FAX phone numbers.\n * `DNIS` - Filter the results to include only Dialed Number Identification Service (DNIS) phone numbers.\n * `Default` - Filter the results to include all numbers.\n" }, "mainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as location CLID." }, "includedTelephonyTypes": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "mobileNetwork": { "type": "string", "example": "mobileNetwork", "description": "Mobile Network for the number if the number is MOBILE_NUMBER." }, "routingProfile": { "type": "string", "example": "AttRtPf", "description": "Routing Profile for the number if the number is MOBILE_NUMBER." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number." }, "location": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of location in which phone number exists." }, "name": { "type": "string", "example": "Banglore", "description": "Name of the location for phone number." } } }, "owner": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the owner to which phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the phone number's owner." }, "firstName": { "type": "string", "example": "Mark", "description": "First name of the phone number's owner." }, "lastName": { "type": "string", "example": "Zand", "description": "Last name of the phone number's owner." } } } } }, "State": { "type": "string", "enum": [ "ACTIVE", "INACTIVE" ], "description": " * `ACTIVE` - Active state.\n * `INACTIVE` - Inactive state\n" }, "LocationAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/LocationAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "LocationAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "WebexGoAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WebexGoAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WebexGoAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "LocationECBNAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/LocationECBNAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "LocationECBNAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which phone number is assigned." }, "type": { "type": "string", "enum": [ "PLACE", "PEOPLE", "VIRTUAL_LINE", "HUNT_GROUP" ], "description": "Type of the phone number's owner.\n * `PLACE` - PSTN phone number's owner is a workspace.\n * `PEOPLE` - PSTN phone number's owner is a person.\n * `VIRTUAL_LINE` - PSTN phone number's owner is a Virtual Line.\n * `HUNT_GROUP` - PSTN Phone number's owner is a Hunt Group.\n" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PLACE` or `HUNT_GROUP`." } } } } }, "ContactDetails": { "type": "object", "required": [ "personId", "firstName", "lastName", "department", "phoneNumber", "extension", "locationId", "featureId" ], "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "description": "ID of person." }, "firstName": { "type": "string", "example": "John", "description": "First name of person." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of person." }, "department": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0RFUEFSVE1FTlQvOTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "description": "Department ID of person." }, "phoneNumber": { "type": "string", "example": "+12225555309", "description": "Phone number of person." }, "extension": { "type": "string", "example": "5309", "description": "Extension of person." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Location ID of person." }, "featureId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "description": "Location feature ID of the contact. Supported location feature types are Auto Attendant, Call Queue, Hunt Group, Single Number Reach, and Paging Group." } } }, "ContactPayload": { "type": "object", "required": [ "name", "contacts" ], "properties": { "name": { "type": "string", "example": "My_Directory", "description": "Receptionist Contact Directory name. The directory name should be greater than 0 and less than 41 characters in length." }, "contacts": { "type": "array", "items": { "$ref": "#/components/schemas/PersonId" }, "description": "Non-empty array of users or location features assigned to this Receptionist Contact Directory." } } }, "ContactPayloadForModify": { "type": "object", "required": [ "name", "contacts" ], "properties": { "name": { "type": "string", "example": "My_Directory", "description": "Receptionist Contact Directory name. The directory name should be greater than 0 and less than 41 characters in length." }, "contacts": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU" }, "description": "Non-empty array of users or location features assigned to this Receptionist Contact Directory." } } }, "Directory": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSU1fR1JPVVAvZEdWemRGOWthWEpsWTNSdmNuaz06OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh", "description": "ID of Receptionist Contact Directory" }, "name": { "type": "string", "example": "test_directory", "description": "Name of Receptionist Contact Directory." } } }, "PersonId": { "type": "object", "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "description": "Person ID." }, "featureId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "description": "Location feature ID." }, "type": { "type": "string", "example": "PEOPLE", "description": "Types of users supported in receptionist contacts are People, Auto Attendant, Call Queue, Hunt Group, Single Number Reach, and Paging Group." } } }, "LocationCallInterceptAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/LocationCallInterceptAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "LocationCallInterceptAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "ID of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the phone number's owner and will only be returned when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "PlayListObject": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FOTk9VTkNFTUVOVC9iYzZjOTYwYi01ZDJjLTRiM2QtYjRlZC0wNWY1ZmFhMTJjZjA", "description": "A unique identifier for the playlist." }, "name": { "type": "string", "example": "testingAnnouncementPlaylist", "description": "Unique name for the playlist." } } }, "ErrorBean": { "type": "object", "description": "Represents an error that occurred during disable calling location operations.", "properties": { "itemNumber": { "type": "integer", "description": "Sequential number of the error item." }, "item": { "type": "string", "description": "The item that caused the error." }, "errorType": { "allOf": [ { "$ref": "#/components/schemas/ErrorType" }, { "description": "Type of the error." } ] }, "error": { "type": "object", "description": "Error details.", "properties": { "key": { "type": "string", "description": "Error key or status code." }, "message": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string", "description": "Error description." }, "code": { "type": "string", "description": "Error code for disable calling location operations." }, "locationId": { "type": "string", "description": "Related location ID, can be null.", "nullable": true } } }, "description": "Array of error message details." } } }, "trackingId": { "type": "string", "description": "Tracking ID for the error." } } }, "PaginatedResult": { "type": "object", "description": "Paginated response containing error items for disable calling location operations.", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorBean" }, "description": "List of error items." } } }, "SafeDeleteCheckForDisableCallingLocationResponse": { "type": "object", "description": "Response from safe delete check operation for disabling a calling location.", "properties": { "locationDeleteStatus": { "allOf": [ { "$ref": "#/components/schemas/LocationDeleteStatus" }, { "description": "Status of disable calling location safe delete check." } ] }, "blocking": { "$ref": "#/components/schemas/BlockingDisableCallingLocation" }, "nonBlocking": { "$ref": "#/components/schemas/NonBlockingDisableCallingLocation" }, "blockingUnlessForced": { "$ref": "#/components/schemas/BlockingUnlessForcedDisableCallingLocation" } } }, "BlockingDisableCallingLocation": { "type": "object", "description": "Factors that completely block disabling a calling location.", "properties": { "lastLocation": { "type": "boolean", "description": "Indicates if this is the last calling location in the organization." }, "trunksInUseCount": { "type": "integer", "description": "Number of trunks in use at this location." }, "usersInUseCount": { "type": "integer", "description": "Number of users in use at this location." }, "workspacesInUseCount": { "type": "integer", "description": "Number of workspaces in use at this location." }, "virtualLineInUseCount": { "type": "integer", "description": "Number of virtual lines in use at this location." }, "numbersOrderPending": { "type": "boolean", "description": "Indicates if there are pending number orders for this location." } } }, "NonBlockingDisableCallingLocation": { "type": "object", "description": "Non blocking reasons for disabling a calling location that do not prevent the operation from proceeding", "properties": { "numbersPresent": { "type": "boolean", "description": "Indicates if there are phone numbers at this location." } } }, "BlockingUnlessForcedDisableCallingLocation": { "type": "object", "description": "Reasons that block disabling a calling location", "properties": { "nonUserEntitiesInUse": { "type": "boolean", "description": "Indicates if there are non-user entities in use at this location that would block disabling unless force is applied." }, "trunksCount": { "type": "integer", "description": "Total number of trunks at this location." } } }, "DisableCallingLocationCounts": { "type": "object", "description": "Counts of various account types processed during disable calling location operation.", "properties": { "totalVirtualExtensionsAccount": { "type": "integer", "minimum": 0, "description": "Total virtual extensions account." }, "virtualExtensionsDeleted": { "type": "integer", "minimum": 0, "description": "Number of virtual extensions deleted." }, "virtualExtensionsDeleteFailed": { "type": "integer", "minimum": 0, "description": "Number of virtual extensions that failed to delete." }, "totalFeatureAccounts": { "type": "integer", "minimum": 0, "description": "Total feature accounts." }, "featureAccountsDeleted": { "type": "integer", "minimum": 0, "description": "Number of feature accounts deleted." }, "featureAccountsDeleteFailed": { "type": "integer", "minimum": 0, "description": "Number of feature accounts that failed to delete." } } }, "DisableCallingLocationJobStatus": { "type": "object", "description": "Status and details of a disable calling location job.", "example": { "name": "deletecallinglocation", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8zZjczYTAyOS1lYWZkLTQ5NzUtYjcyYi1jNzlkYWE1ZTkyZmE", "trackingId": "ROUTERGW_882b1b3b-b247-4d4f-abe9-4ccec7f7e3b0", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kMzg2MjhiYy0zYjk4LTRjMjMtODEwMy0wMzRhMjI0ZmRiNjE", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "instanceId": 1472955, "jobExecutionStatus": [ { "id": 1497186, "lastUpdated": "2025-07-27T13:19:39.702Z", "statusMessage": "STARTING", "exitCode": "UNKNOWN", "createdTime": "2025-07-27T13:19:39.702Z", "timeElapsed": "PT0S" } ], "latestExecutionStatus": "STARTING", "latestExecutionExitCode": "UNKNOWN", "locationName": "San Jose HQ", "counts": { "totalVirtualExtensionsAccount": 0, "virtualExtensionsDeleted": 0, "virtualExtensionsDeleteFailed": 0, "totalFeatureAccounts": 1, "featureAccountsDeleted": 1, "featureAccountsDeleteFailed": 0 } }, "properties": { "name": { "type": "string", "description": "Name of the job" }, "id": { "type": "string", "description": "Unique identifier for the job." }, "locationName": { "type": "string", "description": "Name of the calling location being disabled." }, "trackingId": { "type": "string", "description": "Tracking identifier for the job." }, "sourceUserId": { "type": "string", "description": "ID of the user who initiated the job." }, "sourceCustomerId": { "type": "string", "description": "Organization ID of the source customer." }, "targetCustomerId": { "type": "string", "description": "Organization ID of the target customer." }, "instanceId": { "type": "integer", "format": "int64", "description": "Instance identifier for the job." }, "latestExecutionStatus": { "type": "string", "description": "Latest execution status of the job." }, "latestExecutionExitCode": { "type": "string", "description": "Latest execution exit code." }, "counts": { "description": "Counts of processed accounts during disable calling location operation.", "allOf": [ { "$ref": "#/components/schemas/DisableCallingLocationCounts" }, { "description": "Counts of processed accounts during disable calling location operation." } ] } } }, "DisableCallingLocationPostRequest": { "type": "object", "description": "Request body for disabling a calling location.", "example": { "locationId": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzk2ZjA0YjUwLTYxMWItNGViYy05ZGE0LTQwMzU4ODYxZTI4NQ", "locationName": "San Jose HQ", "forceDelete": false }, "required": [ "locationId" ], "properties": { "locationId": { "type": "string", "description": "Unique identifier for the calling location to disable." }, "locationName": { "type": "string", "description": "Name of the calling location to disable." }, "forceDelete": { "type": "boolean", "description": "Force delete is only applicable when calling features like call queues, hunt groups, virtual lines, etc or a trunk that is not in use exists in the calling location and customer still wants to disable the calling location." } } }, "LocationDeleteStatus": { "type": "string", "enum": [ "BLOCKED", "UNBLOCKED", "FORCE_REQUIRED" ], "description": " * `BLOCKED` - Disable Webex Calling location operation is blocked and cannot proceed.\n * `UNBLOCKED` - Disable Webex Calling location operation can proceed without any restrictions.\n * `FORCE_REQUIRED` - Disable Webex Calling location operation requires forceDelete to be set to true." }, "ErrorType": { "type": "string", "enum": [ "WARN", "ERROR" ], "example": "ERROR", "description": " * `WARN` - A warning message that doesn't block the operation.\n * `ERROR` - An error message that indicates a failure in the operation." }, "GetLocationCallCaptionsObject": { "type": "object", "required": [ "locationClosedCaptionsEnabled", "locationTranscriptsEnabled", "orgClosedCaptionsEnabled", "orgTranscriptsEnabled", "useOrgSettingsEnabled" ], "properties": { "locationClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Location-level closed captions are enabled or disabled." }, "locationTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Location-level transcripts are enabled or disabled." }, "orgClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Organization closed captions are enabled or disabled." }, "orgTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Organization transcripts are enabled or disabled." }, "useOrgSettingsEnabled": { "type": "boolean", "example": true, "description": "If `useOrgSettingsEnabled` is `true`, organization-level settings will control the location's closed captions and transcripts. Otherwise, location-level settings are used." } } }, "UpdateLocationCallCaptionsObject": { "type": "object", "properties": { "locationClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable location-level closed captions." }, "locationTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable location-level transcripts." }, "useOrgSettingsEnabled": { "type": "boolean", "example": true, "description": "If `useOrgSettingsEnabled` is `true`, organization-level settings will control the location's closed captions and transcripts. Otherwise, location-level settings are used." } } }, "CallingPermissionObject": { "type": "object", "required": [ "callType", "action", "transferEnabled", "isCallTypeRestrictionEnabled" ], "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Below are the call type values.\n * `INTERNAL_CALL` - Controls calls within your own company.\n * `TOLL_FREE` - Controls calls to a telephone number that is billed for all arriving calls instead of incurring charges to the originating caller, usually free of charge from a landline.\n * `INTERNATIONAL` - Controls calls to locations outside of the Long Distance areas that require an international calling code before the number is dialed.\n * `OPERATOR_ASSISTED` - Controls calls requiring Operator Assistance.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Controls calls to Directory Assistant companies that require a charge to connect the call.\n * `SPECIAL_SERVICES_I` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `SPECIAL_SERVICES_II` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `PREMIUM_SERVICES_I` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `PREMIUM_SERVICES_II` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `NATIONAL` - Controls calls that are National.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Allows to configure settings for each call type.\n * `ALLOW` - Callers at this location can make these types of calls.\n * `BLOCK` - Callers at this location can't make these types of calls.\n * `AUTH_CODE` - Callers must enter the authorization code that you set before placing an outgoing call.\n * `TRANSFER_NUMBER_1` - Calls are transferred automatically to the configured auto transfer number `autoTransferNumber1`.\n * `TRANSFER_NUMBER_2` - Calls are transferred automatically to the configured auto transfer number. `autoTransferNumber2`.\n * `TRANSFER_NUMBER_3` - Calls are transferred automatically to the configured auto transfer number. `autoTransferNumber3`.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "isCallTypeRestrictionEnabled": { "type": "boolean", "example": true, "description": "Indicates if the restriction is enforced by the system for the corresponding call type and cannot be changed. For example, certain call types (such as `INTERNATIONAL`) may be permanently blocked and this field will be `true` to reflect that the restriction is system-controlled and not editable." } } }, "CallingPermissionPatchObject": { "type": "object", "required": [ "callType", "action", "transferEnabled" ], "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Below are the call type values.\n * `INTERNAL_CALL` - Controls calls within your own company.\n * `TOLL_FREE` - Controls calls to a telephone number that is billed for all arriving calls instead of incurring charges to the originating caller, usually free of charge from a landline.\n * `INTERNATIONAL` - Controls calls to locations outside of the Long Distance areas that require an international calling code before the number is dialed.\n * `OPERATOR_ASSISTED` - Controls calls requiring Operator Assistance.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Controls calls to Directory Assistant companies that require a charge to connect the call.\n * `SPECIAL_SERVICES_I` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `SPECIAL_SERVICES_II` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `PREMIUM_SERVICES_I` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `PREMIUM_SERVICES_II` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `NATIONAL` - Controls calls that are National.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Allows to configure settings for each call type.\n * `ALLOW` - Callers at this location can make these types of calls.\n * `BLOCK` - Callers at this location can't make these types of calls.\n * `AUTH_CODE` - Callers must enter the authorization code that you set before placing an outgoing call.\n * `TRANSFER_NUMBER_1` - Calls are transferred automatically to the configured auto transfer number `autoTransferNumber1`.\n * `TRANSFER_NUMBER_2` - Calls are transferred automatically to the configured auto transfer number. `autoTransferNumber2`.\n * `TRANSFER_NUMBER_3` - Calls are transferred automatically to the configured auto transfer number. `autoTransferNumber3`.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "GeneratePasswordPostResponse": { "type": "object", "properties": { "exampleSipPassword": { "type": "string", "example": "xyz123!", "description": "Example password." } } }, "GetAutoTransferNumberObject": { "type": "object", "properties": { "autoTransferNumber1": { "type": "string", "example": "1234456789", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_1` will be transferred to this number." }, "autoTransferNumber2": { "type": "string", "example": "2234567891", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_2` will be transferred to this number." }, "autoTransferNumber3": { "type": "string", "example": "3234567891", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_3` will be transferred to this number." } } }, "GetLocationAccessCodeObject": { "type": "object", "properties": { "accessCodes": { "type": "object", "required": [ "code", "description" ], "properties": { "code": { "type": "string", "example": "123", "description": "Access code number." }, "description": { "type": "string", "example": "Main Access Code", "description": "Access code description." } }, "description": "Access code details" } } }, "GetLocationInterceptObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable location intercept. Enable this feature to override any Location's Call Intercept settings that person configures." }, "incoming": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "Select inbound call options.\n * `INTERCEPT_ALL` - Intercept all inbound calls.\n * `ALLOW_ALL` - Allow all inbound calls.\n" }, "voicemailEnabled": { "type": "boolean", "example": true, "description": "Enable/disable to route voice mail." }, "announcements": { "type": "object", "properties": { "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type for location intercept.\n * `DEFAULT` - Play default greeting.\n * `CUSTOM` - Play custom greeting.\n" }, "fileName": { "type": "string", "example": ".wav", "description": "If set to `CUSTOM` for greeting, filename of previously uploaded file." }, "newNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable to play new number announcement." }, "destination": { "type": "string", "example": "2147691003", "description": "Incoming destination phone number to be announced." } }, "description": "Settings for new number announcement." }, "zeroTransfer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable to transfer to phone number." }, "destination": { "type": "string", "example": "2147691005", "description": "Transfer phone number to be called when '0' is dialed." } }, "description": "Transfer number details." } }, "description": "Announcements details." } }, "description": "Inbound call details." }, "outgoing": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "Outbound call modes\n * `INTERCEPT_ALL` - Intercept all outbound calls.\n * `ALLOW_LOCAL_ONLY` - Allow local outbound calls.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "2147691007", "description": "If enabled, set outgoing destination phone number." } }, "description": "Outbound Call details" } } }, "InternalDialingGet": { "type": "object", "properties": { "enableUnknownExtensionRoutePolicy": { "type": "boolean", "example": true, "description": "When enabled, calls made by users at the location to an unknown extension (between 2-6 digits) are routed to the selected route group/trunk as premises calls." }, "unknownExtensionRouteIdentity": { "$ref": "#/components/schemas/RouteIdentity", "description": "The selected route group/trunk as premises calls." } } }, "InternalDialingPut": { "type": "object", "properties": { "enableUnknownExtensionRoutePolicy": { "type": "boolean", "example": true, "description": "When enabled, calls made by users at the location to an unknown extension (between 2-6 digits) are routed to the selected route group/trunk as premises calls." }, "unknownExtensionRouteIdentity": { "$ref": "#/components/schemas/UnknownExtensionRouteIdentity", "description": "Type associated with the identity." } } }, "LocationOutgoingPermissionDigitPatternGetListObject": { "type": "object", "required": [ "digitPatterns" ], "properties": { "digitPatterns": { "type": "array", "items": { "$ref": "#/components/schemas/LocationDigitPatternObject" }, "description": "List of digit pattern information." } } }, "LocationOutgoingPermissionDigitPatternPostObject": { "type": "object", "required": [ "name", "pattern", "action", "transferEnabled" ], "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "LocationOutgoingPermissionDigitPatternPatchObject": { "type": "object", "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "LocationDigitPatternObject": { "type": "object", "required": [ "id", "name", "pattern", "action", "transferEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "description": "A unique identifier for the digit pattern." }, "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "PasswordGenerate": { "type": "string", "enum": [ "sip" ], "description": " * `sip` - SIP password setting\n" }, "PostLocationAccessCodeObject": { "type": "object", "properties": { "accessCodes": { "type": "object", "required": [ "code", "description" ], "properties": { "code": { "type": "string", "example": "123", "description": "Create new access code number." }, "description": { "type": "string", "example": "Main Access Code", "description": "Set access code description." } }, "description": "Access code details" } } }, "PutAccessCodeLocationObject": { "type": "object", "required": [ "deleteCodes" ], "properties": { "deleteCodes": { "type": "array", "items": { "type": "string" }, "description": "Array of string to delete access codes. For example, [\"1234\",\"2345\"]" } } }, "PutAutoTransferNumberObject": { "type": "object", "properties": { "autoTransferNumber1": { "type": "string", "example": "1234456789", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_1` will be transferred to this number." }, "autoTransferNumber2": { "type": "string", "example": "2234567891", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_2` will be transferred to this number." }, "autoTransferNumber3": { "type": "string", "example": "3234567891", "description": "Calls placed meeting the criteria in an outbound rule whose `action` is `TRANSFER_NUMBER_3` will be transferred to this number." } } }, "PutLocationInterceptObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable location intercept. Enable this feature to override any location's Call Intercept settings that a person configures." }, "incoming": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "Select inbound call options.\n * `INTERCEPT_ALL` - Set to `INTERCEPT_ALL` to intercept all inbound calls.\n * `ALLOW_ALL` - Set to `ALLOW_ALL` to allow all inbound calls.\n" }, "voicemailEnabled": { "type": "boolean", "example": true, "description": "Set to `true` to route voice mail." }, "announcements": { "type": "object", "properties": { "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Greeting type for location intercept.\n * `DEFAULT` - Set to `DEFAULT` to play default greeting.\n * `CUSTOM` - Set to `CUSTOM` to play custom greeting.\n" }, "fileName": { "type": "string", "example": ".wav", "description": "If set to `CUSTOM` for greeting, filename of previously uploaded file." }, "newNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to play new number announcement." }, "destination": { "type": "string", "example": "2147691003", "description": "If enabled, set destination phone number." } }, "description": "Details for new number." }, "zeroTransfer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to transfer to phone number." }, "destination": { "type": "string", "example": "2147691005", "description": "Transfer phone number to be called when '0' is dialed." } }, "description": "Transfer number details." } }, "description": "Announcements details." } }, "description": "Inbound call details." }, "outgoing": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "Outbound call options.\n * `INTERCEPT_ALL` - Set to `INTERCEPT_ALL` to intercept all outbound calls.\n * `ALLOW_LOCAL_ONLY` - Set to `ALLOW_LOCAL_ONLY` to allow local outbound calls.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "2147691007", "description": "If enabled, set valid outgoing destination phone number." } }, "description": "Outbound Call details" } } }, "UnknownExtensionRouteIdentity": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1JPVVRFX0dST1VQLzA1OWEyNzNlLWJiYjAtMTFlYy04NDIyLTAyNDJhYzEyMDAwMg", "description": "ID of the route type." }, "type": { "$ref": "#/components/schemas/RouteType", "description": "Type associated with the identity." } } }, "GetScheduleEventObject": { "type": "object", "required": [ "id", "name", "startDate", "endDate" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFX0VWRU5UL1RXOXVaR0Y1VTJOb1pXUjFiR1U", "description": "A unique identifier for the schedule event." }, "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject", "description": "Recurrence definition." } } }, "GetScheduleObject": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "description": "A unique identifier for the schedule." }, "name": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Unique name for the schedule." }, "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/GetScheduleEventObject" }, "description": "List of schedule events." } } }, "ListScheduleObject": { "type": "object", "required": [ "id", "name", "type", "locationName", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "description": "A unique identifier for the schedule." }, "name": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Unique name for the schedule." }, "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "locationName": { "type": "string", "example": "Alaska", "description": "Name of location for schedule." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of the location for the schedule." } } }, "ModifyScheduleEventListObject": { "type": "object", "required": [ "name", "newName", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "Schedule", "description": "Current name for the event." }, "newName": { "type": "string", "example": "MondaySchedule", "description": "New name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start date of event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End date of event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event. Mandatory if the event is not all day." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event. Mandatory if the event is not all day." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not. Mandatory if the `startTime` and `endTime` are not defined." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject", "description": "Recurrence definition." } } }, "ModifyScheduleEventObject": { "type": "object", "required": [ "name", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start date of event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End date of event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event. Mandatory if the event is not all day." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event. Mandatory if the event is not all day." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not. Mandatory if the `startTime` and `endTime` are not defined." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject", "description": "Recurrence definition." } } }, "ModifyScheduleObject": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Unique name for the schedule." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/ModifyScheduleEventListObject" }, "description": "List of schedule events." } } }, "PostScheduleEventObject": { "type": "object", "required": [ "name", "startDate", "endDate" ], "properties": { "name": { "type": "string", "example": "MondaySchedule", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2021-11-01", "description": "Start Date of Event." }, "endDate": { "type": "string", "example": "2021-11-30", "description": "End Date of Event." }, "startTime": { "type": "string", "example": "12:20", "description": "Start time of event. Mandatory if the event is not all day." }, "endTime": { "type": "string", "example": "14:20", "description": "End time of event. Mandatory if the event is not all day." }, "allDayEnabled": { "type": "boolean", "description": "An indication of whether given event is an all-day event or not. Mandatory if the `startTime` and `endTime` are not defined." }, "recurrence": { "$ref": "#/components/schemas/RecurrenceObject", "description": "Recurrence definition." } } }, "PostScheduleObject": { "type": "object", "required": [ "type", "name" ], "properties": { "type": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": "Type of the schedule.\n * `businessHours` - Business hours schedule type.\n * `holidays` - Holidays schedule type.\n" }, "name": { "type": "string", "example": "AUTOATTENDANT-BUSINESS-HOURS", "description": "Unique name for the schedule." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleEventObject" }, "description": "List of schedule events." } } }, "GetLocationVoicemailGroupObject": { "type": "object", "required": [ "id", "name", "firstName", "lastName", "enabled", "languageCode", "greeting", "greetingUploaded", "voiceMessageForwardingEnabled" ], "properties": { "id": { "type": "string", "example": "a7dd4d39-4a78-4516-955f-7810dbe379cf", "description": "UUID of voicemail group of a particular location." }, "name": { "type": "string", "example": "VGName", "description": "Name of the voicemail group." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Voicemail group phone number." }, "extension": { "type": "number", "example": 23455, "description": "Voicemail group extension number." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "123423455", "description": "Routing prefix + extension of a person or workspace." }, "tollFreeNumber": { "type": "boolean", "description": "Voicemail group toll free number." }, "firstName": { "type": "string", "example": "Customer", "description": "Voicemail group caller ID first name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Support", "description": "Voicemail group called ID last name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "enabled": { "type": "boolean", "example": true, "description": "Enable/disable voicemail group." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language for voicemail group audio announcement." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Set voicemail group greeting type.\n * `DEFAULT` - Default voicemail group greeting.\n * `CUSTOM` - Custom voicemail group greeting.\n" }, "greetingUploaded": { "type": "boolean", "example": true, "description": "Enabled if CUSTOM greeting is previously uploaded." }, "greetingDescription": { "type": "string", "example": "short greeting.wav", "description": "CUSTOM greeting for previously uploaded." }, "messageStorage": { "type": "object", "required": [ "storageType" ], "properties": { "storageType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL" ], "description": "Message storage type\n * `INTERNAL` - Store messages in internal mailbox.\n * `EXTERNAL` - Send messages to the email address provided.\n" }, "externalEmail": { "type": "string", "example": "user@flex2.cisco.com", "description": "External email to forward the message." } }, "description": "Message storage information" }, "notifications": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable messages notification" }, "destination": { "type": "string", "example": "user@flex2.cisco.com", "description": "Notifications to be sent to provided email to SMS gateway." } }, "description": "Message notifications" }, "faxMessage": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable fax messaging." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Phone number to receive fax messages." }, "extension": { "type": "number", "example": 23455, "description": "Extension to receive fax messages." } }, "description": "Fax message receive settings" }, "transferToNumber": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable to transfer message." }, "destination": { "type": "string", "example": "+12147691003", "description": "Transfer phone number to be called when '0' is dialed." } }, "description": "Transfer message information" }, "emailCopyOfMessage": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Enable/disable to email message copy." }, "emailId": { "type": "string", "example": "user@flex2.cisco.com", "description": "Email message copy to email address provided." } }, "description": "Message copy information" }, "voiceMessageForwardingEnabled": { "type": "boolean", "example": true, "description": "Enable/disable to forward voice message." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this voicemail group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "GetLocationVoicemailObject": { "type": "object", "required": [ "voicemailTranscriptionEnabled" ], "properties": { "voicemailTranscriptionEnabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable voicemail transcription." } } }, "GetVoicePortalObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC8yZmQzZGMwMy0yZWRhLTQ4NmUtODdhYS0xODY1ZDI5YWExZWI", "description": "Voice Portal ID" }, "name": { "type": "string", "example": "test voicePortal", "description": "Voice Portal Name." }, "language": { "type": "string", "example": "English", "description": "Language for audio announcements." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code for voicemail group audio announcement." }, "extension": { "type": "string", "example": "0007", "description": "Extension of incoming call." }, "phoneNumber": { "type": "string", "example": "+1345325235", "description": "Phone Number of incoming call." }, "firstName": { "type": "string", "example": "firstName", "description": "Caller ID First Name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "lastName", "description": "Caller ID Last Name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this voice portal." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "GetVoicePortalPasscodeRuleObject": { "type": "object", "properties": { "expirePasscode": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, passcode expires after the number of days specified." }, "numberOfDays": { "type": "number", "example": 180, "description": "Number of days for passcode expiry. The minimum value is 15. The maximum value is 100." } }, "description": "Settings for passcode expiry." }, "failedAttempts": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, allows specified number of attempts before locking voice portal access." }, "attempts": { "type": "number", "example": 3, "description": "Number of failed attempts allowed." } }, "description": "Number of failed attempts allowed." }, "blockPreviousPasscodes": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, the specified number of passcode changes must occur before a passcode can be re-used." }, "numberOfPasscodes": { "type": "number", "example": 10, "description": "Number of previous passcodes not allowed to be re-used. The minimum value is 1. The maximum value is 10." } }, "description": "Settings for previous passcode usage." }, "blockRepeatedDigits": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, checks for sequence of the same digit being repeated." }, "max": { "type": "number", "example": 3, "description": "Maximum number of repeated digit sequence allowed. The minimum value is 1. The maximum value is 6." } }, "description": "Settings to prevent single digits from being repeated in the passcode. For example, with a maximum value of 3, 111222 is allowed but 112222 is not allowed since it contains a repeated digit sequence longer than 3." }, "blockContiguousSequences": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If enabled, do not allow the specified number of ascending or descending digits in a row." }, "numberOfAscendingDigits": { "type": "number", "example": 3, "description": "Specifies the maximum length of an ascending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 123856 is allowed, but 123485 is not allowed (since the ascending sequence 1234 exceeds 3 digits)." }, "numberOfDescendingDigits": { "type": "number", "example": 3, "description": "Specifies the maximum length of a descending numerical sequence allowed. The minimum value is 2. The maximum value is 5. Example: If this value is set to 3, then 321856 is allowed, but 432185 is not allowed (since the descending sequence 4321 exceeds 3 digits)." } }, "description": "Settings for not allowing numerical sequence in passcode (for example, 012345 or 987654)." }, "length": { "type": "object", "properties": { "min": { "type": "number", "example": 6, "description": "The minimum value is 2. The maximum value is 15." }, "max": { "type": "number", "example": 30, "description": "The minimum value is 3. The maximum value is 30." } }, "description": "Allowed length of the passcode." }, "blockRepeatedPatternsEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode cannot contain repeated patterns. For example, 121212 and 123123." }, "blockUserNumberEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode do not allow user phone number or extension." }, "blockReversedUserNumberEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode do not allow revered phone number or extension." }, "blockReversedOldPasscodeEnabled": { "type": "boolean", "example": true, "description": "If enabled, the passcode do not allow setting reversed old passcode." } } }, "GetVoicemailGroupObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZPSUNFTUFJTF9HUk9VUC8yZmQzZGMwMy0yZWRhLTQ4NmUtODdhYS0xODY1ZDI5YWExZWI", "description": "Voicemail Group ID." }, "name": { "type": "string", "example": "test", "description": "Voicemail Group Name." }, "locationName": { "type": "string", "example": "San Jose", "description": "Location Name." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "Location ID." }, "extension": { "type": "string", "example": "0007", "description": "Extension of the voicemail group." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12340007", "description": "Routing prefix + extension of a person or workspace." }, "phoneNumber": { "type": "string", "example": "+1345325235", "description": "Phone number of the voicemail group." }, "enabled": { "type": "boolean", "example": true, "description": "If enabled, incoming calls are sent to voicemail." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "Flag to indicate if the number is toll free." } } }, "PostLocationVoicemailGroupObject": { "type": "object", "required": [ "name", "extension", "passcode", "languageCode", "messageStorage", "notifications", "faxMessage", "transferToNumber", "emailCopyOfMessage" ], "properties": { "name": { "type": "string", "example": "VGName", "description": "Set name to create new voicemail group for a particular location for a customer." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Set voicemail group phone number for this particular location." }, "extension": { "type": "number", "example": 23455, "description": "Set unique voicemail group extension number for this particular location." }, "firstName": { "type": "string", "example": "Customer", "description": "Set voicemail group caller ID first name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Support", "description": "Set voicemail group called ID last name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "passcode": { "type": "number", "example": 1234, "description": "Set passcode to access voicemail group when calling." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code for voicemail group audio announcement." }, "messageStorage": { "type": "object", "required": [ "storageType" ], "properties": { "storageType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL" ], "description": "Message storage type.\n * `INTERNAL` - Set to `INTERNAL` to store messages in internal mailbox.\n * `EXTERNAL` - Set to `EXTERNAL` to send messages to the email address provided.\n" }, "externalEmail": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set external email to forward the messages." } }, "description": "Message storage information" }, "notifications": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable message notification." }, "destination": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set email to SMS gateway to send notifications." } }, "description": "Message notifications" }, "faxMessage": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable fax messaging." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Set valid phone number to receive fax message." }, "extension": { "type": "number", "example": 23455, "description": "Set fax messaging extension number." } }, "description": "Fax message information" }, "transferToNumber": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable to transfer message." }, "destination": { "type": "string", "example": "+12147691003", "description": "Set phone number and dial '0' to transfer message to the provided number." } }, "description": "Transfer message information" }, "emailCopyOfMessage": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable email message copy." }, "emailId": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set email to receive message copy to the email address provided." } }, "description": "Message copy information" }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this voicemail group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PutLocationVoicemailGroupObject": { "type": "object", "properties": { "name": { "type": "string", "example": "VGName", "description": "Set the name of the voicemail group." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Set voicemail group phone number." }, "extension": { "type": "number", "example": 23455, "description": "Set unique voicemail group extension number." }, "firstName": { "type": "string", "example": "Customer", "description": "Set the voicemail group caller ID first name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "Support", "description": "Set the voicemail group called ID last name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable the voicemail group." }, "passcode": { "type": "number", "example": 1234, "description": "Set passcode to access voicemail group when calling." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code for the voicemail group audio announcement." }, "greeting": { "type": "string", "enum": [ "DEFAULT", "CUSTOM" ], "description": "Voicemail group greeting type.\n * `DEFAULT` - Set to `DEFAULT` to play default voicemail group greeting.\n * `CUSTOM` - Set to `CUSTOM` to play previously uploaded custom voicemail group greeting.\n" }, "greetingDescription": { "type": "string", "example": "short greeting.wav", "description": "CUSTOM greeting for previously uploaded." }, "messageStorage": { "type": "object", "properties": { "storageType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL" ], "description": "Message storage type.\n * `INTERNAL` - Set to `INTERNAL` to store messages in internal mailbox.\n * `EXTERNAL` - Set to `EXTERNAL` to send messages to the email address provided.\n" }, "externalEmail": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set external email to forward the messages." } }, "description": "Message storage information" }, "notifications": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable message notification." }, "destination": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set email to SMS gateway to send notifications." } }, "description": "Message notifications" }, "faxMessage": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable FAX messaging." }, "phoneNumber": { "type": "string", "example": "+1234234324", "description": "Set valid phone number to receive FAX messages." }, "extension": { "type": "number", "example": 23455, "description": "Set FAX messaging extension number." } }, "description": "Fax message receive settings" }, "transferToNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable to transfer message." }, "destination": { "type": "string", "example": "+12147691003", "description": "Set phone number and transfer message to the provided number when '0' is dialed." } }, "description": "Transfer message information" }, "emailCopyOfMessage": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable email message copy." }, "emailId": { "type": "string", "example": "user@flex2.cisco.com", "description": "Set email to receive message copy to the email address provided." } }, "description": "Message copy information" }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this voicemail group." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "PutLocationVoicemailObject": { "type": "object", "required": [ "voicemailTranscriptionEnabled" ], "properties": { "voicemailTranscriptionEnabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable voicemail transcription." } } }, "PutVoicePortalObject": { "type": "object", "properties": { "name": { "type": "string", "example": "test voicePortal", "description": "Voice Portal Name." }, "languageCode": { "type": "string", "example": "en_us", "description": "Language code for voicemail group audio announcement." }, "extension": { "type": "string", "example": "0007", "description": "Extension of incoming call." }, "phoneNumber": { "type": "string", "example": "+1345325235", "description": "Phone Number of incoming call." }, "firstName": { "type": "string", "example": "firstName", "description": "Caller ID First Name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "lastName": { "type": "string", "example": "lastName", "description": "Caller ID Last Name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "passcode": { "type": "object", "properties": { "newPasscode": { "type": "string", "example": "testPass123", "description": "New passcode." }, "confirmPasscode": { "type": "string", "example": "testPass123", "description": "Confirm new passcode." } }, "description": "Voice Portal Admin Passcode." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this voice portal." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "VoicePortalAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VoicePortalAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VoicePortalAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "VoicemailGroupAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VoicemailGroupAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VoicemailGroupAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "VoicemailGroupFaxMessageAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VoicemailGroupFaxMessageAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VoicemailGroupFaxMessageAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "AdminBatchStartJobObject": { "type": "object", "required": [ "operation", "numberList" ], "properties": { "operation": { "type": "string", "example": "MOVE|NUMBER_USAGE_CHANGE", "description": "The kind of operation to be carried out." }, "targetLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Mandatory for a `MOVE` operation. The target location within organization where the unassigned numbers will be moved from the source location." }, "numberUsageType": { "type": "string", "example": "NONE|SERVICE", "description": "The number usage type. Mandatory for `NUMBER_USAGE_CHANGE` operation." }, "numberList": { "type": "array", "items": { "$ref": "#/components/schemas/numberItem" }, "description": "Numbers on which to execute the operation." } } }, "jobListResponseObject": { "type": "object", "required": [ "id", "jobType", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "operationType", "sourceLocationId", "targetLocationId", "counts" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC83ZWUyMjAzMS0xM2Q5LTRmYTctODQ0NS1lNDMzNjE3MmVjYmU", "description": "Unique identifier of the job." }, "jobType": { "type": "string", "example": "managenumbers", "description": "Job type." }, "trackingId": { "type": "string", "example": "ATLAS_06a92f81-244d-4fd2-b8db-121bc1eeb6c8_11", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wNTUyZjY3Yi01OWE5LTQxYmItODczNi0xYjA0MWQxZGRkNWU", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85MTE1NDM1Ny1iZWQxLTQ1ZDUtYWE4Zi00ZTUwYzBkZWNmMzM", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "example": 238972, "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", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "operationType": { "type": "string", "example": "MOVE", "description": "The operation type that was carried out." }, "sourceLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E2MmRlOWRkLWRmODEtNDg3My04MGY5LTY2MmYyZmM3ZTI2NQ", "description": "Unique location identifier for which the job was run." }, "targetLocationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "description": "Unique location identifier for which the numbers have been moved." }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." } } }, "MoveNumberValidationError": { "type": "object", "properties": { "trackingId": { "type": "string", "description": "Unique identifier to track the HTTP requests." }, "error": { "$ref": "#/components/schemas/ErrorObject" } } }, "Number": { "type": "object", "required": [ "number", "state", "tollFreeNumber" ], "properties": { "number": { "type": "string", "example": "+2145557901", "description": "Phone numbers that need to be validated." }, "state": { "$ref": "#/components/schemas/NumberState", "description": "The state of the number." }, "tollFreeNumber": { "type": "boolean", "description": "If `true`, it's a toll-free number." }, "detail": { "type": "array", "items": { "type": "string" }, "description": "Error details if the number is unavailable." } } }, "NumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/NumberObject" }, "description": "Array of phone numbers." }, "count": { "$ref": "#/components/schemas/NumberCount", "description": "Count of phone numbers categorized by type or their states, such as assigned or unassigned." } } }, "NumberCount": { "type": "object", "properties": { "assigned": { "type": "number", "example": 33, "description": "Count of phone numbers that are in the assigned state." }, "unAssigned": { "type": "number", "example": 114, "description": "Count of phone numbers which are in the un-assigned state." }, "inActive": { "type": "number", "example": 12, "description": "Count of phone numbers which are inactive." }, "extensionOnly": { "type": "number", "example": 692, "description": "Count of extensions only without phone number." }, "tollFreeNumbers": { "type": "number", "example": 1, "description": "Count of the toll free numbers." }, "total": { "type": "number", "example": 839, "description": "Total phone numbers and extensions available." }, "mobileNumber": { "type": "number", "example": 6, "description": "Count of phone numbers of type `MOBILE_NUMBER` only without `PSTN_NUMBER` and extension." }, "serviceNumber": { "type": "number", "example": 1, "description": "Count of phone numbers with `includedTelephonyTypes` as `PSTN_NUMBER` and `isServiceNumber` value as `true`." } } }, "NumberState": { "type": "string", "enum": [ "Available", "Duplicate", "Duplicate In List", "Invalid", "Unavailable" ], "description": " * `Available` - The phone number is available.\n * `Duplicate` - Duplicate phone number.\n * `Duplicate In List` - Duplicate phone number in the list.\n * `Invalid` - The phone number is invalid.\n * `Unavailable` - The phone number is unavailable and cannot be used.\n" }, "NumbersDelete": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "type": "string" }, "description": "List of phone numbers that need to be deleted. The maximum limit is 5." } } }, "NumbersPost": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "type": "string" }, "description": "List of phone numbers that need to be added." }, "numberType": { "$ref": "#/components/schemas/NumberTypeOptions", "description": "The type of the number. Required for `MOBILE` number type." }, "numberUsageType": { "$ref": "#/components/schemas/NumberUsageTypeOptions", "description": "The type of usage expected for the number." }, "state": { "$ref": "#/components/schemas/NumberStateOptions", "description": "The state of the number. By default, the state of a number is set to `ACTIVE` for DID and toll-free numbers only. Mobile numbers will be activated upon assignment to a user." }, "subscriptionId": { "type": "string", "description": "The `subscriptionId` to be used for the mobile number order." }, "carrierId": { "type": "string", "format": "uuid", "description": "The `carrierId` to be used for the mobile number order." } } }, "NumberTypeOptions": { "type": "string", "enum": [ "TOLLFREE", "DID", "MOBILE" ], "description": " * `TOLLFREE` - A toll-free PSTN number.\n * `DID` - A normal Direct Inward Dial (DID) PSTN number.\n * `MOBILE` - A mobile number.\n" }, "NumberUsageTypeOptions": { "type": "string", "enum": [ "NONE", "SERVICE" ], "description": " * `NONE` - Standard/user number usage (default).\n * `SERVICE` - The number will be used in high-volume service, for example, Contact Center.\n" }, "NumberStateOptions": { "type": "string", "enum": [ "ACTIVE", "INACTIVE" ], "description": " * `ACTIVE` - The number is activated and has calling capability.\n * `INACTIVE` - A number is not yet activated and has no calling capability.\n" }, "NumbersRequest": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "type": "string" }, "description": "List of phone numbers whose activation state will be modified according to the specified action." }, "action": { "type": "string", "enum": [ "ACTIVATE", "DEACTIVATE" ], "description": "Specifies the action to execute on the provided phone numbers. If no action is specified, the default is set to ACTIVATE.\nFor DEACTIVATE action here are few limitations: 1) a maximum of 500 phone numbers can be processed, 2) the numbers must be unassigned, 3) the numbers cannot serve as ECBN (Emergency Callback Number), 4) the numbers must not be mobile numbers, and 5) this action is only applicable to non-integrated PSTN connection types, specifically Local Gateway (LGW) and Non-integrated CCP", "example": "DEACTIVATE" } } }, "Status": { "type": "string", "enum": [ "OK", "ERRORS" ], "description": " * `OK` - Everything is good.\n * `ERRORS` - Validation has failed with errors.\n" }, "ValidateNumbersPostRequest": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "type": "string" }, "description": "List of phone numbers that need to be added." } } }, "ValidateNumbersResponse": { "type": "object", "required": [ "status", "numbers" ], "properties": { "status": { "$ref": "#/components/schemas/Status", "description": "The status of the numbers." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/Number" }, "description": "An array of number objects with number details." } } }, "numberItem": { "type": "object", "required": [ "locationId", "numbers" ], "properties": { "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "description": "The source location of the numbers on which to execute the operation." }, "numbers": { "type": "array", "items": { "type": "string" }, "description": "The numbers on which to execute the operation." } } }, "ConnectionOptionsListResponse": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/ConnectionOptionsResponse" }, "description": "The list of PSTN connection options available for this location." } } }, "ConnectionOptionsResponse": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "description": "A unique identifier for the connection." }, "displayName": { "type": "string", "example": "Premises-based PSTN", "description": "The display name of the PSTN connection." }, "pstnServices": { "type": "array", "items": { "$ref": "#/components/schemas/PSTNServiceType" }, "description": "The PSTN services available for this connection." } } }, "SetUpPSTNLocationConnectionObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "description": "A unique identifier for the connection. This is required for non-integrated CCP." }, "premiseRouteType": { "type": "string", "example": "TRUNK", "description": "Premise route type. The possible types are TRUNK and ROUTE_GROUP. This is required for the local gateway." }, "premiseRouteId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LLzUxZGU0ODljLWFhNjAtNGMyNS05YWY2LWNjNGNiMTcxNzMxZg", "description": "Premise route ID. This refers to either a Trunk ID or a Route Group ID and is required for the local gateway." } } }, "ConnectionResponse": { "type": "object", "required": [ "id", "pstnConnectionType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUElDS1VQL1kyRnNiRkJwWTJ0MWNERT0", "description": "A unique identifier for the connection." }, "displayName": { "type": "string", "example": "Premises-based PSTN", "description": "The display name of the PSTN connection." }, "pstnServices": { "type": "array", "items": { "$ref": "#/components/schemas/PSTNServiceType" }, "description": "The PSTN services available for this connection." }, "pstnConnectionType": { "$ref": "#/components/schemas/PSTNType", "description": "The PSTN connection type set for the location." }, "routeType": { "$ref": "#/components/schemas/PremiseRouteType", "description": "Premise route type. This is required if connection type is LOCAL_GATEWAY." }, "routeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1RSVU5LL2Y1YTU4MzAwLTVmZTYtNGNjMS1hODA3LTRlN2E5OTMzN2Q0ZA", "description": "Premise route ID. This refers to either a Trunk ID or a Route Group ID. This field is optional but required if the connection type is LOCAL_GATEWAY." } } }, "PSTNServiceType": { "type": "string", "enum": [ "GEOGRAPHIC_NUMBERS", "TOLLFREE_NUMBERS", "BUSINESS_TEXTING", "CONTACT_CENTER", "SERVICE_NUMBERS", "NON_GEOGRAPHIC_NUMBERS", "MOBILE_NUMBERS" ], "description": " * `GEOGRAPHIC_NUMBERS` - PSTN service type for geographic numbers.\n * `TOLLFREE_NUMBERS` - PSTN service type for toll-free numbers.\n * `BUSINESS_TEXTING` - PSTN service type for business texting.\n * `CONTACT_CENTER` - PSTN service type for contact center services.\n * `SERVICE_NUMBERS` - PSTN service type for service numbers.\n * `NON_GEOGRAPHIC_NUMBERS` - PSTN service type for non-geographic numbers.\n * `MOBILE_NUMBERS` - PSTN service type for mobile numbers.\n" }, "AllowedServiceTypesFromHydra": { "type": "string", "enum": [ "MOBILE_NUMBERS" ], "description": " * `MOBILE_NUMBERS` - PSTN service type for mobile numbers.\n" }, "PSTNType": { "type": "string", "enum": [ "LOCAL_GATEWAY", "NON_INTEGRATED_CCP", "INTEGRATED_CCP", "CISCO_PSTN" ], "description": " * `LOCAL_GATEWAY` - PSTN connection type for a premises-based connection.\n * `NON_INTEGRATED_CCP` - PSTN connection type for a Non-Integrated Cloud Connected PSTN connection.\n * `INTEGRATED_CCP` - PSTN connection type for an Integrated Cloud Connected PSTN connection. Updating the location with this connection type is currently not supported using the API.\n * `CISCO_PSTN` - PSTN connection type for a Cisco PSTN connection. Updating the location with this connection type is currently not supported using the API.\n" }, "PremiseRouteType": { "type": "string", "enum": [ "ROUTE_GROUP", "TRUNK" ], "description": " * `ROUTE_GROUP` - A route group has been selected for premises-based PSTN.\n * `TRUNK` - A trunk group has been selected for premises-based PSTN.\n" }, "EmergencyAddressObject": { "type": "object", "description": "Object containing emergency address details.", "properties": { "address1": { "type": "string", "example": "3487 Chase Ave", "description": "Primary street information for the emergency address." }, "address2": { "type": "string", "example": "Apt 112", "description": "Apartment number or any other secondary information for the emergency address." }, "city": { "type": "string", "example": "Miami Beach", "description": "City for the emergency address." }, "state": { "type": "string", "example": "FL", "description": "State or Province or Region for the emergency address." }, "postalCode": { "type": "string", "example": "33140", "description": "Postal code for the emergency address." }, "country": { "type": "string", "example": "US", "description": "Country for the emergency address." } } }, "SuggestedEmergencyAddressObject": { "type": "object", "description": "Object containing suggested address details.", "properties": { "address1": { "type": "string", "example": "3487 Chase Ave", "description": "Primary street information for the emergency address." }, "address2": { "type": "string", "example": "Apt 112", "description": "Apartment number or any other secondary information for the emergency address." }, "city": { "type": "string", "example": "Miami Beach", "description": "City for the emergency address." }, "state": { "type": "string", "example": "FL", "description": "State or Province or Region for the emergency address." }, "postalCode": { "type": "string", "example": "33140", "description": "Postal code for the emergency address." }, "country": { "type": "string", "example": "US", "description": "Country for the emergency address." }, "meta": { "type": "object", "description": "Additional metadata for the emergency address.", "additionalProperties": { "type": "string" }, "example": { "houseNumber": "3487", "streetName": "Chase Ave", "country": "US", "state": "FL", "city": "Miami Beach", "zipCode": "33140", "latitude": "55.21913", "longitude": "-118.80616" } }, "errors": { "type": "array", "description": "List of errors encountered during address validation. Returned only when the input address was corrected and a suggested address was provided. Each error describes a specific issue with the original input.", "items": { "$ref": "#/components/schemas/AddressLookupErrorObject" }, "example": [ { "code": "PMP4004", "title": "INVALID_STREET_ADDRESS", "detail": "The street address provided is invalid." } ] } } }, "AddressLookupErrorObject": { "type": "object", "description": "Object containing details about an error encountered during address lookup.", "properties": { "code": { "type": "string", "description": "Error code.", "example": "PMP4004" }, "title": { "type": "string", "description": "Error title.", "example": "INVALID_STREET_ADDRESS" }, "detail": { "type": "string", "description": "Detailed error message.", "example": "The street address provided is invalid." } } }, "CDRResponse": { "type": "object", "properties": { "items": { "type": "array", "description": "Array of detailed call history records", "items": { "$ref": "#/components/schemas/CDR" } } }, "example": { "items": [ { "Report ID": "0a0c2eb7-f1f6-3326-86f9-565d2e11553d", "Report time": "2020-05-14T11:01:52.723Z", "Call ID": "SSE1101163211405201218829100@10.177.4.29", "User": "John Andersen", "Duration": 36 } ] } }, "CDR": { "type": "object", "properties": { "Answer indicator": { "type": "string", "example": "Yes", "description": "Whether the call leg was answered after a redirection. Possible values: \n\n- Yes\n\n- No\n\n- Yes-PostRedirection" }, "Answer time": { "type": "string", "example": "2020-05-14T11:01:17.551Z", "description": "The time the call was answered. Time is in UTC." }, "Answered": { "type": "string", "example": "true", "description": "Whether the call leg was answered. For example, in a hunt group case, some legs will be unanswered, and one will be answered." }, "Authorization code": { "type": "string", "example": "107", "description": "The authorization code admin created for a location or site for users to use. Collected by the Account/Authorization Codes or Enhanced Outgoing Calling Plan services." }, "Call ID": { "type": "string", "example": "SSE1101163211405201218829100@10.177.4.29", "description": "SIP Call ID used to identify the call. You can share the Call ID with Cisco TAC to help them pinpoint a call if necessary." }, "Caller ID number": { "type": "string", "example": "2003", "description": "Displays the calling party’s presentation number based on the caller ID setting from Control Hub. Can be a line/extension, location number, or a custom organization option.\n\n- The Caller ID number is not restricted to E.164 format and can vary based on system configuration.\n\n- For redirected calls, represents only the redirecting party's caller ID number." }, "Call outcome": { "type": "string", "example": "Success", "description": "Identifies whether the call was set up or disconnected normally. Possible values:\n\n- Success: Call is routed and disconnected successfully. Includes Normal, UserBusy, and NoAnswer scenarios.\n\n- Failure: Call failed with an internal or external error.\n\n- Refusal: Call is rejected because of call block or timeout.\nYou can find more information in the Call outcome reason field." }, "Call outcome reason": { "type": "string", "example": "Normal", "description": "Additional information about the Call outcome returned. Possible reasons are:\n\n- Success\n - Normal: Call is completed successfully.\n - UserBusy: Call is a success, but the user is busy.\n - NoAnswer: Call is a success, but the user didn't answer.\n\n- Refusal\n - CallRejected: Call attempt rejected at the recipient's end.\n - UnassignedNumber: The dialed number isn't assigned to any user or service.\n - SIP408: Request timed out because couldn’t find the user in time.\n - InternalRequestTimeout: Request timed out as the service couldn’t fulfill the request due to an unexpected condition.\n - Q850102ServerTimeout: Recovery on timer expiry/server timed out\n - NoUserResponse: No response from any end-user device/client\n - NoAnswerFromUser: No answer from the user.\n - SIP480: Callee or called party is currently unavailable.\n - SIP487: Request is terminated by bye or cancel.\n - TemporarilyUnavailable: User is temporarily unavailable.\n - AdminCallBlock: Call attempt is rejected due to the organization's call block list.\n - UserCallBlock: The call to user is rejected because the number is on the user's block list.\n - Unreachable: Unable to route the call to the desired destination.\n - LocalGatewayLoop: Loop detected between the local gateway and Webex Calling.\n - UserAbsent: User is temporarily unreachable or unavailable.\n\n- Failure\n - DestinationOutOfOrder: Service request failed as the destination can’t be reached or the interface to the destination isn’t functioning correctly.\n - SIP501: Invalid method and can’t identify the request method.\n - SIP503: Service is temporarily unavailable so can’t process the request.\n - ProtocolError: Unknown or unimplemented release code.\n - SIP606: Some aspect of the session description wasn't acceptable.\n - NoRouteToDestination: No route available to the destination\n - Internal: Failed because of internal Webex Calling reasons.\n - MaxConcurrentTerminatingAlertingRequestsExceeded: The number of simultaneous unanswered calls to a local gateway, for the same calling and called number, exceeded the limit.\n - RouteListCalls: When off-net route list call is blocked due to exceeding the Route List Calls license overage limit for the organization." }, "Call Recording Platform Name": { "type": "string", "example": "Webex", "description": "`Call recording Platform Name` and the recording platform can be \"DubberRecorder\", \"Webex\" or \"Unknown\" if the `Call Recording Platform Name` could not be fetched. Other supported vendors include \"Eleveo\", \"ASCTech\", \"MiaRec\", and \"Imagicle\"." }, "Call Recording Result": { "type": "string", "example": "successful", "description": "Status of the recorded media: \"successful\", \"failed\", or \"successful but not kept.\" " }, "Call Recording Trigger": { "type": "string", "example": "always", "description": "User's recording mode for the call. The values for this field are \"always\", always-pause-resume\", \"on-demand\", or \"on-demand-user-start.\" " }, "Call transfer Time": { "type": "string", "example": "2023-06-05T18:21:29.707Z", "description": "Indicates the time at which the call transfer service was invoked during the call. The invocation time is shown using the UTC/GMT time zone format." }, "Call type": { "type": "string", "example": "SIP_ENTERPRISE", "description": "Type of call. For example:\n\n- SIP_MEETING\n\n- SIP_INTERNATIONAL\n\n- SIP_SHORTCODE\n\n- SIP_INBOUND\n\n- UNKNOWN\n\n- SIP_EMERGENCY\n\n- SIP_PREMIUM\n\n- SIP_ENTERPRISE\n\n- SIP_TOLLFREE\n\n- SIP_NATIONAL\n\n- SIP_MOBILE" }, "Called line ID": { "type": "string", "example": "CALLEDCLIDGOESHERE", "description": "For incoming calls, the calling line ID of the user. For outgoing calls, it's the calling line ID of the called party." }, "Called number": { "type": "string", "example": "2002", "description": "For incoming calls, the telephone number of the user. For outgoing calls, it's the telephone number of the called party." }, "Calling line ID": { "type": "string", "example": "YOURCLIDGOESHERE", "description": "For incoming calls, the calling line ID of the calling party. For outgoing calls, it's the calling line ID of the user." }, "Calling number": { "type": "string", "example": "2001", "description": "For incoming calls, the telephone number of the calling party. For outgoing calls, it's the telephone number of the user." }, "Client type": { "type": "string", "example": "SIP_TOLLFREE", "description": "The type of client that the user (creating this record) is using to make or receive the call. For example:\n\n- SIP\n\n- WXC_CLIENT\n\n- WXC_THIRD_PARTY\n\n- TEAMS_WXC_CLIENT\n\n- WXC_DEVICE\n\n- WXC_SIP_GW" }, "Client version": { "type": "string", "example": "1.0.2.3", "description": "The version of the client that the user (creating this record) is using to make or receive the call." }, "Correlation ID": { "type": "string", "example": "8e8e1dc7-4f25-4595-b9c7-26237f824535", "description": "Correlation ID to tie together multiple call legs of the same call session." }, "Department ID": { "type": "string", "example": "4370c763-81ec-403b-aba3-626a7b1cf264", "description": "A unique identifier for the user's department name." }, "Device MAC": { "type": "string", "example": "6C710D8ABC10", "description": "The MAC address of the device, if known." }, "Device owner UUID": { "type": "string", "example": "1e9e14c7-4f25-4595-b9c7-26237f824536", "description": "When calls are made using multi-line or shared line options, this field represents the unique identifier of the device owner. It holds the UUID from the Cisco Common Identity associated with the user. For example, if Alice has a device assigned and makes or receives a call from Bob's line, the CDR will show Alice's UUID as the device owner. \n\n- Only set when the device owner is different than the owner of the device who made/received the call." }, "Dialed digits": { "type": "string", "example": "1246", "description": "The keypad digits as dialed by the user, before pre-translations. \nThis field reports multiple call dial possibilities:\n\n- Feature access codes (FAC) used for invoking features such as Last Number Redial or a Call Return.\n\n- An extension that got dialed and a mis-dialed keypad digit from a device/app.\n\n- When a user must dial an outside access code (for example, 9+) before dialing a number, this access code is also reported, as well as the digits dialed thereafter. \nNote that when pre-translations have no effect, the dialed digits field contains the same data as the called number field. \nThis field is only used for originating (outgoing) Calls and is not available for terminating (incoming) Calls." }, "Direction": { "type": "string", "example": "ORIGINATING", "description": "Whether the call was inbound or outbound. The possible values are:\n\n- ORIGINATING\n\n- TERMINATING" }, "Duration": { "type": "number", "example": 36, "description": "The length of the call in seconds." }, "External caller ID number": { "type": "string", "example": "2004", "description": "Set only when the control hub External Caller ID phone number is a location number or another number from the organization. Not set when \"Direct line/Ext\" options are selected. \n\n- Only included in originating CDRs (not present in terminating CDRs).\n\n- Not set for calls that are redirected" }, "Final local SessionID": { "type": "string", "example": "82bb753300105000a0000242be131609", "description": "Each call consists of four UUIDs known as Local Session ID, Final Local Session ID, Remote Session ID and Final Remote Session ID.\n\n- The Session ID comprises a Universally Unique Identifier (UUID) for each user-agent participating in a call.\n\n- It can be used for end-to-end tracking of a SIP session in IP-based multimedia communication systems in compliance with RFC 7206 and draft-ietf-insipid-session-id-15.\n\n- The Local SessionID is generated from the Originating user agent.\n\n- The Remote SessionID is generated from the Terminating user agent.\n\n- The Final Local Session ID has the value of the Local Session ID at the end of the call.\n\n- The Final Remote Session ID has the value of the Remote Session ID at the end of the call." }, "Final remote SessionID": { "type": "string", "example": "cfe67b8a00105000a0000242be131609", "description": "Each call consists of four UUIDs known as Local Session ID, Final Local Session ID, Remote Session ID and Final Remote Session ID.\n\n- The Session ID comprises a Universally Unique Identifier (UUID) for each user-agent participating in a call.\n\n- It can be used for end-to-end tracking of a SIP session in IP-based multimedia communication systems in compliance with RFC 7206 and draft-ietf-insipid-session-id-15.\n\n- The Local SessionID is generated from the Originating user agent.\n\n- The Remote SessionID is generated from the Terminating user agent.\n\n- The Final Local Session ID has the value of the Local Session ID at the end of the call.\n\n- The Final Remote Session ID has the value of the Remote Session ID at the end of the call." }, "Inbound trunk": { "type": "string", "example": "InTrunk", "description": "Inbound trunk may be presented in Originating and Terminating records." }, "International country": { "type": "string", "example": "US", "description": "The country code of the dialed number. This is only populated for international calls." }, "Local call ID": { "type": "string", "example": "113104021:0", "description": "A unique identifier that is used to correlate CDRs and call legs with each other. This ID is used in conjunction with:\n\n- Remote call ID: To identify the remote CDR of a call leg.\n\n- Transfer related call ID: To identify the call transferred leg." }, "Local SessionID": { "type": "string", "example": "82bb753300105000a0000242be131609", "description": "Each call consists of four UUIDs known as Local Session ID, Final Local Session ID, Remote Session ID and Final Remote Session ID.\n\n- The Session ID comprises a Universally Unique Identifier (UUID) for each user-agent participating in a call.\n\n- It can be used for end-to-end tracking of a SIP session in IP-based multimedia communication systems in compliance with RFC 7206 and draft-ietf-insipid-session-id-15.\n\n- The Local SessionID is generated from the Originating user agent.\n\n- The Remote SessionID is generated from the Terminating user agent.\n\n- The Final Local Session ID has the value of the Local Session ID at the end of the call.\n\n- The Final Remote Session ID has the value of the Remote Session ID at the end of the call." }, "Location": { "type": "string", "example": "Richardson", "description": "Location of the report." }, "Model": { "type": "string", "example": "8851-3PCC", "description": "The device model type the user is using to make or receive the call. " }, "Network call ID": { "type": "string", "example": "BW2356451711108231501755806@10.21.0.192", "description": "A unique identifier that shows if other CDRs are in the same call leg. Two CDRs belong in the same call leg if they have the same Network call ID." }, "Org UUID": { "type": "string", "example": "408806bc-a013-4a4b-9a24-85e374912102", "description": "A unique identifier for the organization that made the call. This is a unique identifier across Cisco." }, "Original reason": { "type": "string", "example": "UserBusy", "description": "Call redirection reason for the original called number. For example:\n\n- Unconditional: Call Forward Always (CFA) service, Group night forwarding.\n\n- NoAnswer: The party was not available to take the call. CF/busy or Voicemail/busy.\n\n- Deflection: Indication that a call was redirected. Possible causes could be Blind transfer, Auto attendant transfer, Transfer out of a Call center etc.\n\n- TimeOfDay: Automated redirection based on the time of the call. Call Forwarding Selective, Call Forwarding mode-based, or Group Night.\n\n- UserBusy: DND enabled or the user willingly declined the call. CF/busy or voicemail/busy.\n\n- FollowMe: Automated redirection to a personal redirecting service which could be Simultaneous Ringing, Sequential Ringing, Office Anywhere, or Remote Office.\n\n- CallQueue: A call center call to an agent or a user (a member of the call queue).\n\n- HuntGroup: A hunt-group-based call to an agent or a user (denotes a member of the hunt group).\n\n- Unavailable: To voicemail, when the user has no app or device.\n\n- Unrecognized: Unable to determine the reason.\n\n- Unknown: Call forward by phone with no reason.\n\n- ExplicitIdxxx: Enterprise voice portal redirection to the user’s home voice portal. The “xxx” portion is the digits collected from the caller, identifying the target mailbox (Extension or DN).\n\n- ImplicitId: Indicates an enterprise voice portal redirection to the user’s home voice portal." }, "OS type": { "type": "string", "example": "na", "description": "The operating system that the app was running on, if available." }, "Outbound trunk": { "type": "string", "example": "OutTrunk", "description": "Outbound trunk may be presented in Originating and Terminating records." }, "Public Called IP Address": { "type": "string", "example": "0.0.0.0", "description": "Public IP address of the terminating device or application that is assigned with an Internet Telephony Number." }, "Public Calling IP Address": { "type": "string", "example": "0.0.0.0", "description": "Public IP address of the device or application making a call that is assigned with an Internet Telephony Number." }, "Release time": { "type": "string", "example": "2023-10-12 21:22:32.621", "description": "The time the call was finished, in UTC." }, "Ring duration": { "type": "number", "example": 23, "description": "The length of ringing before the call was answered or timed out, in seconds." }, "Redirecting party UUID": { "type": "string", "example": "afgh", "description": "When a call is redirected one or more times, indicates the unique identifier of the last redirecting party user or service accountable for the CDR. Holds the value of the UUID contained in the Cisco Common Identity associated with a user or service. " }, "Redirect reason": { "type": "string", "example": "Unavailable", "description": "Call Redirection Reason for the redirecting number. For example:\n\n- Unconditional: Call Forward Always (CFA) service.\n\n- NoAnswer: The party was not available to take the call. CF/busy or Voicemail/busy.\n\n- Deflection: Indication that a call was redirected. Possible causes could be Blind transfer, Auto attendant transfer, Transfer out of a Call center etc.\n\n- TimeOfDay: Automated redirection based on the time of the call. Call Forwarding Selective, Call Forwarding Mode-Based, or Group Night\n\n- UserBusy: DND enabled or user willingly declined the call. CF/busy or Voicemail/busy.\n\n- FollowMe: Automated redirection to a personal redirecting service which could be Simultaneous Ringing, Sequential Ringing, Office Anywhere, or Remote Office.\n\n- CallQueue: A call center call to an agent or a user (denotes a member of the call queue).\n\n- HuntGroup: A hunt-group-based call to an agent or a user (denotes a member of the hunt group).\n\n- Unavailable: To voicemail, when the user has no app or device.\n\n- Unrecognized: Unable to determine the reason.\n\n- Unknown: Call forward by phone with no reason.\n\n- ExplicitIdxxx: Enterprise voice portal redirection to the user’s home voice portal. The “xxx” portion is the digits collected from the caller, identifying the target mailbox (Extension or DN).\n\n- ImplicitId: Indicates an enterprise voice portal redirection to the user’s home voice portal." }, "Redirecting number": { "type": "string", "example": "+13343822691", "description": "When the call has been redirected one or more times, this field reports the last redirecting number. Identifies who last redirected the call. Only applies to call scenarios such as transfer, call forwarded calls, simultaneous rings, etc." }, "Related call ID": { "type": "string", "example": "760583469:0", "description": "Call identifier of a different call that was created by this call because of a service activation. The value is the same as the Local call ID field of the related call. You can use this field to correlate multiple call legs connected through other services." }, "Related reason": { "type": "string", "example": "CallQueue", "description": "Indicates a trigger that led to a change in the call presence. The trigger could be for this particular call or redirected via a different call. For example:\n\n- ConsultativeTransfer: While on a call, the call was transferred to another user by announcing it first. meaning the person was given a heads up or asked if they're interested in taking the call and then transferred.\n\n- CallForwardModeBased: Calls are forwarded using the mode-based management feature option.\n\n- CallForwardSelective: Call Forward as per the defined schedule. Might be based on factors like a specific time, specific callers or to a VM. It always takes precedence over Call Forwarding.\n\n- CallForwardAlways: Calls are unconditionally forwarded to a defined phone number or to VM.\n\n- CallForwardNoAnswer: The party was not available to take the call.\n\n- CallQueue: A call center call to an agent or a user (denotes a member of the call queue).\n\n- HuntGroup: A hunt group based call to an agent or a user (denotes a member of the hunt group).\n\n- CallPickup: The user part of a pickup group or pickup attempted by this user against a ringing call for a different user or extension.\n\n- CalllPark: An ongoing call was parked, assigned with a parked number (not the user’s phone number).\n\n- CallParkRetrieve: Call park retrieval attempt by the user, either for a different extension or against the user’s own extension.\n\n- Deflection: Indication that a call was redirected. Possible causes could be Blind transfer, Auto-attendant transfer, Transfer out of a Call center, etc.\n\n- FaxDeposit: Indicates a FAX was transmitted to the FAX service.\n\n- PushNotificationRetrieval: Push notification feature usage indication. Means that a push notification was sent to wake up the client and get ready to receive a call.\n\n- BargeIn: Indicates the user barged-in to someone else’s call.\n\n- VoiceXMLScriptTermination: Route Point feature usage indication.\n\n- AnywhereLocation: Indicates call origination towards the single number reach location.\n\n- AnywherePortal: Indicates call origination towards the “user” identified by the single number reach portal.\n\n- Unrecognized: Unable to determine the reason.\n\n- CallForwardBusy: The user willingly declined the call, or DND was enabled that then redirected the call to a defined phone number or voice mail.\n\n- CallForwardNotReachable: Hunt group redirection for an agent who is not reachable.\n\n- CallRetrieve: The user triggered the call retrieve option to pick up a call that was parked.\n\n- CallRecording: The user initiated the call recording service that triggered Start/Pause/Resume/Stop recording options.\n\n- DirectedCallPickup: Indicates this user belonged to a call pickup group who answered the call or answered when another member of the call pickup group in a location was busy.\n\n- Executive: The user has been configured using the Executive/Executive assistant service who is allowed to handle calls on someone else's behalf. Also known as Boss-admin.\n\n- ExecutiveAssistantInitiateCall: The user has been configured as an Executive assistant who placed or initiated the call on someone else’s (Boss admin's) behalf.\n\n- ExecutiveAssistantDivert: The user has been configured as an Executive assistant who had call forwarding enabled to a defined phone number.\n\n- ExecutiveForward: The Executive (Boss-admin) had a call forward setting enabled to a defined number. Generally triggered when an ExecutiveAssistant did not pick a call.\n\n- ExecutiveAssistantCallPush: The user has been configured as an Executive assistant who received a call and pushed that call out (using #63) to the Executive’s (Boss-admin's) number.\n\n- Remote Office: Indicates the call was made to reach the remote location of the user.\n\n- RoutePoint: Indicates an incoming and queued call to an agent (for incoming calls to the route point).\n\n- SequentialRing: Indicates this user is in the list of phone numbers, which are alerted sequentially upon receiving an incoming call that matches a set of criteria.\n\n- SimultaneousRingPersonal: Indicates this user was in the list of multiple destinations that are to ring simultaneously when any calls are received on their phone number (the first destination answered is connected).\n\n- CCMonitoringBI: The indication that a Call Queue supervisor invoked silent monitoring." }, "Releasing party": { "type": "string", "example": "Remote", "description": "Indicates which party released the call first. The possible values are:\n\n- Local: Used when the local user has released the call first.\n\n- Remote: Used when the far-end party releases the call first.\n\n- Unknown: Used when the call has partial information or is unable to gather enough information about the party who released the call. It could be because of situations like force lock or because of a session audit failure." }, "Remote call ID": { "type": "string", "example": "113103977:0", "description": "A unique identifier that is used to correlate CDRs and call legs with each other. This ID is used in conjunction with Local call ID to identity the local CDR of a call leg." }, "Remote SessionID": { "type": "string", "example": "6bf2f47800105000a0000242be13160a", "description": "Each call consists of four UUIDs known as Local Session ID, Final Local Session ID, Remote Session ID and Final Remote Session ID.\n\n- The Session ID comprises a Universally Unique Identifier (UUID) for each user-agent participating in a call.\n\n- It can be used for end-to-end tracking of a SIP session in IP-based multimedia communication systems in compliance with RFC 7206 and draft-ietf-insipid-session-id-15.\n\n- The Local SessionID is generated from the Originating user agent.\n\n- The Remote SessionID is generated from the Terminating user agent.\n\n- The Final Local Session ID has the value of the Local Session ID at the end of the call.\n\n- The Final Remote Session ID has the value of the Remote Session ID at the end of the call." }, "Report ID": { "type": "string", "example": "0a0c2eb7-f1f6-3326-86f9-565d2e11553d", "description": "A unique ID for this particular record. This can be used when processing records to aid in deduplication." }, "Report time": { "type": "string", "example": "2020-05-14T11:01:52.723Z", "description": "The time this report was created. Time is in UTC." }, "Route group": { "type": "string", "example": "RouteGrpAA", "description": "If present, this field's only reported in Originating records. Route group identifies the route group used for outbound calls routed via a route group to Premises-based PSTN or an on-prem deployment integrated with Webex Calling (dial plan or unknown extension)." }, "Route list calls overage": { "type": "string", "example": "2", "description": "This field is reported whenever an off-net route list call is made or received that exceeds the Route List Calls license volume for the organization. The value indicates the number of bursting calls (calls over the licensed volume) at the time the call was made or received." }, "Site main number": { "type": "string", "example": "+14692281000", "description": "The main number for the user's site where the call was made or received." }, "Site timezone": { "type": "string", "example": "-300", "description": "Site timezone is the offset in minutes from UTC time of the user's timezone." }, "Site UUID": { "type": "string", "example": "474d4f70-4ef5-4d52-9e1d-b207086629e0", "description": "A unique identifier for the site associated with the call. Unique across Cisco products." }, "Start time": { "type": "string", "example": "2020-05-14T11:01:16.545Z", "description": "This is the start time of the call, the answer time may be slightly after this. Time is in UTC. " }, "Sub client type": { "type": "string", "example": "MOBILE_NETWORK", "description": "If the call is TO or FROM a mobile phone using Webex Go, the Client type will show SIP, and Sub client type will show MOBILE_NETWORK." }, "Transfer related call ID": { "type": "string", "example": "2340586843:0A", "description": "Call identifier of a different call that was involved in the transfer. You can share this ID with Cisco TAC to help them pinpoint parties who were involved in the call transfer." }, "User": { "type": "string", "example": "John Andersen", "description": "Represents the display name for the user type involved in the call, such as User, Workspace, Virtual Line, Auto Attendant, or Call Queue. " }, "User number": { "type": "string", "example": "+81546668399", "description": "Represents the E.164 number of the user generating a CDR. If the user has no number assigned to them, then their extension will be displayed instead." }, "User type": { "type": "string", "example": "User", "description": "The type of user (user or workspace) that made or received the call. For example:\n\n- AutomatedAttendantVideo: Automated Attendant Video IVR group service.\n\n- Anchor: A Webex Calling user number made or received that is integrated with Webex Contact Center. An \"anchor\" is created to facilitate the call routing flow between WxC and WxCC.\n\n- BroadworksAnywhere: Single number reach (Office anywhere) service.\n\n- VoiceMailRetrieval: Voice Mail group service.\n\n- LocalGateway: A local gateway-based user who made or received the call.\n\n- HuntGroup: A hunt group based service.\n\n- GroupPaging: One way call or group page made for target users.\n\n- User: The direct user who made or received the call.\n\n- VoiceMailGroup: Shared voicemail or inbound FAX destination for users.\n\n- CallCenterStandard: A call queue-based service.\n\n- VoiceXML: Call added back to the Route Point queue after script termination.\n\n- RoutePoint: Route Point call to an agent (for an incoming call to the routing point).\n\n- Place: A workspace-based user who made or received the call.\n\n- VirtuaLline: Call made or received by a virtual line user using the Multi-line option in Webex Calling." }, "User UUID": { "type": "string", "example": "47f0d0c2-f05a-44cc-870d-7a3daf859c6c", "description": "A unique identifier for the user associated with the call. This is a unique identifier across Cisco products." }, "PSTN Vendor Name": { "type": "string", "example": "Cisco Calling Plans", "description": "Displays the name of the vendor from which one has purchased PSTN service for a specific country. For example:\n\n- If purchased from Cisco PSTN, the field would display \"Cisco Calling Plans\"\n\n- If purchased from Cisco Cloud Connected PSTN Partners, the field would list names such as \"Tata\", \"IntelePeer\", \"KDDI\", etc." }, "PSTN Legal Entity": { "type": "string", "example": "Broadsoft Adaption LLC", "description": "This field shows the regulated business entity registered to provide PSTN service in a particular country. It is exclusively used for Cisco Calling Plans.\n\n- Note: The name of the regulated entity may vary within a region and across different regions." }, "PSTN Vendor Org ID": { "type": "string", "example": "0b43a1a8-2efd-4892-b301-e7a5a6d2c884", "description": "This field displays the organization's Universal Unique Identifier (UUID) for Cisco Calling Plans, which is unique across various regions." }, "PSTN Provider ID": { "type": "string", "example": "e8e730a0-ee04-4df4-90a6-b7072aec9062", "description": "This field represents an immutable UUID, as defined by Cisco, for a PSTN provider partner. It uniquely identifies the entity that has provided PSTN service in that country." }, "Original Called Party UUID": { "type": "string", "example": "e8e730a0-ee04-4df4-90a6-b7072aec9062", "description": "When the call is redirected one or more times, this field represents the unique identifier of the first redirecting party. This might be a user, service, workspace, or virtual line that’s accountable for the CDRs. The field holds the value of the UUID contained in the Cisco Common Identity associated with a user, service, workspace, or virtual line." }, "Recall Type": { "type": "string", "example": "call park", "description": "This field indicates that the call is a call park recall. A call park recall occurs when a parked call is not retrieved within the provisioned recall time. In such cases, the system attempts to return the parked call to the user who originally parked it or to an alternate recall destination, which can only be a hunt group. The recall attempt may either succeed or fail, and if it fails, the parked call remains unretrieved." }, "Hold Duration": { "type": "number", "example": 10, "description": "Indicates the total duration of call hold time in seconds. This is the floor value of the calculated hold duration" }, "Auto Attendant Key Pressed": { "type": "string", "example": "5", "description": "Indicates the last key pressed value by the caller." }, "Queue Type": { "type": "string", "example": "Customer Assist", "description": "The field represents the type of call queue service.\n\nExample:\n\nQueue Type = Customer Assist, if it’s a customer assist based call queue\n\nQueue Type = Call Queue, if it’s a calling > feature based call queue" }, "Answered Elsewhere": { "type": "string", "example": "Yes", "description": "This field is present in the terminating CDR when an incoming call is answered by a different user, workspace, virtual line, or service.\n\nExample: Set to Answered Elsewhere = Yes, for a Hunt Group agent's call when simultaneous routing is in use and another agent answers the call." }, "Caller Reputation Score": { "type": "string", "example": "2.5", "description": "This field contains the score received from the caller reputation provider. The score ranges from 0.0 to 5.0. If the provider doesn’t send a score, the system omits this field." }, "Caller Reputation Service Result": { "type": "string", "example": "allowed", "description": "This field records the outcome of the Caller Reputation Service and appears only in terminating CDRs. The field can contain the following values:\n\nallow — Set when the caller’s reputation score meets or exceeds the higher threshold, or if an error occurs while obtaining the reputation score from the provider.\n\ncaptcha-allow — Set when the caller’s reputation score falls between the lower and higher thresholds and the caller successfully completes the captcha challenge.\n\ncaptcha-block — Set when the caller’s reputation score falls between the lower and higher thresholds and the caller fails or abandons the captcha challenge.\n\nblock — Set when the caller’s reputation score is below the lower threshold." }, "Caller Reputation Score Reason": { "type": "string", "example": "OK", "description": "This field indicates the reason for the reputation score is assigned for a call. This field contains the reason value provided by the caller reputation provider in the call analysis request. If the score couldn’t be obtained from the provider due to error conditions, then the score reason specifies the particular error." }, "Interaction ID": { "type": "string", "example": "a98c732b-36ac-4d20-87b2-fec4e0a69209", "description": "A unique identifier used to tie together multiple call patterns linked by a service interaction.\n\nExample for consult and transfer call flow— When a user places an active call on hold, initiates another call from the same app or device, and then transfers the original call, both calls share the same Interaction ID." }, "WxCC consult merge status": { "type": "string", "example": "Yes", "description": "This field specifies whether Webex Contact Center (WxCC) has performed a transfer or conference operation on a consultative call, indicating that the consulted party was connected to the customer call.\n\nIf the value is set to \"No\", the call was initiated by WxCC as part of an agent's consult action, but the consulted leg was not transferred or conferenced into the customer call leg.\n\nIf the value is set to \"Yes\", the call was initiated by WxCC as part of an agent's consult action, and the consulted leg was transferred or conferenced into the customer call leg.\n\nIf the value is set to \"NA\", the call leg is not associated with an agent consultative call." }, "ELIN": { "type": "string", "example": "+14085551234", "description": "When set, this is the Emergency Location Identification Number (ELIN) used for the emergency call or callback. The ELIN may be an ELIN from the location's pool (numbers the customer has configured as ELINs), or it may be the workspace's own number which was used as ECBN for the emergency call and treated as an ELIN." }, "Emergency number source": { "type": "string", "example": "ELIN Pool", "description": "Indicates the source of the number used for an emergency call or emergency callback. The field can contain the following values:\n\nELIN Pool—ELIN obtained from the location's pool.\n\nWorkspace ELIN—Workspace's number obtained through ECBN used as ELIN.\n\nWorkspace ELIN Fallback—Workspace's number obtained through ECBN used as ELIN due to ELIN fallback. This value is present only in originating CDRs.\n\nELIN fallback occurs when ELIN use is allowed and the location has ELINs provisioned, but no ELIN is currently available in the location's pool.\n\nECBN Fallback—ECBN is used due to ELIN fallback. This value is present only in originating CDRs.\n\nECBN—ECBN is used when the location has no ELINs provisioned, ELIN usage is not allowed for the call, or callback is not to an ELIN." } } }, "ApplicationsSetting": { "type": "object", "required": [ "ringDevicesForClickToDialCallsEnabled", "ringDevicesForGroupPageEnabled", "ringDevicesForCallParkEnabled", "browserClientEnabled", "desktopClientEnabled", "tabletClientEnabled", "mobileClientEnabled", "availableLineCount" ], "properties": { "ringDevicesForClickToDialCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for outbound Click to Dial calls." }, "ringDevicesForGroupPageEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for inbound Group Pages." }, "ringDevicesForCallParkEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for Call Park recalled." }, "browserClientEnabled": { "type": "boolean", "example": true, "description": "Indicates that the browser Webex Calling application is enabled for use." }, "browserClientId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OLzQyNDM3YzY5LTBlNmYtNGMxZS1iMTJhLTFjNGYxZTk5NDRjMA", "description": "Device ID of WebRTC client. Returns only if `browserClientEnabled` is true." }, "desktopClientEnabled": { "type": "boolean", "example": true, "description": "Indicates that the desktop Webex Calling application is enabled for use." }, "desktopClientId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "description": "Device ID of Desktop client. Returns only if `desktopClientEnabled` is true." }, "tabletClientEnabled": { "type": "boolean", "example": true, "description": "Indicates that the tablet Webex Calling application is enabled for use." }, "tabletClientId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "description": "Device ID of Tablet client. Returns only if `tabletClientEnabled` is true." }, "mobileClientEnabled": { "type": "boolean", "example": true, "description": "Indicates that the mobile Webex Calling application is enabled for use." }, "mobileClientId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL2IwOWYzMDlhLTY0NDItNDRiYi05OGI2LWEzNTEwYjFhNTJmZg", "description": "Device ID of Mobile client. Returns only if `mobileClientEnabled` is true." }, "availableLineCount": { "type": "number", "example": 35, "description": "Number of available device licenses for assigning devices/apps." } }, "description": "Application services settings for a user. Application services let you determine the ringing behavior for calls made to people in certain scenarios. You can also specify which devices can download the Webex Calling app." }, "ApplicationsSettingPut": { "type": "object", "properties": { "ringDevicesForClickToDialCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for outbound Click to Dial calls." }, "ringDevicesForGroupPageEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for inbound Group Pages." }, "ringDevicesForCallParkEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates to ring devices for Call Park recalled." }, "browserClientEnabled": { "type": "boolean", "example": true, "description": "If `true`, the browser Webex Calling application is enabled for use." }, "desktopClientEnabled": { "type": "boolean", "example": true, "description": "If `true`, the desktop Webex Calling application is enabled for use." }, "tabletClientEnabled": { "type": "boolean", "example": true, "description": "If `true`, the tablet Webex Calling application is enabled for use." }, "mobileClientEnabled": { "type": "boolean", "example": true, "description": "If `true`, the mobile Webex Calling application is enabled for use." } } }, "CallInterceptInfo": { "type": "object", "required": [ "enabled", "incoming", "outgoing" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call intercept is enabled." }, "incoming": { "type": "object", "required": [ "type", "voicemailEnabled", "announcements" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "`INTERCEPT_ALL` indicated incoming calls are intercepted.\n * `INTERCEPT_ALL` - Incoming calls are routed as the destination and voicemail specify.\n * `ALLOW_ALL` - Incoming calls are not intercepted.\n" }, "voicemailEnabled": { "type": "boolean", "description": "If `true`, the destination will be the virtual line's voicemail." }, "announcements": { "type": "object", "required": [ "greeting", "filename", "newNumber", "zeroTransfer" ], "properties": { "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "`DEFAULT` indicates that a system default message will be placed when incoming calls are intercepted.\n * `CUSTOM` - A custom greeting is played when incoming calls are intercepted.\n * `DEFAULT` - A System default greeting will be played when incoming calls are intercepted.\n" }, "filename": { "type": "string", "example": "incoming.wav", "description": "Filename of custom greeting; will be an empty string if no custom greeting has been uploaded." }, "newNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will hear this new number when the call is intercepted." }, "destination": { "type": "string", "example": "2225551212", "description": "New number caller will hear announced." } }, "description": "Information about the new number announcement." }, "zeroTransfer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will be transferred to destination of when zero (0) is pressed." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination to which caller will be transferred when zero is pressed." } }, "description": "Information about how the call will be handled if zero (0) is pressed." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." }, "outgoing": { "type": "object", "required": [ "type", "transferEnabled" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "`INTERCEPT_ALL` indicated all outgoing calls are intercepted.\n * `INTERCEPT_ALL` - Outgoing calls are routed as the destination and voicemail specify.\n * `ALLOW_LOCAL_ONLY` - Only non-local calls are intercepted.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "2225551212", "description": "Number to which the outbound call be transferred." } }, "description": "Settings related to how outgoing calls are handled when the intercept feature is enabled." } } }, "CallInterceptPut": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the intercept feature is enabled." }, "incoming": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "`INTERCEPT_ALL` indicated incoming calls are intercepted.\n * `INTERCEPT_ALL` - Incoming calls are routed as the destination and voicemail specify.\n * `ALLOW_ALL` - Incoming calls are not intercepted.\n" }, "voicemailEnabled": { "type": "boolean", "description": "If `true`, the destination will be the virtual line's voicemail." }, "announcements": { "type": "object", "properties": { "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "`DEFAULT` indicates that a system default message will be placed when incoming calls are intercepted.\n * `CUSTOM` - A custom greeting is played when incoming calls are intercepted.\n * `DEFAULT` - A System default greeting is played when incoming calls are intercepted.\n" }, "newNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will hear this new number when a call is intercepted." }, "destination": { "type": "string", "example": "2225551212", "description": "New number caller will hear announced." } }, "description": "Information about the new number announcement." }, "zeroTransfer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will be transferred to destination of when zero (0) is pressed." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination to which caller will be transferred when zero is pressed." } }, "description": "Information about how call will be handled if zero (0) is pressed." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." }, "outgoing": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "`INTERCEPT_ALL` indicated all outgoing calls are intercepted.\n * `INTERCEPT_ALL` - Outgoing calls are routed as the destination and voicemail specify.\n * `ALLOW_LOCAL_ONLY` - Only non-local calls are intercepted.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "2225551212", "description": "Number to which the outbound call will be transferred." } }, "description": "Settings related to how outgoing calls are handled when the intercept feature is enabled." } } }, "CallRecordingInfo": { "type": "object", "required": [ "enabled", "record", "recordVoicemailEnabled", "notification", "repeat", "serviceProvider", "externalGroup", "externalIdentifier", "startStopAnnouncement" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call recording is enabled." }, "record": { "type": "string", "enum": [ "Always", "Never", "Always with Pause/Resume", "On Demand with User Initiated Start" ], "description": "Call recording scenario.\n * `Always` - Incoming and outgoing calls will be recorded with no control to start, stop, pause, or resume.\n * `Never` - Calls will not be recorded.\n * `Always with Pause/Resume` - Calls are always recorded, but user can pause or resume the recording. Stop recording is not supported.\n * `On Demand with User Initiated Start` - Records only the portion of the call after the recording start (`*44`) has been entered. Pause, resume, and stop controls are supported.\n" }, "recordVoicemailEnabled": { "type": "boolean", "description": "When `true`, voicemail messages are also recorded." }, "notification": { "type": "object", "required": [ "type", "enabled" ], "properties": { "type": { "type": "string", "enum": [ "None", "Beep", "Play Announcement" ], "description": "Type of pause/resume notification.\n * `None` - No notification sound played when call recording is paused or resumed.\n * `Beep` - A beep sound is played when call recording is paused or resumed.\n * `Play Announcement` - A verbal announcement is played when call recording is paused or resumed.\n" }, "enabled": { "type": "boolean", "description": "`true` when the notification feature is in effect. `false` indicates notification is disabled." } }, "description": "Pause/resume notification settings." }, "repeat": { "type": "object", "required": [ "interval", "enabled" ], "properties": { "interval": { "type": "number", "example": 15, "description": "Interval at which warning tone \"beep\" will be played. This interval is an integer from 10 to 1800 seconds" }, "enabled": { "type": "boolean", "description": "`true` when ongoing call recording tone will be played at the designated interval. `false` indicates no warning tone will be played." } }, "description": "Beep sound plays periodically." }, "serviceProvider": { "type": "string", "example": "WSWYZ25455", "description": "Name of the service provider providing call recording service." }, "externalGroup": { "type": "string", "example": "WSWYZ25455L31161", "description": "Group utilized by the service provider providing call recording service." }, "externalIdentifier": { "type": "string", "example": "a34iidrh5o@64941297.int10.bcld.webex.com", "description": "Unique person identifier utilized by the service provider providing call recording service." }, "startStopAnnouncement": { "type": "object", "required": [ "internalCallsEnabled", "pstnCallsEnabled" ], "properties": { "internalCallsEnabled": { "type": "boolean", "description": "When `true`, an announcement is played when call recording starts and an announcement is played when call recording ends for internal calls." }, "pstnCallsEnabled": { "type": "boolean", "description": "When `true`, an announcement is played when call recording starts and an announcement is played when call recording ends for PSTN calls." } }, "description": "Call Recording starts and stops announcement settings." } } }, "CallRecordingPut": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call recording is enabled." }, "record": { "type": "string", "enum": [ "Always", "Never", "Always with Pause/Resume", "On Demand with User Initiated Start" ], "description": "Call recording scenario.\n * `Always` - Incoming and outgoing calls will be recorded with no control to start, stop, pause, or resume.\n * `Never` - Calls will not be recorded.\n * `Always with Pause/Resume` - Calls are always recorded, but user can pause or resume the recording. Stop recording is not supported.\n * `On Demand with User Initiated Start` - Records only the portion of the call after the recording start (`*44`) has been entered. Pause, resume, and stop controls are supported.\n" }, "recordVoicemailEnabled": { "type": "boolean", "description": "When `true`, voicemail messages are also recorded." }, "notification": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "Beep", "Play Announcement" ], "description": "Type of pause/resume notification. If `enabled` is `true` and `type` is not provided then `type` is set to `Beep` by default.\n * `Beep` - A beep sound is played when call recording is paused or resumed.\n * `Play Announcement` - A verbal announcement is played when call recording is paused or resumed.\n" }, "enabled": { "type": "boolean", "description": "`true` when notification feature is in effect. `false` indicates notification is disabled." } }, "description": "Pause/resume notification settings." }, "repeat": { "type": "object", "properties": { "interval": { "type": "number", "example": 15, "description": "Interval at which warning tone \"beep\" will be played. This interval is an integer from 10 to 1800 seconds" }, "enabled": { "type": "boolean", "description": "`true` when ongoing call recording tone will be played at the designated interval. `false` indicates no warning tone will be played." } }, "description": "Beep sound plays periodically." }, "startStopAnnouncement": { "type": "object", "properties": { "internalCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, an announcement is played when call recording starts and an announcement is played when call recording ends for internal calls." }, "pstnCallsEnabled": { "type": "boolean", "example": true, "description": "When `true`, an announcement is played when call recording starts and an announcement is played when call recording ends for PSTN calls." } }, "description": "Call Recording starts and stops announcement settings." } } }, "CallerIdInfo": { "type": "object", "required": [ "types", "selected", "tollFreeLocationNumber", "firstName", "lastName", "blockInForwardCallsEnabled", "locationExternalCallerIdName" ], "properties": { "types": { "type": "array", "items": { "$ref": "#/components/schemas/CallerIdSelectedType" }, "description": "Allowed types for the `selected` field. This field is read-only and cannot be modified." }, "selected": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of outgoing Caller ID will be used. This setting is for the number portion.\n * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line number.\n * `LOCATION_NUMBER` - Outgoing caller ID will show the main number for the location.\n * `CUSTOM` - Outgoing caller ID will show the value from the customNumber field.\n" }, "directNumber": { "type": "string", "example": "2025551212", "description": "Direct number which will be shown if `DIRECT_LINE` is selected." }, "extensionNumber": { "type": "string", "example": "3456", "description": "Extension number of the virtual line." }, "locationNumber": { "type": "string", "example": "2025551212", "description": "Location number which will be shown if `LOCATION_NUMBER` is selected." }, "tollFreeLocationNumber": { "type": "boolean", "description": "Flag to indicate if the location number is toll-free number." }, "customNumber": { "type": "string", "example": "2025551212", "description": "Custom number which will be shown if CUSTOM is selected. This value must be a number from the virtual line's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the virtual line's location." }, "firstName": { "type": "string", "example": "Hakim", "description": "Virtual line's Caller ID first name. The characters `%`, `+`, ``, `\"` and Unicode characters are not allowed. This field has been deprecated. Please use `directLineCallerIdName` and `dialByFirstName` instead." }, "lastName": { "type": "string", "example": "Gonzales", "description": "Virtual line's Caller ID last name. The characters `%`, `+`, ``, `\"` and Unicode characters are not allowed. This field has been deprecated. Please use `directLineCallerIdName` and `dialByLastName` instead." }, "blockInForwardCallsEnabled": { "type": "boolean", "example": true, "description": "Block this virtual line's identity when receiving a call." }, "externalCallerIdNamePolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION", "OTHER" ], "description": "Designates which type of External Caller ID Name policy is used. Default is `DIRECT_LINE`.\n * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line name.\n * `LOCATION` - Outgoing caller ID will show the external caller ID name for the location.\n * `OTHER` - Outgoing caller ID will show the value from the `customExternalCallerIdName` field.\n" }, "customExternalCallerIdName": { "type": "string", "example": "Hakim custom", "description": "Custom external caller ID name which will be shown if external caller ID name policy is `OTHER`." }, "locationExternalCallerIdName": { "type": "string", "example": "Hakim location", "description": "Location's external caller ID name which will be shown if external caller ID name policy is `LOCATION`." }, "additionalExternalCallerIdDirectLineEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate the virtual line's direct line number is available as an additional external caller ID for the virtual line." }, "additionalExternalCallerIdLocationNumberEnabled": { "type": "boolean", "description": "Flag to indicate the location main number is available as an additional external caller ID for the virtual line." }, "additionalExternalCallerIdCustomNumber": { "type": "string", "example": "2025552000", "description": "The custom number available as an additional external caller ID for the virtual line. This value must be a number from the virtual line's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the virtual line's location." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this virtual line." }, "dialByFirstName": { "type": "string", "example": "Hakim", "description": "The first name to be used for dial-by-name functions." }, "dialByLastName": { "type": "string", "example": "Smith", "description": "The last name to be used for dial-by-name functions." } } }, "CallerIdPut": { "type": "object", "required": [ "selected" ], "properties": { "selected": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of outgoing Caller ID will be used. This setting is for the number portion.\n * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line number.\n * `LOCATION_NUMBER` - Outgoing caller ID will show the main number for the location.\n * `CUSTOM` - Outgoing caller ID will show the value from the customNumber field.\n" }, "customNumber": { "type": "string", "example": "2025551212", "description": "Custom number which will be shown if CUSTOM is selected. This value must be a number from the virtual line's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the virtual line's location." }, "firstName": { "type": "string", "example": "Hakim", "description": "Virtual line's Caller ID first name. The characters `%`, `+`, ``, `\"` and Unicode characters are not allowed. This field has been deprecated. Please use `directLineCallerIdName` and `dialByFirstName` instead." }, "lastName": { "type": "string", "example": "Gonzales", "description": "Virtual line's Caller ID last name. The characters `%`, `+`, ``, `\"` and Unicode characters are not allowed. This field has been deprecated. Please use `directLineCallerIdName` and `dialByLastName` instead." }, "blockInForwardCallsEnabled": { "type": "boolean", "example": true, "description": "Block this virtual line's identity when receiving a call." }, "externalCallerIdNamePolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION", "OTHER" ], "description": "Designates which type of External Caller ID Name policy is used. Default is DIRECT_LINE.\n * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line name.\n * `LOCATION` - Outgoing caller ID will show the external caller ID name for the location.\n * `OTHER` - Outgoing caller ID will show the value from the `customExternalCallerIdName` field.\n" }, "customExternalCallerIdName": { "type": "string", "example": "Hakim Custom", "description": "Custom external caller ID name which will be shown if external caller ID name policy is `OTHER`." }, "additionalExternalCallerIdDirectLineEnabled": { "type": "boolean", "example": true, "description": "Set the virtual line's direct line number as additional external caller ID." }, "additionalExternalCallerIdLocationNumberEnabled": { "type": "boolean", "description": "Set the Location main number as additional external caller ID for the virtual line." }, "additionalExternalCallerIdCustomNumber": { "type": "string", "example": "2025552000", "description": "To set a custom number as additional external caller ID for the virtual line. This value must be a number from the virtual line's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the virtual line's location." }, "directLineCallerIdName": { "$ref": "#/components/schemas/UserDirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this virtual line." }, "dialByFirstName": { "type": "string", "example": "Hakim", "description": "Sets or clears the first name to be used for dial-by-name functions. To clear the `dialByFirstName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." }, "dialByLastName": { "type": "string", "example": "Smith", "description": "Sets or clears the last name to be used for dial-by-name functions. To clear the `dialByLastName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "CallerIdSelectedType": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": " * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line number\n * `LOCATION_NUMBER` - Outgoing caller ID will show the main number for the location.\n * `CUSTOM` - Outgoing caller ID will show the value from the customNumber field.\n" }, "DoNotDisturbInfo": { "type": "object", "required": [ "enabled", "ringSplashEnabled", "webexGoOverrideEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Do Not Disturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "Enables a Ring Reminder to play a brief tone on your desktop phone when you receive incoming calls." }, "webexGoOverrideEnabled": { "type": "boolean", "description": "`true` if a mobile device will still ring even if Do Not Disturb is enabled." } } }, "EventLongDetails": { "type": "object", "required": [ "name", "startDate", "endDate", "startTime", "endTime" ], "properties": { "name": { "type": "string", "example": "Day_Shift", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2020-03-18", "description": "Start date of the event, or first occurrence if repeating, in the format of `YYYY-MM-DD`. This field is required if the `allDayEnabled` field is present." }, "endDate": { "type": "string", "example": "2020-03-18", "description": "End date of the event, or first occurrence if repeating, in the format of `YYYY-MM-DD`. This field is required if the `allDayEnabled` field is present." }, "startTime": { "type": "string", "example": "08:00", "description": "Start time of the event in the format of `HH:MM` (24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "endTime": { "type": "string", "example": "17:00", "description": "End time of the event in the format of `HH:MM` (24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "allDayEnabled": { "type": "boolean", "description": "True if it is all-day event." }, "recurrence": { "type": "object", "properties": { "recurForEver": { "type": "boolean", "example": true, "description": "True if the event repeats forever. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndDate": { "type": "string", "example": "2020-03-18", "description": "End date for the recurring event in the format of `YYYY-MM-DD`. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndOccurrence": { "type": "number", "example": 1, "description": "End recurrence after the event has repeated the specified number of times. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurDaily": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Recurring interval in days. The number of days after the start when an event will repeat. Repetitions cannot overlap." } }, "description": "Specifies the number of days between the start of each recurrence. Not allowed with `recurWeekly`." }, "recurWeekly": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Specifies the number of weeks between the start of each recurrence." }, "sunday": { "type": "boolean", "description": "The Event occurs weekly on Sunday." }, "monday": { "type": "boolean", "description": "The Event occurs weekly on Monday." }, "tuesday": { "type": "boolean", "description": "The Event occurs weekly on Tuesday." }, "wednesday": { "type": "boolean", "example": true, "description": "The Event occurs weekly on Wednesday." }, "thursday": { "type": "boolean", "description": "The Event occurs weekly on Thursday." }, "friday": { "type": "boolean", "description": "The Event occurs weekly on Friday." }, "saturday": { "type": "boolean", "description": "The Event occurs weekly on Saturday." } }, "description": "Specifies the event recur weekly on the designated days of the week. Not allowed with `recurDaily`." } }, "description": "Recurrence scheme for an event." } } }, "EventPutResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUTJWdWRISmhiRjlhYjI1bFgwUmhlVjlUYUdsbWRBPT0", "description": "Identifier for a event." } } }, "EventResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "description": "Identifier for a event." } } }, "GetCallingBehaviorObject": { "type": "object", "required": [ "behaviorType", "effectiveBehaviorType", "profileId" ], "properties": { "behaviorType": { "type": "string", "enum": [ "NATIVE_WEBEX_TEAMS_CALLING", "CALL_WITH_APP_REGISTERED_FOR_CISCOTEL", "CALL_WITH_APP_REGISTERED_FOR_TEL", "CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL", "NATIVE_SIP_CALL_TO_UCM", "null" ], "description": "The current Calling Behavior setting for the person. If `null`, the effective Calling Behavior will be the Organization's current default.\n * `NATIVE_WEBEX_TEAMS_CALLING` - Calling in Webex or Hybrid Calling.\n * `CALL_WITH_APP_REGISTERED_FOR_CISCOTEL` - Cisco Jabber app\n * `CALL_WITH_APP_REGISTERED_FOR_TEL` - Third-Party app\n * `CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL` - Webex Calling app\n * `NATIVE_SIP_CALL_TO_UCM` - Calling in Webex (Unified CM)\n * `null` - Using the non-string value of `null` results in the organization-wide default calling behavior being in effect.\n" }, "effectiveBehaviorType": { "type": "string", "enum": [ "NATIVE_WEBEX_TEAMS_CALLING", "CALL_WITH_APP_REGISTERED_FOR_CISCOTEL", "CALL_WITH_APP_REGISTERED_FOR_TEL", "CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL", "NATIVE_SIP_CALL_TO_UCM" ], "description": "The effective Calling Behavior setting for the person, will be the organization's default Calling Behavior if the user's `behaviorType` is set to `null`.\n * `NATIVE_WEBEX_TEAMS_CALLING` - Calling in Webex or Hybrid Calling.\n * `CALL_WITH_APP_REGISTERED_FOR_CISCOTEL` - Cisco Jabber app\n * `CALL_WITH_APP_REGISTERED_FOR_TEL` - Third-Party app\n * `CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL` - Webex Calling app\n * `NATIVE_SIP_CALL_TO_UCM` - Calling in Webex (Unified CM)\n" }, "profileId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExJTkdfUFJPRklMRS9iMzdmMmZiYS0yZTdjLTExZWItYTM2OC1kYmU0Yjc2NzFmZTk", "description": "The UC Manager Profile ID." } } }, "GetEvent": { "type": "object", "required": [ "id", "name", "startDate", "endDate", "startTime", "endTime" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEVfRVZFTlQvUkdGNVgxTm9hV1ow", "description": "Identifier for a event." }, "name": { "type": "string", "example": "Day_Shift", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2020-03-18", "description": "Start date of the event, or first occurrence if repeating, in the format of `YYYY-MM-DD`. This field is required if the `allDayEnabled` field is present." }, "endDate": { "type": "string", "example": "2020-03-18", "description": "End date of the event, or first occurrence if repeating, in the format of `YYYY-MM-DD`. This field is required if the `allDayEnabled` field is present." }, "startTime": { "type": "string", "example": "08:00", "description": "Start time of the event in the format of `HH:MM` (24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "endTime": { "type": "string", "example": "17:00", "description": "End time of the event in the format of `HH:MM `(24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "allDayEnabled": { "type": "boolean", "description": "True if it is all-day event." }, "recurrence": { "type": "object", "properties": { "recurForEver": { "type": "boolean", "example": true, "description": "True if the event repeats forever. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndDate": { "type": "string", "example": "2020-03-18", "description": "End date for the recurring event in the format of `YYYY-MM-DD`. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndOccurrence": { "type": "number", "example": 1, "description": "End recurrence after the event has repeated the specified number of times. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurDaily": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Recurring interval in days. The number of days after the start when an event will repeat. Repetitions cannot overlap." } }, "description": "Specifies the number of days between the start of each recurrence and is not allowed with `recurWeekly`." }, "recurWeekly": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Specifies the number of weeks between the start of each recurrence." }, "sunday": { "type": "boolean", "description": "The Event occurs weekly on Sunday." }, "monday": { "type": "boolean", "description": "The Event occurs weekly on Monday." }, "tuesday": { "type": "boolean", "description": "The Event occurs weekly on Tuesday." }, "wednesday": { "type": "boolean", "example": true, "description": "The Event occurs weekly on Wednesday." }, "thursday": { "type": "boolean", "description": "The Event occurs weekly on Thursday." }, "friday": { "type": "boolean", "description": "The Event occurs weekly on Friday." }, "saturday": { "type": "boolean", "description": "The Event occurs weekly on Saturday." } }, "description": "Specifies the event recur weekly on the designated days of the week and is not allowed with `recurDaily`." } }, "description": "Recurrance scheme for an event." } } }, "GetMonitoredElementsObject": { "type": "object", "properties": { "member": { "type": "object", "required": [ "id", "lastName", "firstName", "displayName", "numbers", "location", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OWNlZjRmYS03YTM5LTQ1ZDItOTNmNi1jNjA5YTRiMjgzODY", "description": "The identifier of the monitored person, workspace or virtual line." }, "lastName": { "type": "string", "example": "Nelson", "description": "The last name of the monitored person, workspace or virtual line." }, "firstName": { "type": "string", "example": "John", "description": "The first name of the monitored person, workspace or virtual line." }, "displayName": { "type": "string", "example": "John Nelson", "description": "The display name of the monitored person, workspace or virtual line." }, "type": { "$ref": "#/components/schemas/PeopleOrPlaceOrVirtualLineType", "description": "Indicates whether the type is `PEOPLE`, `PLACE` or `VIRTUAL_LINE`." }, "email": { "type": "string", "example": "john.nelson@gmail.com", "description": "The email address of the monitored person." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredNumberObject" }, "description": "The list of phone numbers containing only the primary number for the monitored person, workspace, or virtual line." }, "location": { "type": "string", "example": "Dallas", "description": "The name of the location where the monitored person, workspace, or virtual line is situated." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "description": "The ID for the location." } } }, "callparkextension": { "type": "object", "required": [ "id", "location", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUEFSS19FWFRFTlNJT04vZTdlZDdiMDEtN2E4Ni00NDEwLWFlODMtOWJmODMzZGEzNzQy", "description": "The identifier of the call park extension." }, "name": { "type": "string", "example": "Dallas-Test", "description": "The name used to describe the call park extension." }, "extension": { "type": "string", "example": "4001", "description": "The extension number for the call park extension." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12344001", "description": "Routing prefix + extension of the call park extension." }, "location": { "type": "string", "example": "Dallas", "description": "The location name where the call park extension is." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzZhZjk4ZGViLWVlZGItNGFmYi1hMDAzLTEzNzgyYjdjODAxYw", "description": "The ID for the location." } } } } }, "GetNumbers": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Enable/disable a distinctive ring pattern that identifies calls coming from a specific phone number." }, "phoneNumbers": { "type": "array", "items": { "type": "object", "properties": { "primary": { "type": "boolean", "example": true, "description": "Flag to indicate if the number is primary or not." }, "directNumber": { "type": "string", "example": "2143456789", "description": "Phone number." }, "extension": { "type": "string", "example": "1234", "description": "Extension." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341234", "description": "Routing prefix + extension of a person or workspace." }, "ringPattern": { "type": "string", "enum": [ "NORMAL", "LONG_LONG", "SHORT_SHORT_LONG", "SHORT_LONG_SHORT" ], "description": "Optional ring pattern. Applicable only for alternate numbers.\n * `NORMAL` - Normal incoming ring pattern.\n * `LONG_LONG` - Incoming ring pattern of two long rings.\n * `SHORT_SHORT_LONG` - Incoming ring pattern of two short rings, followed by a long ring.\n * `SHORT_LONG_SHORT` - Incoming ring pattern of a short ring, followed by a long ring, followed by a short ring.\n" } } }, "description": "Information about the number." } } }, "HotelingInfo": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "When `true`, allow this person to connect to a Hoteling host device." } } }, "IncomingPermissionSetting": { "type": "object", "required": [ "useCustomEnabled", "externalTransfer", "internalCallsEnabled", "collectCallsEnabled" ], "properties": { "useCustomEnabled": { "type": "boolean", "description": "When true, indicates that this virtual line uses the specified calling permissions for receiving inbound calls rather than the organizational defaults." }, "externalTransfer": { "type": "string", "enum": [ "ALLOW_ALL_EXTERNAL", "ALLOW_ONLY_TRANSFERRED_EXTERNAL", "BLOCK_ALL_EXTERNAL" ], "description": "Specifies the transfer behavior for incoming, external calls.\n * `ALLOW_ALL_EXTERNAL` - Allow transfer and forward for all external calls including those which were transferred.\n * `ALLOW_ONLY_TRANSFERRED_EXTERNAL` - Only allow transferred calls to be transferred or forwarded and disallow transfer of other external calls.\n * `BLOCK_ALL_EXTERNAL` - Block all external calls from being transferred or forwarded.\n" }, "internalCallsEnabled": { "type": "boolean", "example": true, "description": "Internal calls are allowed to be received." }, "collectCallsEnabled": { "type": "boolean", "example": true, "description": "Collect calls are allowed to be received." } } }, "MonitoredMemberObject": { "type": "object", "required": [ "id", "lastName", "firstName", "displayName", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "description": "Unique identifier of the person, workspace or virtual line to be monitored." }, "lastName": { "type": "string", "example": "Little", "description": "Last name of the monitored person, workspace or virtual line." }, "firstName": { "type": "string", "example": "Alice", "description": "First name of the monitored person, workspace or virtual line." }, "displayName": { "type": "string", "example": "Alice Little", "description": "Display name of the monitored person, workspace or virtual line." }, "type": { "$ref": "#/components/schemas/PeopleOrPlaceOrVirtualLineType", "description": "Indicates whether type is person, workspace or virtual line." }, "email": { "type": "string", "example": "alice@example.com", "description": "Email address of the monitored person, workspace or virtual line." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredNumberObject" }, "description": "List of phone numbers of the monitored person, workspace or virtual line." } } }, "MonitoredNumberObject": { "type": "object", "properties": { "external": { "type": "string", "example": "+19845551088", "description": "External phone number of the monitored person, workspace or virtual line." }, "extension": { "type": "string", "example": "1088", "description": "Extension number of the monitored person, workspace or virtual line." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341088", "description": "Routing prefix + extension of a person or workspace." }, "primary": { "type": "boolean", "example": true, "description": "Indicates whether phone number is a primary number." } } }, "MonitoredPersonObject": { "type": "object", "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE", "description": "Unique identifier of the person." }, "lastName": { "type": "string", "example": "Little", "description": "Last name of the person." }, "firstName": { "type": "string", "example": "Alice", "description": "First name of the person." }, "displayName": { "type": "string", "example": "Alice Little", "description": "Display name of the person." }, "type": { "$ref": "#/components/schemas/PeopleOrPlaceOrVirtualLineType", "description": "Type usually indicates `PEOPLE`, `PLACE` or `VIRTUAL_LINE`. Push-to-Talk and Privacy features only supports `PEOPLE`." }, "email": { "type": "string", "example": "alice@example.com", "description": "Email address of the person." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/PushToTalkNumberObject" }, "description": "List of phone numbers of the person." } } }, "MonitoringSettings": { "type": "object", "required": [ "callParkNotificationEnabled", "monitoredElements" ], "properties": { "callParkNotificationEnabled": { "type": "boolean", "example": true, "description": "Call park notification is enabled or disabled." }, "monitoredElements": { "type": "array", "items": { "$ref": "#/components/schemas/GetMonitoredElementsObject" }, "description": "Settings of monitored elements which can be person, place, virtual line or call park extension." } } }, "MonitoringSettingsPut": { "type": "object", "required": [ "enableCallParkNotification", "monitoredElements" ], "properties": { "enableCallParkNotification": { "type": "boolean", "example": true, "description": "Enable or disable call park notification." }, "monitoredElements": { "type": "array", "maxItems": 50, "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OWNlZjRmYS03YTM5LTQ1ZDItOTNmNi1jNjA5YTRiMjgzODY" }, "description": "Identifiers of monitored elements whose monitoring settings will be modified. Maximum 50 elements." } } }, "OutgoingCallingPermissionsSettingGet": { "type": "object", "required": [ "useCustomPermissions", "callingPermissions" ], "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "When true, indicates that this user uses the shared control that applies to all outgoing call settings categories when placing outbound calls." }, "useCustomPermissions": { "type": "boolean", "example": true, "description": "When true, indicates that this user uses the specified outgoing calling permissions when placing outbound calls." }, "callingPermissions": { "type": "array", "items": { "type": "object", "required": [ "transferEnabled", "isCallTypeRestrictionEnabled" ], "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Designates the action to be taken for each call type and if transferring the call type is allowed.\n * `INTERNAL_CALL` - Controls calls within your own company.\n * `TOLL_FREE` - Controls calls to a telephone number that is billed for all arriving calls instead of incurring charges to the originating caller, usually free of charge from a landline.\n * `INTERNATIONAL` - Controls calls to locations outside of the Long Distance areas that require an international calling code before the number is dialed.\n * `OPERATOR_ASSISTED` - Controls calls requiring Operator Assistance.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Controls calls to Directory Assistant companies that require a charge to connect the call.\n * `SPECIAL_SERVICES_I` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `SPECIAL_SERVICES_II` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `PREMIUM_SERVICES_I` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `PREMIUM_SERVICES_II` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `NATIONAL` - Controls calls that are within your country of origin, both within and outside of your local area code.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action on the given `callType`.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering virtual line can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering virtual line can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering virtual line can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "isCallTypeRestrictionEnabled": { "type": "boolean", "example": true, "description": "Indicates if the restriction is enforced by the system for the corresponding call type and cannot be changed. For example, certain call types (such as `INTERNATIONAL`) may be permanently blocked and this field will be `true` to reflect that the restriction is system-controlled and not editable." } } }, "description": "Specifies the outbound calling permissions settings." } } }, "OutgoingCallingPermissionsSettingPut": { "type": "object", "required": [ "callingPermissions" ], "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "When true, indicates that this user uses the shared control that applies to all outgoing call settings categories when placing outbound calls." }, "useCustomPermissions": { "type": "boolean", "example": true, "description": "When true, indicates that this user uses the specified outgoing calling permissions when placing outbound calls." }, "callingPermissions": { "type": "array", "items": { "type": "object", "required": [ "transferEnabled" ], "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Designates the action to be taken for each call type and if transferring the call type is allowed.\n * `INTERNAL_CALL` - Controls calls within your own company.\n * `TOLL_FREE` - Controls calls to a telephone number that is billed for all arriving calls instead of incurring charges to the originating caller, usually free of charge from a landline.\n * `INTERNATIONAL` - Controls calls to locations outside of the Long Distance areas that require an international calling code before the number is dialed.\n * `OPERATOR_ASSISTED` - Controls calls requiring Operator Assistance.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Controls calls to Directory Assistant companies that require a charge to connect the call.\n * `SPECIAL_SERVICES_I` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `SPECIAL_SERVICES_II` - Controls calls to carrier-specific number assignments to special services or destinations.\n * `PREMIUM_SERVICES_I` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `PREMIUM_SERVICES_II` - Controls calls used to provide information or entertainment for a fee charged directly to the caller.\n * `NATIONAL` - Controls calls that are within your country of origin, both within and outside of your local area code.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action on the given `callType`.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering virtual line can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering virtual line can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering virtual line can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "description": "Allow the virtual line to transfer or forward a call of the specified call type." } } }, "description": "Specifies the outbound calling permissions settings." } } }, "PatchCallingBehaviorObject": { "type": "object", "properties": { "behaviorType": { "type": "string", "enum": [ "NATIVE_WEBEX_TEAMS_CALLING", "CALL_WITH_APP_REGISTERED_FOR_CISCOTEL", "CALL_WITH_APP_REGISTERED_FOR_TEL", "CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL", "NATIVE_SIP_CALL_TO_UCM", "null" ], "description": "The new Calling Behavior setting for the person (case-insensitive). If `null`, the effective Calling Behavior will be the Organization's current default.\n * `NATIVE_WEBEX_TEAMS_CALLING` - Calling in Webex or Hybrid Calling.\n * `CALL_WITH_APP_REGISTERED_FOR_CISCOTEL` - Cisco Jabber app\n * `CALL_WITH_APP_REGISTERED_FOR_TEL` - Third-Party app\n * `CALL_WITH_APP_REGISTERED_FOR_WEBEXCALLTEL` - Webex Calling app\n * `NATIVE_SIP_CALL_TO_UCM` - Calling in Webex (Unified CM)\n * `null` - The non-string value of `null` results in the organization-wide default calling behavior being in effect.\n" }, "profileId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExJTkdfUFJPRklMRS9iMzdmMmZiYS0yZTdjLTExZWItYTM2OC1kYmU0Yjc2NzFmZTk", "description": "The UC Manager Profile ID. Specifying null results in the organizational default being applied. In addition, when `behaviorType` is set to `CALL_WITH_APP_REGISTERED_FOR_CISCOTEL`, then the profile ID value will be cleared irrespective of any value being passed." } } }, "PeopleOrPlaceOrVirtualLineType": { "type": "string", "enum": [ "PEOPLE", "PLACE", "VIRTUAL_LINE" ], "description": " * `PEOPLE` - Person or list of people.\n * `PLACE` - Workspace that is not assigned to a specific person such as for a shared device in a common area.\n * `VIRTUAL_LINE` - Virtual line or list of virtual lines.\n" }, "PrivacyGet": { "type": "object", "properties": { "aaExtensionDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant extension dialing is enabled." }, "aaNamingDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant dialing by first or last name is enabled." }, "enablePhoneStatusDirectoryPrivacy": { "type": "boolean", "example": true, "description": "When `true` phone status directory privacy is enabled." }, "enablePhoneStatusPickupBargeInPrivacy": { "type": "boolean", "example": true, "description": "When `true` privacy is enforced for call pickup and barge-in. Only members specified by `monitoringAgents` can pickup or barge-in on the call." }, "monitoringAgents": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredPersonObject" }, "description": "List of people that are being monitored." } } }, "PushToTalkAccessType": { "type": "string", "enum": [ "ALLOW_MEMBERS", "BLOCK_MEMBERS" ], "description": " * `ALLOW_MEMBERS` - List of people/workspaces that are allowed to use the Push-to-Talk feature to interact with the workspace being configured.\n * `BLOCK_MEMBERS` - List of people/workspaces that are disallowed to interact using the Push-to-Talk feature with the workspace being configured.\n" }, "PushToTalkConnectionType": { "type": "string", "enum": [ "ONE_WAY", "TWO_WAY" ], "description": " * `ONE_WAY` - Push-to-Talk initiators can chat with this workspace but only in one direction. The workspace you enable Push-to-Talk for cannot respond.\n * `TWO_WAY` - Push-to-Talk initiators can chat with this workspace in a two-way conversation. The workspace you enable Push-to-Talk for can respond.\n" }, "PushToTalkInfo": { "type": "object", "required": [ "allowAutoAnswer", "connectionType", "accessType" ], "properties": { "allowAutoAnswer": { "type": "boolean", "example": true, "description": "Set to `true` to enable the Push-to-Talk feature. When enabled, a workspace receives a Push-to-Talk call and answers the call automatically." }, "connectionType": { "$ref": "#/components/schemas/PushToTalkConnectionType", "description": "Specifies the connection type to be used." }, "accessType": { "$ref": "#/components/schemas/PushToTalkAccessType", "description": "Specifies the access type to be applied when evaluating the member list." }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredPersonObject" }, "description": "List of people/workspaces that are allowed or disallowed to interact using the Push-to-Talk feature." } } }, "PushToTalkNumberObject": { "type": "object", "properties": { "external": { "type": "string", "example": "+19845551088", "description": "External phone number of the person." }, "extension": { "type": "string", "example": "1088", "description": "Extension number of the person." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341088", "description": "Routing prefix + extension of a person or workspace." }, "primary": { "type": "boolean", "example": true, "description": "If `true`, specifies whether the phone number is primary number." } } }, "PushToTalkPut": { "type": "object", "properties": { "allowAutoAnswer": { "type": "boolean", "example": true, "description": "`true` if Push-to-Talk feature is enabled." }, "connectionType": { "$ref": "#/components/schemas/PushToTalkConnectionType", "description": "Specifies the connection type to be used." }, "accessType": { "$ref": "#/components/schemas/PushToTalkAccessType", "description": "Specifies the access type to be applied when evaluating the member list." }, "members": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE" }, "description": "List of people that are allowed or disallowed to interact using the Push-to-Talk feature." } } }, "PutEvent": { "type": "object", "required": [ "newName", "name", "startDate", "endDate", "startTime", "endTime" ], "properties": { "newName": { "type": "string", "example": "Central_Zone_Day_Shift", "description": "New name for the event." }, "name": { "type": "string", "example": "Day_Shift", "description": "Name for the event." }, "startDate": { "type": "string", "example": "2020-03-18", "description": "Start date of the event, or first occurrence if repeating, in the format of YYYY-MM-DD. This field is required if the `allDayEnabled` field is present." }, "endDate": { "type": "string", "example": "2020-03-18", "description": "End date of the event, or first occurrence if repeating, in the format of YYYY-MM-DD. This field is required if the `allDayEnabled` field is present." }, "startTime": { "type": "string", "example": "08:00", "description": "Start time of the event in the format of HH:MM (24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "endTime": { "type": "string", "example": "17:00", "description": "End time of the event in the format of HH:MM (24 hours format). This field is required if the `allDayEnabled` field is false or omitted." }, "allDayEnabled": { "type": "boolean", "description": "True if it is all-day event." }, "recurrence": { "type": "object", "properties": { "recurForEver": { "type": "boolean", "example": true, "description": "True if the event repeats forever. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndDate": { "type": "string", "example": "2020-03-18", "description": "End date for the recurring event in the format of YYYY-MM-DD. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurEndOccurrence": { "type": "number", "example": 1, "description": "End recurrence after the event has repeated the specified number of times. Requires either `recurDaily` or `recurWeekly` to be specified." }, "recurDaily": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Recurring interval in days. The number of days after the start when an event will repeat. Repetitions cannot overlap." } }, "description": "Specifies the number of days between the start of each recurrence and is not allowed with `recurWeekly`." }, "recurWeekly": { "type": "object", "required": [ "recurInterval" ], "properties": { "recurInterval": { "type": "number", "example": 1, "description": "Specifies the number of weeks between the start of each recurrence." }, "sunday": { "type": "boolean", "description": "The Event occurs weekly on Sunday." }, "monday": { "type": "boolean", "description": "The Event occurs weekly on Monday." }, "tuesday": { "type": "boolean", "description": "The Event occurs weekly on Tuesday." }, "wednesday": { "type": "boolean", "example": true, "description": "The Event occurs weekly on Wednesday." }, "thursday": { "type": "boolean", "description": "The Event occurs weekly on Thursday." }, "friday": { "type": "boolean", "description": "The Event occurs weekly on Friday." }, "saturday": { "type": "boolean", "description": "The Event occurs weekly on Saturday." } }, "description": "Specifies the event recurs weekly on the designated days of the week and is not allowed with `recurDaily`." } }, "description": "Recurrance scheme for an event." } } }, "ReceptionInfo": { "type": "object", "required": [ "receptionEnabled" ], "properties": { "receptionEnabled": { "type": "boolean", "example": true, "description": "Set to `true` to enable the Receptionist Client feature." }, "monitoredMembers": { "type": "array", "items": { "$ref": "#/components/schemas/MonitoredMemberObject" }, "description": "List of people, workspaces or virtual lines to monitor." } } }, "ReceptionPut": { "type": "object", "required": [ "receptionEnabled" ], "properties": { "receptionEnabled": { "type": "boolean", "example": true, "description": "`true` if the Receptionist Client feature is enabled." }, "monitoredMembers": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82MWU3MDlkNy1hM2IxLTQ2MDctOTBiOC04NmE5MDgxYWFkNmE" }, "description": "List of members' unique identifiers to monitor." } } }, "ScheduleCollectionRequest": { "type": "object", "required": [ "name", "type" ], "properties": { "name": { "type": "string", "example": "Dallas_Office_Hours", "description": "Name for the schedule." }, "type": { "$ref": "#/components/schemas/ScheduleType", "description": "The Schedule type whether `businessHours` or `holidays`." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/EventLongDetails" }, "description": "A list of events." } } }, "ScheduleCollectionResponse": { "type": "object", "required": [ "schedules" ], "properties": { "schedules": { "type": "array", "items": { "$ref": "#/components/schemas/ScheduleShortDetails" }, "description": "List of schedules." } } }, "ScheduleLongDetails": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "description": "Identifier for a schedule." }, "name": { "type": "string", "example": "Dallas_Office_Hours", "description": "Name for the schedule." }, "type": { "$ref": "#/components/schemas/ScheduleType", "description": "The Schedule type whether `businessHours` or `holidays`." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/EventLongDetails" }, "description": "List of events." } } }, "SchedulePutResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvVW1samFHRnlaSE52Ymw5UFptWnBZMlZmU0c5MWNuTT0", "description": "Identifier for a schedule." } } }, "ScheduleResponseWithId": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "description": "Identifier for a schedule." } } }, "ScheduleShortDetails": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1VTRVJfU0NIRURVTEUvUkdGc2JHRnpYMDltWm1salpWOUliM1Z5Y3c9PQ", "description": "Identifier for a schedule." }, "name": { "type": "string", "example": "Dallas_Office_Hours", "description": "Name for the schedule." }, "type": { "$ref": "#/components/schemas/ScheduleType", "description": "The Schedule type whether `businessHours` or `holidays`." }, "level": { "$ref": "#/components/schemas/ScheduleLevel", "description": "The Schedule level whether `LOCATION` or `PEOPLE`." } } }, "ScheduleUpdateRequest": { "type": "object", "required": [ "newName", "name", "type" ], "properties": { "newName": { "type": "string", "example": "Richardson_Office_Hours", "description": "New name for the schedule." }, "name": { "type": "string", "example": "Dallas_Office_Hours", "description": "Name for the schedule." }, "type": { "$ref": "#/components/schemas/ScheduleType", "description": "The Schedule type whether `businessHours` or `holidays`." }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/EventLongDetails" }, "description": "List of events." } } }, "UserDirectLineCallerIdNameObject": { "type": "object", "properties": { "selection": { "$ref": "#/components/schemas/UserSelectionObject", "description": "The selection of the direct line caller ID name." }, "customName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the custom direct line caller ID name. To clear the `customName`, the attribute must be set to null or empty string. Required if `selection` is set to `CUSTOM_NAME`." } }, "description": "Settings for the direct line caller ID name to be shown for this virtual line." }, "UserSelectionObject": { "type": "string", "enum": [ "CUSTOM_NAME", "FIRSTNAME_LASTNAME", "LASTNAME_FIRSTNAME", "DISPLAY_NAME" ], "description": " * `DISPLAY_NAME` - When this option is selected, `displayName` is to be shown for this virtual line.\n * `FIRSTNAME_LASTNAME` - When this option is selected, `firstName` and `lastName` are to be shown for this virtual line.\n * `LASTNAME_FIRSTNAME` - When this option is selected, `lastName` and `firstName` are to be shown for this virtual line.\n * `CUSTOM_NAME` - When this option is selected, `customName` is to be shown for this virtual line." }, "GetPersonDetailsObject": { "type": "object", "required": [ "announcementLanguage", "timeZone" ], "example": { "announcementLanguage": "English", "timeZone": "America/Los_Angeles" }, "properties": { "announcementLanguage": { "type": "string", "example": "English", "description": "Person's phone announcement language." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Timezone associated with the person for calling package. Refer to the Get Country Configuration API to retrieve the list of available timezones for a specific country." } } }, "PutPersonDetailsObject": { "type": "object", "properties": { "announcementLanguage": { "type": "string", "example": "English", "description": "Person's phone announcement language." }, "timeZone": { "type": "string", "example": "America/Los_Angeles", "description": "Timezone associated with the person for calling configuration. Refer to the Get Country Configuration API to retrieve the list of available timezones for a specific country." } } }, "StateGet": { "type": "object", "required": [ "code", "name" ], "properties": { "code": { "type": "string", "example": "CA", "description": "Two-letter state or province abbreviation (e.g., CA for California)." }, "name": { "type": "string", "example": "California", "description": "Full name of the state or province." } } }, "CountryConfigGet": { "type": "object", "required": [ "stateRequired", "zipCodeRequired", "states", "timeZones" ], "example": { "stateRequired": true, "zipCodeRequired": true, "states": [ { "code": "CA", "name": "California" } ], "timeZones": [ "America/Los_Angeles" ] }, "properties": { "stateRequired": { "type": "boolean", "example": true, "description": "Indicates whether state is required for this country." }, "zipCodeRequired": { "type": "boolean", "example": true, "description": "Indicates whether zip code is required for this country." }, "states": { "type": "array", "items": { "$ref": "#/components/schemas/StateGet" }, "description": "List of states available for this country. Returns all items in a single response." }, "timeZones": { "type": "array", "items": { "type": "string", "example": "America/Los_Angeles" }, "description": "List of time zones supported for this country. Returns all items in a single response." } } }, "AuthorizationCode": { "type": "object", "properties": { "code": { "type": "string", "example": "4856", "description": "Access code." }, "description": { "type": "string", "example": "Marketing's access code", "description": "The description of the access code." } } }, "AvailableSharedLineMemberItem": { "type": "object", "required": [ "id", "firstName", "lastName", "lineType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "description": "A unique member identifier." }, "firstName": { "type": "string", "example": "John", "description": "First name of member." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of member." }, "phoneNumber": { "type": "string", "example": "1234567890", "description": "Phone number of member. Currently, E.164 format is not supported." }, "extension": { "type": "string", "example": "0000", "description": "Phone extension of member." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12340000", "description": "Routing prefix + extension of a person or workspace." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "If the line is acting as a primary line or a shared line for this device." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object having a unique identifier for the location and its name." } } }, "AvailableSharedLineMemberList": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableSharedLineMemberItem" } } } }, "GetSharedLineMemberItem": { "type": "object", "required": [ "id", "firstName", "lastName", "port", "primaryOwner", "lineType", "lineWeight", "hotlineEnabled", "hotlineDestination", "allowCallDeclineEnabled", "memberType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "description": "Unique identifier for the member." }, "firstName": { "type": "string", "example": "John", "description": "First name of person or workspace." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of person or workspace." }, "phoneNumber": { "type": "string", "example": "2056852221", "description": "Phone number of a person or workspace. Currently, E.164 format is not supported. This will be supported in the future update." }, "extension": { "type": "string", "example": "1111", "description": "Phone extension of a person or workspace." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12341111", "description": "Routing prefix + extension of a person or workspace." }, "port": { "type": "number", "minimum": 1, "example": 1, "description": "Device port number assigned to a person or workspace." }, "t38FaxCompressionEnabled `true`": { "type": "boolean", "description": "T.38 Fax Compression setting. Valid only for ATA Devices. Overrides user level compression options." }, "primaryOwner": { "type": "string", "example": "true", "description": "If `true` the person or the workspace is the owner of the device. Points to primary line/port of the device." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "If the line is acting as a primary line or a shared line for this device." }, "lineWeight": { "type": "number", "minimum": 1, "example": 1, "description": "Number of lines that have been configured for the person on the device." }, "hostIP": { "type": "string", "example": "198.168.0.1", "description": "Registration home IP for the line port." }, "remoteIP": { "type": "string", "example": "198.168.0.2", "description": "Registration remote IP for the line port." }, "hotlineEnabled": { "type": "boolean", "example": true, "description": "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": "1234", "description": "Preconfigured number for the hotline. Required only if `hotlineEnabled` is set to `true`." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a 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 is only declined at the current endpoint." }, "lineLabel": { "type": "string", "example": "share line label", "description": "Device line label." }, "memberType": { "$ref": "#/components/schemas/UserType", "description": "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." } } }, "GetSharedLineMemberList": { "type": "object", "required": [ "model", "maxLineCount" ], "properties": { "model": { "type": "string", "example": "Business Communicator - PC", "description": "Model name of device." }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/GetSharedLineMemberItem" }, "description": "List of members." }, "maxLineCount": { "type": "number", "minimum": 1, "example": 10, "description": "Maximum number of device ports." } } }, "PhoneNumber": { "type": "object", "required": [ "primary", "action", "directNumber" ], "properties": { "primary": { "type": "boolean", "example": true, "description": "If `true` marks the phone number as primary." }, "action": { "$ref": "#/components/schemas/Action", "description": "Either 'ADD' to add phone numbers or 'DELETE' to remove phone numbers." }, "directNumber": { "type": "string", "example": "+12145553567", "description": "Phone numbers that are assigned." }, "extension": { "type": "string", "example": "1234", "description": "Extension that is assigned." }, "ringPattern": { "$ref": "#/components/schemas/RingPattern", "description": "Ring Pattern of this number." } } }, "PutSharedLineMemberItem": { "type": "object", "required": [ "id", "port", "primaryOwner", "lineType", "lineWeight", "hotlineEnabled", "hotlineDestination", "allowCallDeclineEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "description": "Unique identifier for the person or workspace." }, "port": { "type": "number", "example": 1, "description": "Device port number assigned to person or workspace." }, "t38FaxCompressionEnabled `true`": { "type": "boolean", "description": "T.38 Fax Compression setting. Valid only for ATA Devices. Overrides user level compression options." }, "primaryOwner": { "type": "string", "example": "true", "description": "If `true` the person or the workspace is the owner of the device. Points to primary line/port of the device." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "If the line is acting as a primary line or a shared line for this device." }, "lineWeight": { "type": "number", "minimum": 1, "example": 1, "description": "Number of lines that have been configured for the person on the device." }, "hotlineEnabled": { "type": "boolean", "example": true, "description": "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": "1234", "description": "Preconfigured number for the hotline. Required only if `hotlineEnabled` is set to `true`." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a 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 is only declined at the current endpoint." }, "lineLabel": { "type": "string", "example": "share line label", "description": "Device line label." } } }, "PutSharedLineMemberList": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/PutSharedLineMemberItem" } } } }, "RingPattern": { "type": "string", "enum": [ "NORMAL", "LONG_LONG", "SHORT_SHORT_LONG", "SHORT_LONG_SHORT" ], "description": " * `NORMAL` - Normal incoming ring pattern.\n * `LONG_LONG` - Incoming ring pattern of two long rings.\n * `SHORT_SHORT_LONG` - Incoming ring pattern of two short rings, followed by a short ring.\n * `SHORT_LONG_SHORT` - Incoming ring pattern of a short ring, followed by a long ring, followed by a short ring.\n" }, "UserNumbersPatch": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Enables a distinctive ring pattern for the person." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PhoneNumber" }, "description": "List of phone numbers that are assigned to a person." } } }, "VoiceMailPartyInformation": { "type": "object", "required": [ "privacyEnabled" ], "properties": { "name": { "type": "string", "example": "John Smith", "description": "The party's name. Only present when the name is available and privacy is not enabled." }, "number": { "type": "string", "example": "+12223334444", "description": "The party's number. Only present when the number is available and privacy is not enabled. The number can be digits or a URI. Some examples for number include: `1234`, `2223334444`, `+12223334444`, `*73`, and `user@company.domain`." }, "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9hMTlkODJhMi00ZTY5LTU5YWEtOWYyZi1iY2E2MzEwMTNhNjg=", "description": "The party's person ID. Only present when the person ID is available and privacy is not enabled." }, "placeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BMQUNFL2ExOWQ3MWEyLTRlOTItOTFhYi05ZjJmLWJjYTEzNTAxM2ExNA==", "description": "The party's place ID. Only present when the place ID is available and privacy is not enabled." }, "privacyEnabled": { "type": "boolean", "description": "if `true`, denotes privacy is enabled for the name, number and `personId`/`placeId`." } } }, "VoiceMessageDetails": { "type": "object", "required": [ "id", "callingParty", "created" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvNmQ0MTgyMTItZjUwNi00Yzk4LTk5MTItNmI1MmE1ZmU2ODgx", "description": "The message identifier of the voicemail message." }, "duration": { "type": "number", "example": 38, "description": " The duration (in seconds) of the voicemail message. Duration is not present for a FAX message." }, "callingParty": { "$ref": "#/components/schemas/VoiceMailPartyInformation", "description": "The calling party's details. For example, if user A calls user B and leaves a voicemail message, then A is the calling party." }, "urgent": { "type": "boolean", "description": "`true` if the voicemail message is urgent." }, "confidential": { "type": "boolean", "description": "`true` if the voicemail message is confidential." }, "read": { "type": "boolean", "example": true, "description": "`true` if the voicemail message has been read." }, "faxPageCount": { "type": "number", "example": 2, "description": "Number of pages for the FAX. Only set for a FAX." }, "created": { "type": "string", "example": "2021-11-14T17:00:00.000Z", "description": "The date and time the voicemail message was created." } } }, "endpointInformation": { "type": "object", "required": [ "preferredAnswerEndpointId", "endpoints" ], "properties": { "preferredAnswerEndpointId": { "type": "string", "example": "Y2lzY29z...", "description": "Person’s preferred answer endpoint.", "nullable": true }, "endpoints": { "type": "array", "items": { "$ref": "#/components/schemas/endpoints" }, "description": "Array of endpoints available to the person." } } }, "ErrorOrImpactItem": { "type": "object", "required": [ "code", "message" ], "properties": { "code": { "type": "number", "example": 1026016, "description": "Error or Impact code." }, "message": { "type": "string", "example": "User should have either phone number or extension.", "description": "Message string with more error or impact information." } } }, "JobDetailsResponse": { "type": "object", "required": [ "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "counts" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mZjBlN2Q2Ni05MDRlLTRkZGItYjJlNS05ZGM0ODk0ZDY5OTk", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ROUTER_ebb52b5b-d060-4164-9757-48b383423d73", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "example": 10, "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", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." }, "csvFile": { "type": "string", "example": "02124eef-7be6-489c-805b-363cc6401893/cbf865e9-d069-4004-bb57-2a39f5bfb5fe_d1fde6bf944c40ed8ffbab14e6ca6a12", "description": "Reference ID for the file that holds the errors and impacts." }, "csvFileExpiryTime": { "type": "string", "example": "2023-07-12T12:20:33.503Z", "description": "Date and time with seconds, the file expires in UTC format." }, "fileFormat": { "type": "string", "example": "text/csv", "description": "Format of the file generated." } } }, "JobDetailsResponseById": { "type": "object", "required": [ "name", "id", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "counts" ], "properties": { "name": { "type": "string", "example": "moveusers", "description": "Job name." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mZjBlN2Q2Ni05MDRlLTRkZGItYjJlNS05ZGM0ODk0ZDY5OTk", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ROUTER_ebb52b5b", "description": "d060-4164-9757-48b383423d73` (string, required) - Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "description": "Unique identifier to identify which user has run the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier to identify the customer who has run the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier to identify the customer for which the job was run." }, "instanceId": { "type": "number", "example": 11, "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", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Job statistics." }, "csvFile": { "type": "string", "example": "02124eef-7be6-489c-805b-363cc6401893/cbf865e9-d069-4004-bb57-2a39f5bfb5fe_d1fde6bf944c40ed8ffbab14e6ca6a12", "description": "Reference ID for the file that holds the errors and impacts." }, "csvFileExpiryTime": { "type": "string", "example": "2023-07-12T12:20:33.503Z", "description": "Date and time with seconds, the file expires in UTC format." }, "fileFormat": { "type": "string", "example": "text/csv", "description": "Format of the file generated." }, "csvFileDownloadUrl": { "type": "string", "example": "https://files-int-us-east-1.webexcontent.com/5ab33047-d7ad-42dd-83c5-2e73da63b2ad/8c54b800-10ed-11ee-97c3-a38ed64ceaf4?x-amz-meta-tracking-id=NA_33b1a151-4c47-46a5-8fc5-09f3111c4313&x-amz-meta-user-id=ef2e385f-acad-4e90-8c10-c6532aa0c28d&Expires=1687440028&Signature=ckIcTq-7mUfcdsvSbAR5cUGC76FfyJ6D06~bKXuCrfHkku-eqPsMImRIBCqvWoBRQ1nwGdZk043AFXrwKMxDR9y~GJkzPVAjZwEU3Rr1pK-2aVEDMzP8AVlMYQmJPrmVFlnX8AxDh9YnCeoGUhwUbT~wjyj~NJP3PGfc-hwyXWnFTmdvL3Ehn66z9BQxKksZMOWCyghd~9otoBVC-WyA1Nx2LDOT1qmlLeqN2xwWpdu5Atll0tPUQaOQbCP3-bnOcmL0tR~2gUzfBMUhsW7UO1IPD451va8qcw687~Mglu5VPdpWlIjVXZu6Qk1uCIWSQ0czRDOiFH6RKWtQCD95qw__&Key-Pair-Id=APKAJADAKLCI2FW2U32Q", "description": "URL to the CSV file containing errors and impacts." } } }, "MoveUsersErrorResponse": { "type": "object", "required": [ "error" ], "properties": { "error": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorOrImpactItem" }, "description": "Contains a list of error items." } } }, "MoveUsersStartJobObject": { "type": "object", "required": [ "usersList" ], "properties": { "usersList": { "type": "array", "items": { "$ref": "#/components/schemas/UsersListItem" }, "description": "Specifies the users to be moved from the source location." } } }, "MoveUsersStartJobResponse": { "type": "object", "required": [ "response" ], "properties": { "response": { "$ref": "#/components/schemas/StartJobResponseObject", "description": "Contains the response for the user moves." } } }, "MoveUsersValidationResponse": { "type": "object", "required": [ "response" ], "properties": { "response": { "type": "array", "items": { "$ref": "#/components/schemas/UserListItem" }, "description": "Contains the response for the user moves validation." } } }, "StartJobExecutionStatusObject": { "type": "object", "required": [ "id", "startTime", "statusMessage", "createdTime" ], "properties": { "id": { "type": "number", "example": 332387, "description": "Unique identifier for each instance of the job." }, "startTime": { "type": "string", "example": "2023-05-30T13:04:00.469Z", "description": "Start date and time of the job in UTC format." }, "lastUpdated": { "type": "string", "example": "2023-05-30T13:04:03.574Z", "description": "Last update date and time of the job in UTC format after a step execution completion." }, "statusMessage": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Status for the overall steps that are part of the job.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "exitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "description": "Overall result of the job.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "createdTime": { "type": "string", "example": "2023-05-30T13:04:00.457Z", "description": "Creation date and time of the job in UTC format." }, "timeElapsed": { "type": "string", "example": "PT2.752S", "description": "Time elapsed in seconds since the job execution started." } } }, "StartJobResponseObject": { "type": "object", "required": [ "name", "id", "trackingId", "sourceUserId", "sourceCustomerId", "targetCustomerId", "instanceId", "latestExecutionStatus", "counts" ], "properties": { "name": { "type": "string", "example": "moveusers", "description": "Job name." }, "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC9mZjBlN2Q2Ni05MDRlLTRkZGItYjJlNS05ZGM0ODk0ZDY5OTk", "description": "Unique identifier of the job." }, "trackingId": { "type": "string", "example": "ROUTER_ebb52b5b-d060-4164-9757-48b383423d73", "description": "Unique identifier to track the flow of HTTP requests." }, "sourceUserId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85YzJhMDUxMC0wOTUwLTQ1MmYtODFmZi05YTVkMjM2OTJkZTY", "description": "Unique identifier of the user who ran the job." }, "sourceCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier of the customer who ran the job." }, "targetCustomerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8wMjEyNGVlZi04YWY3LTQ4OWMtODA1Yi0zNjNjYzY0MDE4OTM", "description": "Unique identifier of the customer for whom the job was run." }, "instanceId": { "type": "number", "example": 10, "description": "Unique identifier of the job instance." }, "jobExecutionStatus": { "type": "array", "items": { "$ref": "#/components/schemas/StartJobExecutionStatusObject" }, "description": "Most recent step's execution status, including statuses of all steps in the job execution." }, "latestExecutionStatus": { "type": "string", "enum": [ "STARTING", "STARTED", "COMPLETED", "FAILED", "UNKNOWN", "ABANDONED" ], "description": "Most recent status of the job at the time of invocation.\n * `STARTING` - Job has started.\n * `STARTED` - Job is in progress.\n * `COMPLETED` - Job has completed.\n * `FAILED` - Job has failed.\n * `UNKNOWN` - Job status is unknown.\n * `ABANDONED` - Job has been abandoned (manually stopped).\n" }, "latestExecutionExitCode": { "type": "string", "enum": [ "UNKNOWN", "COMPLETED", "FAILED", "STOPPED", "COMPLETED_WITH_ERRORS", "COMPLETED_WITH_PENDING_ORDERS" ], "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 * `COMPLETED_WITH_PENDING_ORDERS` - Job has completed with pending number orders.\n" }, "counts": { "$ref": "#/components/schemas/CountObject", "description": "Statistics of the job." } } }, "UserItem": { "type": "object", "required": [ "userId" ], "properties": { "userId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "description": "User ID to be moved." }, "extension": { "type": "string", "example": "28544", "description": "Extension to be moved. Extension is only supported for calling user. Only one new extension can be moved to the target location for a user. An empty value will remove the configured extension. If not provided, the existing extension will be retained." }, "phoneNumber": { "type": "string", "example": "+18632520486", "description": "Phone number to be moved. Phone number is only supported for calling user. Only one new phone number belonging to the target location can be assigned to a user. The phone number must follow the E.164 format. An empty value will remove the configured phone number. If not provided, the existing phone number will be moved to the target location." } } }, "UserListItem": { "type": "object", "required": [ "userId" ], "properties": { "userId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzUyMjNiYmVkLTQyYzktNDU0ZC1hMWYzLTdmYWQ1Y2M3ZTZlMw", "description": "User ID associated with the validation response." }, "impacts": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorOrImpactItem" }, "description": "List of impacts for the user moves." }, "errors": { "type": "array", "items": { "$ref": "#/components/schemas/ErrorOrImpactItem" }, "description": "List of errors for the user moves." } } }, "UsersListItem": { "type": "object", "required": [ "locationId", "validate", "users" ], "properties": { "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA", "description": "Target location for the user moves." }, "validate": { "type": "boolean", "description": "Set to `true` to validate the user move; this option is not supported for multiple users. Set to `false` to perform the user move." }, "users": { "type": "array", "items": { "$ref": "#/components/schemas/UserItem" }, "description": "List of users to be moved." } } }, "AvailableCallerIdList": { "type": "object", "required": [ "availableCallerIds" ], "properties": { "availableCallerIds": { "type": "array", "items": { "$ref": "#/components/schemas/AvailableCallerIdObject" }, "description": "A list of call queues and hunt groups that the agent belongs to and are available to be selected as the Caller ID for outgoing calls. Call queues and hunt groups which have disabled using the phone number as Caller ID are not returned." } } }, "AvailableCallerIdObject": { "type": "object", "required": [ "id", "type", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMjE3ZDU3YmEtOTMxYi00ZjczLTk1Y2EtOGY3MWFhYzc4MTE5", "description": "Call queue or hunt group's unique identifier." }, "type": { "$ref": "#/components/schemas/AgentCallerIdType", "description": "Member is of type `CALL_QUEUE` or `HUNT_GROUP`." }, "name": { "type": "string", "example": "TestCallQueue", "description": "Call queue or hunt group's name." }, "phoneNumber": { "type": "string", "example": "+441234200090", "description": "When not null, it is call queue or hunt group's phone number." }, "extension": { "type": "string", "example": "6001", "description": "When not null, it is call queue or hunt group's extension number." } } }, "AgentCallerIdType": { "type": "string", "enum": [ "CALL_QUEUE", "HUNT_GROUP" ], "description": " * `CALL_QUEUE` - A call queue has been selected for the agent's caller ID.\n * `HUNT_GROUP` - A hunt group has been selected for the agent's caller ID.\n" }, "AgentCallerId": { "type": "object", "required": [ "selectedCallerId" ], "properties": { "selectedCallerId": { "$ref": "#/components/schemas/SelectedCallerIdObject", "description": "Indicates agent's Caller ID choice for outgoing calls." } } }, "SelectedCallerIdObject": { "type": "object", "required": [ "id", "type", "name", "phoneNumber", "extension" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NBTExfUVVFVUUvMjE3ZDU3YmEtOTMxYi00ZjczLTk1Y2EtOGY3MWFhYzc4MTE5", "description": "When not null, this is the call queue or hunt group's unique identifier." }, "type": { "$ref": "#/components/schemas/AgentCallerIdType", "description": "When not null, indicates whether a call queue or hunt group has been selected." }, "name": { "type": "string", "example": "SalesQueue", "description": "When not null, indicates the call queue's or hunt group's name." }, "phoneNumber": { "type": "string", "example": "4255558100", "description": "When not null, indicates the call queue's or hunt group's phone number." }, "extension": { "type": "string", "example": "8100", "description": "When not null, indicates the call queue's or hunt group's extension number." } } }, "PutAgentCallCallerId": { "type": "object", "required": [ "selectedCallerId" ], "properties": { "selectedCallerId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0hVTlRfR1JPVVAvZWZkN2JjYzAtMjNkNS00NWM2LTk1N2YtZWNhYWEyZDU0M2Uw", "description": "The unique identifier of the call queue or hunt group to use for the agent's caller ID. Set to null to use the agent's own caller ID." } } }, "CallBridgeInfo": { "type": "object", "required": [ "warningToneEnabled" ], "properties": { "warningToneEnabled": { "type": "boolean", "description": "Indicates that a stutter dial tone will be played to all the participants when a virtual line is bridged on the active shared line call." } } }, "CallBridgePut": { "type": "object", "properties": { "warningToneEnabled": { "type": "boolean", "description": "Set to enable or disable a stutter dial tone being played to all the participants when a virtual line is bridged on the active shared line call." } } }, "PersonSecondaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonSecondaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonSecondaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "PersonFaxMessageAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonFaxMessageAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonFaxMessageAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "PersonCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "PersonPrimaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonPrimaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonPrimaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If the phone number is used as a location CLID." }, "telephonyType": { "type": "string", "enum": [ "PSTN_NUMBER", "MOBILE_NUMBER" ], "description": "The telephony type for the number.\n * `PSTN_NUMBER` - The object is a PSTN number.\n * `MOBILE_NUMBER` - The object is a mobile number.\n" }, "mobileNetwork": { "type": "string", "example": "mobileNetwork", "description": "Mobile Network for the number if the number's `telephonyType` is `MOBILE_NUMBER`." }, "routingProfile": { "type": "string", "example": "AttRtPf", "description": "Routing Profile for the number if the number's `telephonyType` is `MOBILE_NUMBER`." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "PersonECBNAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonECBNAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonECBNAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which phone number is assigned." }, "type": { "type": "string", "enum": [ "PLACE", "PEOPLE", "VIRTUAL_LINE", "HUNT_GROUP" ], "description": "Type of the PSTN phone number's owner.\n * `PLACE` - Phone number's owner is a workspace.\n * `PEOPLE` - Phone number's owner is a person.\n * `VIRTUAL_LINE` - Phone number's owner is a Virtual Line.\n * `HUNT_GROUP` - Phone number's owner is a Hunt Group.\n" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the phone number's owner. This field will be present only when the owner `type` is `PLACE` or `HUNT_GROUP`." } } } } }, "PersonCallInterceptAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PersonCallInterceptAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "PersonCallInterceptAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "GetUserMSTeamsSettingsObject": { "type": "object", "required": [ "personId", "orgId", "settings" ], "properties": { "personId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMWEzZjk5MC1hNjg5LTQ3N2QtYmU2Yi03MTIwMDI1ZDhhYmI", "description": "Unique identifier for the person." }, "orgId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi84NzU2ZjkwZS1iZDg4LTRhOTQtOGZiZC0wMzM2NzhmMDU5ZjM", "description": "Unique identifier for the organization in which the person resides." }, "settings": { "type": "array", "items": { "$ref": "#/components/schemas/SettingsObject" }, "description": "Array of `SettingsObject`." } } }, "ModifyUserMSTeamsSettingsObject": { "type": "object", "required": [ "settingName", "value" ], "properties": { "settingName": { "type": "string", "enum": [ "HIDE_WEBEX_APP" ], "description": "The enum value to be set to `HIDE_WEBEX_APP`.\n * `HIDE_WEBEX_APP` - Webex will continue to run but its windows will be closed by default. Users can still access Webex from the system tray on Windows or the Menu Bar on Mac.\n" }, "value": { "type": "boolean", "example": true, "description": "The boolean value to update the `HIDE_WEBEX_APP` setting, either `true` or `false`. Set to `null` to delete the `HIDE_WEBEX_APP` setting." } } }, "ModifyVoicemailPasscode": { "type": "object", "required": [ "passcode" ], "properties": { "passcode": { "type": "string", "example": "1551234", "description": "Voicemail access passcode. The minimum length of the passcode is 6 and the maximum length is 30." } } }, "UserPlaceAuthorizationCodeListGet": { "type": "object", "required": [ "accessCodes" ], "properties": { "accessCodes": { "type": "array", "items": { "$ref": "#/components/schemas/AuthorizationCode" }, "description": "The set of activation codes and description." } } }, "UserPlaceAuthorizationCodeListPatch": { "type": "object", "properties": { "deleteCodes": { "type": "array", "items": { "type": "string" }, "description": "Access Codes to delete." } } }, "UserPlaceAuthorizationCodeAdd": { "type": "object", "required": [ "code", "description" ], "properties": { "code": { "type": "string", "example": "4856", "description": "An Access code." }, "description": { "type": "string", "example": "Marketing's access code", "description": "The description of the access code." } } }, "UserOutgoingPermissionDigitPatternGetListObject": { "type": "object", "required": [ "useCustomDigitPatterns", "digitPatterns" ], "properties": { "useCustomDigitPatterns": { "type": "boolean", "description": "When `true`, use custom settings for the digit patterns category of outgoing call permissions." }, "digitPatterns": { "type": "array", "items": { "$ref": "#/components/schemas/UserDigitPatternObject" }, "description": "List of digit patterns." } } }, "UserOutgoingPermissionDigitPatternPostObject": { "type": "object", "required": [ "name", "pattern", "action", "transferEnabled" ], "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "UserOutgoingPermissionDigitPatternPatchObject": { "type": "object", "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "UserOutgoingPermissionDigitPatternCategoryControlPatchObject": { "type": "object", "properties": { "useCustomDigitPatterns": { "type": "boolean", "example": true, "description": "When `true`, use custom settings for the digit patterns category of outgoing call permissions." } } }, "UserDigitPatternObject": { "type": "object", "required": [ "id", "name", "pattern", "action", "transferEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "description": "A unique identifier for the digit pattern." }, "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "TransferNumberGet": { "type": "object", "required": [ "useCustomTransferNumbers" ], "properties": { "useCustomTransferNumbers": { "type": "boolean", "example": true, "description": "When `true`, use custom settings for the transfer numbers category of outbound permissions." }, "autoTransferNumber1": { "type": "string", "example": "\"+1205553650\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." }, "autoTransferNumber2": { "type": "string", "example": "\"+1205553651\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." }, "autoTransferNumber3": { "type": "string", "example": "\"+1205553652\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." } } }, "TransferNumberPatch": { "type": "object", "required": [ "useCustomTransferNumbers" ], "properties": { "useCustomTransferNumbers": { "type": "boolean", "example": true, "description": "When `true`, use custom settings for the transfer numbers category of outbound permissions." }, "autoTransferNumber1": { "type": "string", "example": "\"+1201203650\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." }, "autoTransferNumber2": { "type": "string", "example": "\"+1201203651\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." }, "autoTransferNumber3": { "type": "string", "example": "\"+1201203652\"", "description": "When calling a specific call type, this workspace will be automatically transferred to another number." } } }, "UserModeManagementAvailableFeaturesObject": { "type": "object", "required": [ "id", "name", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "description": "A unique identifier for the feature." }, "name": { "type": "string", "example": "Test Feature", "description": "Unique name for the feature." }, "type": { "$ref": "#/components/schemas/ModeManagementFeatureTypeObject", "description": "Defines the scheduling of the operating mode." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "The primary phone number configured for the feature." }, "extension": { "type": "string", "example": "0028", "description": "The extension configured for the feature." } } }, "UserModeManagementFeatureObject": { "type": "object", "required": [ "id", "name", "type", "modeBasedForwardingEnabled", "exceptionType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0FVVE9fQVRURU5EQU5ULzA1NTJmNjdiLTU5YTktNDFiYi04NzM2LTFiMDQxZDFkZGQ1ZQ", "description": "A unique identifier for the feature." }, "name": { "type": "string", "example": "Test Feature", "description": "Unique name for the feature." }, "type": { "$ref": "#/components/schemas/ModeManagementFeatureTypeObject", "description": "Defines the scheduling of the operating mode." }, "phoneNumber": { "type": "string", "example": "+19705550028", "description": "The primary phone number configured for the feature." }, "extension": { "type": "string", "example": "0028", "description": "The extension configured for the feature." }, "modeBasedForwardingEnabled": { "type": "boolean", "example": true, "description": "A flag to indicate whether mode-based call forwarding is enabled for the feature." }, "forwardDestination": { "type": "string", "example": "+19705550028", "description": "The destination for call forwarding if mode-based call forwarding is enabled." }, "currentOperatingModeName": { "type": "string", "example": "Day Operating Mode", "description": "Name of the current operating mode." }, "currentOperatingModeId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL09QRVJBVElOR19NT0RFLzIxM2I1ZTIwLTljMjAtNDUwNi1iYWE3LTE0OGE0NWQyZWY4OQ", "description": "Unique identifier for the current operating mode." }, "exceptionType": { "$ref": "#/components/schemas/ExceptionTypeObject", "description": "Defines the exception through which the current operating mode is set as active for the feature." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object that has a unique identifier for the location and its name." } } }, "ModeManagementFeatureTypeObject": { "type": "string", "enum": [ "AUTO_ATTENDANT", "CALL_QUEUE", "HUNT_GROUP" ], "description": " * `AUTO_ATTENDANT` - Specifies the feature is an Auto Attendant.\n * `CALL_QUEUE` - Specifies the feature is a Call Queue.\n * `HUNT_GROUP` - Specifies the feature is a Hunt Group.\n" }, "ExceptionTypeObject": { "type": "string", "enum": [ "MANUAL_SWITCH_BACK", "AUTOMATIC_SWITCH_BACK_EARLY_START", "AUTOMATIC_SWITCH_BACK_EXTENSION", "AUTOMATIC_SWITCH_BACK_STANDARD" ], "description": " * `MANUAL_SWITCH_BACK` - The mode was switched to or extended by the user for manual switch back and runs as an exception until the user manually switches the feature back to normal operation or a different mode.\n * `AUTOMATIC_SWITCH_BACK_EARLY_START` - The mode was switched to by the user before its start time and runs as an exception until its end time is reached, at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_EXTENSION` - The current mode was extended by the user before its end time and runs as an exception until the extension end time (mode's end time + extension of up to 12 hours) is reached, at which point it automatically switches the feature back to normal operation.\n * `AUTOMATIC_SWITCH_BACK_STANDARD` - The mode will remain the current operating mode for the feature until its normal end time is reached.\n" }, "ArrayOfFeatureIdsObject": { "type": "object", "required": [ "featureIds" ], "properties": { "featureIds": { "type": "array", "items": { "type": "string" }, "description": "Array of feature IDs." } } }, "SourceSelectiveAccept": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "description": " * `ALL_NUMBERS` - Criteria applies to all incoming numbers.\n * `SPECIFIC_NUMBERS` - Criteria applies only for specific incoming numbers.\n" }, "CallsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "FORWARDED" ], "description": " * `ANY_PHONE_NUMBER` - Criteria apply for any incoming number.\n * `SELECT_PHONE_NUMBERS` - Criteria only apply for selected incoming numbers.\n * `FORWARDED` - Criteria only apply for forwarded incoming numbers.\n" }, "CallsFromSelectiveAccept": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS" ], "description": " * `ANY_PHONE_NUMBER` - Criteria applies for any incoming number.\n * `SELECT_PHONE_NUMBERS` - Criteria applies for selected incoming numbers.\n" }, "CallsFromSelectiveReject": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - Criteria apply for any incoming number.\n * `SELECT_PHONE_NUMBERS` - Criteria only apply for selected incoming numbers.\n * `ANY_INTERNAL` - Criteria only apply for any internal incoming numbers.\n * `ANY_EXTERNAL` - Criteria only apply for any external incoming numbers.\n" }, "SelectiveRejectCallGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Reject feature is enabled." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveRejectCriteria" }, "description": "A list of criteria specifying conditions when selective reject is in effect." } } }, "SelectiveAcceptCallGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Accept feature is enabled." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveAcceptCallCriteria" }, "description": "A list of criteria specifying conditions when selective accept is in effect." } } }, "CriteriaAccept": { "type": "object", "required": [ "source", "acceptEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "scheduleName": { "type": "string", "example": "Criteria-Accept-all", "description": "Name of the schedule to which the criteria is created." }, "source": { "$ref": "#/components/schemas/SourceSelectiveAccept", "description": "Denotes if the criteria is set for `ALL_NUMBERS`, or `SELECT_PHONE_NUMBERS`." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Boolean field to indicate whether selective call accept is enabled or not." } } }, "Criteria": { "type": "object", "required": [ "source", "rejectEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "source": { "$ref": "#/components/schemas/Source", "description": "Indicates the sources for which selective call rejection is applied." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Boolean field to indicate whether selective reject is enabled or not" } } }, "CriteriaForward": { "type": "object", "required": [ "source" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the Schedule to which the criteria is created." }, "source": { "$ref": "#/components/schemas/Source", "description": "Indicates the sources for which selective call forward is applied." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable selective call forward." } } }, "SelectiveForwardCallGet": { "type": "object", "required": [ "enabled", "defaultPhoneNumberToForward", "ringReminderEnabled", "destinationVoicemailEnabled", "criteria" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Selective Forward feature is enabled." }, "defaultPhoneNumberToForward": { "type": "string", "example": "+1934898988", "description": "Enter the phone number to forward calls to during this schedule." }, "ringReminderEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables a ring reminder for such calls." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables forwarding for all calls to voicemail. This option is only available for internal phone numbers or extensions." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SelectiveForwardCallCriteria" }, "description": "A list of criteria specifying conditions when selective forward feature is in effect." } } }, "SelectiveForwardCallCriteriaPost": { "type": "object", "required": [ "forwardToPhoneNumber", "sendToVoicemailEnabled", "callsFrom" ], "properties": { "forwardToPhoneNumber": { "type": "string", "example": "+18898988831", "description": "Number to which calls needs to be forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Boolean flag to enable/disable sending calls to voicemail." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The type of schedule." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveReject", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "Calls From custom numbers, private number enabled." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "Calls From custom numbers, unavailable number enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable selective call forward." } } }, "SelectiveForwardCallCriteriaGet": { "type": "object", "required": [ "forwardToPhoneNumber", "sendToVoicemailEnabled", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBL1oxNzI5NzA4NzUwMTY4MDI", "description": "Criteria ID." }, "forwardToPhoneNumber": { "type": "string", "example": "+18898988831", "description": "Number to which calls needs to be forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Boolean flag to enable/disable sending calls to voicemail." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The type of schedule." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "Schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveReject", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "Calls From custom numbers, private number enabled." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "Calls From custom numbers, unavailable number enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable selective call forward." } } }, "SelectiveForwardCallCriteriaPatch": { "type": "object", "required": [ "forwardToPhoneNumber", "sendToVoicemailEnabled", "callsFrom" ], "properties": { "forwardToPhoneNumber": { "type": "string", "example": "+18898988831", "description": "Number to which calls needs to be forwarded." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Boolean flag to enable/disable sending calls to voicemail." }, "scheduleName": { "type": "string", "example": "CFS-Criteria-F-2", "description": "Name of the schedule to which the criteria is created." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleType", "description": "The type of schedule." }, "scheduleLevel": { "$ref": "#/components/schemas/ScheduleLevel", "description": "The schedule level of the criteria." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromSelectiveReject", "description": "Reject calls selection." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if calls from custom numbers, private numbers are enabled." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "Boolean flag indicating if calls from custom numbers, unavailable numbers are enabled." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "[\"+1986751234\",\"+1986751234\"]" }, "description": "List of phone numbers. It does not include extensions. In some regions phone numbers are not returned in E.164 format. This will be supported in a future update." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Boolean flag to enable/disable selective call forwarding." } } }, "AccessLevel": { "type": "string", "enum": [ "FULL_ACCESS", "NO_ACCESS" ], "description": " * `FULL_ACCESS` - User has full access.\n * `NO_ACCESS` - User does not have access.\n" }, "UserSettingsPermissionsGetDefault": { "description": "Set whether end users have access to make changes to their features via User Hub, or other clients (Webex, IP phone, etc.).", "type": "object", "properties": { "anonymousCallRejection": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Anonymous call rejection` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "bargeIn": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Barge In` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "blockCallerId": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Block caller ID` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callForwarding": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call forwarding` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callWaiting": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call waiting` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callNotify": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call notify` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "connectedLineIdentity": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Connected line identity` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "executive": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Executive/Executive assistant` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "hoteling": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Hoteling` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "priorityAlert": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Priority alert` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyAcceptCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively accept calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyRejectCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively reject calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyForwardCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively forward calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sequentialRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Sequential ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "simultaneousRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Simultaneous ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "singleNumberReach": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Single number reach` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Voicemail feature` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sendCallsToVoicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Send calls to voicemail` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailEmailCopy": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Email a copy of the voicemail message` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailFaxMessaging": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Fax messaging` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailMessageStorage": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Message storage` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailNotifications": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Notifications` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailTransferNumber": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Transfer on '0' to another number.` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "generateActivationCode": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Allow End User to Generate Activation Codes & Delete their Phones` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailDownload": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to download voicemail via User Hub, or other clients (Webex, etc.)." } } }, "UserSettingsPermissionsPutDefault": { "type": "object", "properties": { "anonymousCallRejection": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Anonymous call rejection` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "bargeIn": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Barge In` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "blockCallerId": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Block caller ID` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callForwarding": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call forwarding` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callWaiting": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call waiting` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callNotify": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call notify` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "connectedLineIdentity": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Connected line identity` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "executive": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Executive/Executive assistant` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "hoteling": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Hoteling` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "priorityAlert": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Priority alert` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyAcceptCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively accept calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyRejectCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively reject calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyForwardCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively forward calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sequentialRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Sequential ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "simultaneousRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Simultaneous ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "singleNumberReach": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Single number reach` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Voicemail feature` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sendCallsToVoicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Send calls to voicemail` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailEmailCopy": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Email a copy of the voicemail message` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailFaxMessaging": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Fax messaging` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailMessageStorage": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Message storage` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailNotifications": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Notifications` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailTransferNumber": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Transfer on '0' to another number.` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "generateActivationCode": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Allow End User to Generate Activation Codes & Delete their Phones` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailDownload": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to download voicemail via User Hub, or other clients (Webex, etc.)." } } }, "UserSettingsPermissionsGet": { "type": "object", "properties": { "userOrgSettingsPermissionEnabled `true`": { "type": "boolean", "description": "Set whether end users have organization's settings enabled for the user." }, "userOrgSettingsPermissions": { "$ref": "#/components/schemas/UserSettingsPermissionsGetDefault" } } }, "UserSettingsPermissionsPut": { "type": "object", "properties": { "anonymousCallRejection": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Anonymous call rejection` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "bargeIn": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Barge In` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "blockCallerId": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Block caller ID` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callForwarding": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call forwarding` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callWaiting": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call waiting` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "callNotify": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Call notify` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "connectedLineIdentity": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Connected line identity` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "executive": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Executive/Executive assistant` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "hoteling": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Hoteling` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "priorityAlert": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Priority alert` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyAcceptCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively accept calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyRejectCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively reject calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "selectivelyForwardCalls": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Selectively forward calls` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sequentialRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Sequential ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "simultaneousRing": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Simultaneous ring` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "singleNumberReach": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Single number reach` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Voicemail feature` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "sendCallsToVoicemail": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Send calls to voicemail` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailEmailCopy": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Email a copy of the voicemail message` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailFaxMessaging": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Fax messaging` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailMessageStorage": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Message storage` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailNotifications": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Notifications` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailTransferNumber": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Transfer on '0' to another number.` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "generateActivationCode": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to make changes to their `Allow End User to Generate Activation Codes & Delete their Phones` feature via User Hub, or other clients (Webex, IP phone, etc.)." }, "voicemailDownload": { "$ref": "#/components/schemas/AccessLevel", "description": "Set whether end users have access to download voicemail via User Hub, or other clients (Webex, etc.)." } } }, "ApplicationAvailableSharedLineMemberList": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/ApplicationAvailableSharedLineMemberItem" }, "description": "List of members available for shared-line assignment to a Webex Calling Apps." } }, "description": "List of members available for shared-line assignment to a Webex Calling Apps." }, "ApplicationAvailableSharedLineMemberItem": { "type": "object", "required": [ "id", "firstName", "lastName", "lineType" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "description": "A unique member identifier." }, "firstName": { "type": "string", "example": "John", "description": "First name of member." }, "lastName": { "type": "string", "example": "Doe", "description": "Last name of member." }, "phoneNumber": { "type": "string", "example": "1234567890", "description": "Phone number of member. Currently, E.164 format is not supported." }, "extension": { "type": "string", "example": "0000", "description": "Phone extension of member." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Indicates if the line is acting as a primary line or a shared line for this device." }, "location": { "$ref": "#/components/schemas/location", "description": "Location object having a unique identifier for the location and its name." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12348080", "description": "Routing prefix + extension of a person or workspace." } }, "description": "Member available for shared-line assignment to a Webex Calling Apps." }, "ApplicationPutSharedLineMemberItem": { "type": "object", "required": [ "id", "port", "primaryOwner", "lineType", "lineWeight" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85ODhiYTQyOC0zMjMyLTRmNjItYjUyNS1iZDUzZmI4Nzc0MWE", "description": "Unique identifier for the person or workspace." }, "port": { "type": "number", "example": 1, "description": "Device port number assigned to person or workspace." }, "primaryOwner": { "type": "string", "example": "true", "description": "If `true` the person or the workspace is the owner of the device. Points to primary line/port of the device." }, "lineType": { "$ref": "#/components/schemas/LineType", "description": "Indicates if the line is acting as a primary line or a shared line for this device." }, "lineWeight": { "type": "number", "minimum": 1, "example": 1, "description": "Number of lines that have been configured for the person on the device." }, "allowCallDeclineEnabled": { "type": "boolean", "example": true, "description": "Set how a 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 is only declined at the current endpoint." }, "lineLabel": { "type": "string", "example": "share line label", "description": "Device line label." } }, "description": "Member to be added or modified for shared-line assignment to a Webex Calling Apps." }, "ApplicationPutSharedLineMemberList": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/ApplicationPutSharedLineMemberItem" }, "description": "List of members to be added or modified for shared-line assignment to a Webex Calling Apps." } }, "description": "List of members to be added or modified for shared-line assignment to a Webex Calling Apps." }, "UpdateUserCallCaptionsObject": { "type": "object", "properties": { "userClosedCaptionsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable user-level closed captions." }, "userTranscriptsEnabled": { "type": "boolean", "example": true, "description": "Enable or disable user-level transcripts." }, "useLocationSettingsEnabled": { "type": "boolean", "example": true, "description": "If `useLocationSettingsEnabled` is `true`, location settings will control the user's closed captions and transcripts. Otherwise, user-level settings are used." } } }, "ExecutiveCallFilteringCriteriaPost": { "type": "object", "description": "Executive call filtering criteria settings request object for updating detailed filter rules and routing configuration.", "required": [ "filterName", "callsFrom", "filterEnabled" ], "properties": { "filterName": { "type": "string", "description": "Name of the criteria." }, "scheduleName": { "type": "string", "description": "Name of the schedule associated with this criteria." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": " * `businessHours` - The schedule type that specifies the business or working hours during the day.\n * `holidays` - The schedule type that specifies the day when your organization is not open.\n" }, "scheduleLevel": { "type": "string", "enum": [ "PEOPLE", "GROUP" ], "description": " * `PEOPLE` - The schedule level that specifies that criteria is of People level.\n * `GROUP` - The schedule level that specifies that criteria is of Group (Location) level.\n" }, "callsFrom": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - The criteria applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The criteria applies to selected phone numbers.\n * `ANY_INTERNAL` - The criteria applies to any internal number.\n * `ANY_EXTERNAL` - The criteria applies to any external number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "description": "Set to enable or disable the criteria for anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "description": "Set to enable or disable the criteria for unavailable callers." }, "phoneNumbers": { "type": "array", "description": "The list of phone numbers that this filtering criteria applies to, when `callsFrom` is set to `SELECT_PHONE_NUMBERS`.", "items": { "type": "string", "description": "Phone number that the criteria applies to based on `callsFrom` selection." } }, "filterEnabled": { "type": "boolean", "description": "Controls the action when this criteria matches a call. When `true`, matching calls are filtered and will alert the executive's assistants. When `false`, matching calls are not filtered and will not alert the executive's assistants. Criteria with `filterEnabled` as `false` take precedence over other filtering criteria with `filterEnabled` as `true`, allowing exceptions where certain calls are not filtered to the executive's assistants." }, "callsToNumbers": { "type": "array", "description": "List of numbers for the executive that will match the criteria when called. This may include the executive’s primary number and/or extension, as well as secondary (alternate) numbers (and associated extensions). If the list is empty, any number or extension for the executive matches the criteria when called. If the list is not empty, only the specified numbers and their extensions match the criteria.", "items": { "type": "object", "description": "Executive phone number that will match the criteria when called.", "properties": { "type": { "type": "string", "enum": [ "PRIMARY", "ALTERNATE" ], "description": " * `PRIMARY` - Number is assigned as primary to executive.\n * `ALTERNATE` - Number is assigned as alternate (secondary) to the executive.\n" }, "phoneNumber": { "type": "string", "description": "The phone number assigned to the executive that will be used to match criteria." } } } } } }, "ExecutiveAssignedAssistantsPutRequestObject": { "type": "object", "description": "Request object for updating assigned assistants to the executive.", "example": { "assistantIds": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8xMzRmNjdhNS1kYTFiLTQxYzUtODBkNS03ZDFmZTY3ZTE5ZTY" ] }, "properties": { "assistantIds": { "type": "array", "items": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mM2ZjMDFlOC1iZjM3LTQyMDgtOThjZS1iMzdlYWEwYTVlY2U", "description": "Unique identifier of the assistant." }, "description": "List of people to be assigned as assistant. To remove all assigned assistants, set `assistantIds` to `null`." } } }, "Executive": { "type": "object", "description": "Details of an executive for whom the assistant can manage calls.", "example": { "id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "firstName": "John", "lastName": "Doe", "directNumber": "+91-6557765419", "extension": "10079", "optInEnabled": true }, "required": [ "id", "directNumber", "extension", "optInEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZWQzNDg0MS0yZTkwLTQ4OGEtYmVmZi1iNTk0OTA1ODFkNWM", "description": "Unique identifier of the executive." }, "firstName": { "type": "string", "example": "John", "description": "Unicode first name of the executive. Is null if not available or if the name is a single ‘.’ or ‘-’." }, "lastName": { "type": "string", "example": "Doe", "description": "Unicode last name of the executive. Is null if not available or if the name is a single ‘.’ or ‘-’." }, "directNumber": { "type": "string", "example": "+916557765419", "description": "Direct number of the executive." }, "extension": { "type": "string", "example": "10079", "description": "Extension number of the executive." }, "optInEnabled": { "type": "boolean", "example": true, "description": "If `true`, the assistant has opted in to handle calls for the executive." } } }, "ListVirtualLineObject": { "type": "object", "required": [ "id", "lastName", "firstName", "externalCallerIdNamePolicy", "number", "location", "numberOfDevicesAssigned" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS9iMTJhNTBiMi01N2NiLTQ0MzktYjc1MS1jZDQ4M2I4MjhmNmU=", "description": "A unique identifier for the virtual line." }, "lastName": { "type": "string", "example": "Shen", "description": "Last name for virtual line." }, "firstName": { "type": "string", "example": "Tom", "description": "First name for virtual line." }, "callerIdLastName": { "type": "string", "example": "Shen", "description": "`callerIdLastName` for virtual line." }, "callerIdFirstName": { "type": "string", "example": "Tom", "description": "`callerIdFirstName` for virtual line." }, "callerIdNumber": { "type": "string", "example": "+15558675313", "description": "`callerIdNumber` for virtual line." }, "externalCallerIdNamePolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION", "OTHER" ], "description": "`externalCallerIdNamePolicy` for the virtual line.\n * `DIRECT_LINE` - Shows virtual lines Caller ID name.\n * `LOCATION` - Shows virtual lines location name.\n * `OTHER` - Allow virtual lines first/last name to be configured.\n" }, "customExternalCallerIdName": { "type": "string", "example": "Tom", "description": "`customExternalCallerIdName` for virtual line." }, "number": { "type": "object", "required": [ "primary" ], "properties": { "external": { "type": "string", "example": "+15558675313", "description": "Virtual Line external. Either `external` or `extension` is mandatory." }, "extension": { "type": "string", "example": "6101", "description": "Virtual Line extension. Either `external` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12346101", "description": "Routing prefix + extension of a person or workspace." }, "primary": { "type": "boolean", "example": true, "description": "Number is Primary or Alternative Number." } }, "description": "Calling details of virtual line." }, "location": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzhmZjMwMjg2LWVhMzMtNDc2Ny1iMTBmLWQ2MWIyNzFhMDVlZg", "description": "ID of location associated with virtual line." }, "name": { "type": "string", "example": "Denver", "description": "Name of location associated with virtual line." } }, "description": "Location details of virtual line." }, "numberOfDevicesAssigned": { "type": "number", "example": 1, "description": "Number of devices assigned to a virtual line." }, "billingPlan": { "type": "string", "example": "BCOCP1", "description": "Type of billing plan." } } }, "PostVirtualLineObject": { "type": "object", "required": [ "firstName", "lastName", "locationId" ], "properties": { "firstName": { "type": "string", "example": "Bob", "description": "First name defined for a virtual line. Minimum length is 1. Maximum length is 30." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name defined for a virtual line. Minimum length is 1. Maximum length is 30." }, "displayName": { "type": "string", "example": "Bob Smith", "description": "Display name defined for a virtual line." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Phone number of a virtual line. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "5309", "description": "Extension of a virtual line. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80YTc2ZmVmNC1mZjlmLTExZWItYWYwZC00M2YwZjY1NTdjYWI", "description": "ID of location for virtual line." }, "callerIdLastName": { "type": "string", "example": "Bob", "description": "Last name used in the Calling Line ID and for dial-by-name functions. Minimum length is 1. Maximum length is 30." }, "callerIdFirstName": { "type": "string", "example": "Smith", "description": "First name used in the Calling Line ID and for dial-by-name functions. Minimum length is 1. Maximum length is 30." }, "callerIdNumber": { "type": "string", "example": "+15558675309", "description": "Phone number to appear as the CLID for all calls. Minimum length is 1. Maximum length is 23." } } }, "GetVirtualLineObject": { "type": "object", "required": [ "id", "firstName", "lastName", "directorySearchEnabled", "announcementLanguage", "number", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1ZJUlRVQUxfTElORS85Y2JmYjYxZi00ZGM0LTQ1NWItYmMzYS00NmI4YmY5YjQzNzk", "description": "A unique identifier for the virtual line." }, "firstName": { "type": "string", "example": "Bob", "description": "First name defined for a virtual line. Minimum length is 1. Maximum length is 64." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name defined for a virtual line. Minimum length is 1. Maximum length is 64." }, "displayName": { "type": "string", "example": "Bob Smith", "description": "Display name defined for a virtual line." }, "directorySearchEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate a directory search." }, "announcementLanguage": { "type": "string", "example": "'French'", "description": "Virtual Line's announcement language." }, "timeZone": { "type": "string", "example": "Africa/Algiers", "description": "Time zone defined for the virtual line." }, "number": { "type": "object", "required": [ "primary" ], "properties": { "external": { "type": "string", "example": "+15558675309", "description": "Phone number of a virtual line. Either `external` or `extension` is mandatory." }, "extension": { "type": "string", "example": "5309", "description": "Extension of a virtual line. Either `external` or `extension` is mandatory." }, "primary": { "type": "boolean", "example": true, "description": "Number is Primary or Alternative Number." } }, "description": "Calling details of virtual line." }, "devices": { "type": "array", "items": { "$ref": "#/components/schemas/DevicesObject" }, "description": "List of devices assigned to a virtual line." }, "location": { "type": "object", "required": [ "id", "name", "address" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location associated with virtual line." }, "name": { "type": "string", "example": "Main Location Test", "description": "Name of location associated with virtual line." }, "address": { "type": "object", "required": [ "address1", "city", "state", "postalCode", "country" ], "properties": { "address1": { "type": "string", "example": "771 Alder Drive", "description": "Address 1 of the location." }, "address2": { "type": "string", "example": "Cisco Site 5", "description": "Address 2 of the location." }, "city": { "type": "string", "example": "Milpitas", "description": "City of the location." }, "state": { "type": "string", "example": "CA", "description": "State code of the location." }, "postalCode": { "type": "string", "example": "95035", "description": "Postal code of the location." }, "country": { "type": "string", "example": "US", "description": "ISO-3166 2-Letter country code of the location." } }, "description": "The address of the virtual line." } }, "description": "Location details of virtual line." } } }, "DevicesObject": { "type": "object", "required": [ "id", "model", "primaryOwner", "type", "owner", "activationState" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "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", "example": "DMS Cisco 6871", "description": "Identifier for device model." }, "mac": { "type": "string", "example": "123451234502", "description": "MAC 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." }, "owner": { "$ref": "#/components/schemas/deviceOwner", "description": "Owner of the device." }, "activationState": { "$ref": "#/components/schemas/DeviceActivationStates", "description": "Activation state of a device." } } }, "ModifyVirtualLineObject": { "type": "object", "properties": { "firstName": { "type": "string", "example": "Bob", "description": "First name defined for a virtual line. Minimum length is 1. Maximum length is 64." }, "lastName": { "type": "string", "example": "Smith", "description": "Last name defined for a virtual line. Minimum length is 1. Maximum length is 64." }, "displayName": { "type": "string", "example": "Bob Smith", "description": "Display name defined for a virtual line." }, "phoneNumber": { "type": "string", "example": "+15558675309", "description": "Phone number of a virtual line. Minimum length is 1. Maximum length is 23. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "5309", "description": "Extension of a virtual line. Minimum length is 2. Maximum length is 10. Either `phoneNumber` or `extension` is mandatory." }, "announcementLanguage": { "type": "string", "example": "'French'", "description": "Virtual Line's announcement language." }, "callerIdLastName": { "type": "string", "example": "Bob", "description": "Last name used in the Calling Line ID and for dial-by-name functions. Minimum length is 1. Maximum length is 64." }, "callerIdFirstName": { "type": "string", "example": "Smith", "description": "First name used in the Calling Line ID and for dial-by-name functions. Minimum length is 1. Maximum length is 128." }, "callerIdNumber": { "type": "string", "example": "+15558675309", "description": "Phone number to appear as the CLID for all calls. Minimum length is 1. Maximum length is 23." }, "timeZone": { "type": "string", "example": "Africa/Algiers", "description": "Time zone defined for the virtual line." } } }, "GetVirtualLineNumberObject": { "type": "object", "properties": { "phoneNumber": { "type": "object", "required": [ "primary" ], "properties": { "directNumber": { "type": "string", "example": "+15558675309", "description": "Phone number that is assigned to a virtual line." }, "extension": { "type": "string", "example": "5309", "description": "Extension that is assigned to a virtual line." }, "primary": { "type": "boolean", "example": true, "description": "If `true` marks the phone number as primary." } }, "description": "Phone number that is assigned to a virtual line." } } }, "DirectorySearchObject": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Whether or not the directory search for a virtual line is enabled." } } }, "GetVirtualLineDevicesObject": { "type": "object", "required": [ "availableEndpointType", "maxDeviceCount" ], "properties": { "devices": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceObject" }, "description": "List of devices assigned to a virtual line." }, "availableEndpointType": { "$ref": "#/components/schemas/LineType", "description": "Indicates to which line a device can be assigned." }, "maxDeviceCount": { "type": "number", "example": 35, "description": "Maximum number of devices a virtual line can be assigned to." } } }, "GetVirtualLineDectNetworkObject": { "type": "object", "properties": { "dectNetworks": { "type": "array", "items": { "$ref": "#/components/schemas/DectNetwork" }, "description": "List of DECT networks assigned to a virtual line." } } }, "DectNetwork": { "type": "object", "required": [ "id", "name", "primaryEnabled", "numberOfHandsetsAssigned", "location" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMl9hL0RFVklDRS9hNmYwYjhkMi01ZjdkLTQzZDItODAyNi0zM2JkNDg3NjYzMTg=", "description": "Unique identifier for a DECT network." }, "name": { "type": "string", "example": "Dect Network1", "description": "Identifier for device DECT network." }, "primaryEnabled": { "type": "boolean", "description": "Indicates whether the virtual profile is the primary line." }, "numberOfHandsetsAssigned": { "type": "number", "example": 1, "description": "Number of DECT handsets assigned to the virtual profile." }, "location": { "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzMxMTYx", "description": "ID of location associated with virtual line." }, "name": { "type": "string", "example": "Main Location Test", "description": "Name of location associated with virtual line." } }, "description": "Location details of virtual line." } } }, "VirtualLineFaxMessageAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VirtualLineFaxMessageAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VirtualLineFaxMessageAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "VirtualLineCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VirtualLineCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VirtualLineCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "VirtualLineAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VirtualLineAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VirtualLineAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "VirtualLineECBNAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VirtualLineECBNAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VirtualLineECBNAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which phone number is assigned." }, "type": { "type": "string", "enum": [ "PLACE", "PEOPLE", "VIRTUAL_LINE", "HUNT_GROUP" ], "description": "Type of the phone number's owner.\n * `PLACE` - Phone number's owner is a workspace.\n * `PEOPLE` - Phone number's owner is a person.\n * `VIRTUAL_LINE` - Phone number's owner is a Virtual Line.\n * `HUNT_GROUP` - Phone number's owner is a Hunt Group.\n" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the phone number's owner. This field will be present only when the owner `type` is `PLACE` or `HUNT_GROUP`." } } } } }, "VirtualLineCallInterceptAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/VirtualLineCallInterceptAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "VirtualLineCallInterceptAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for a PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } } } }, "VirtualLineDoNotDisturbGet": { "type": "object", "required": [ "enabled", "ringSplashEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the DoNotDisturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables ring reminder when you receive an incoming call while on Do Not Disturb." } } }, "VirtualLineDoNotDisturbPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "description": "`true` if the DoNotDisturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "When `true`, enables ring reminder when you receive an incoming call while on Do Not Disturb." } } }, "CallerReputationProviderSettings": { "type": "object", "properties": { "name": { "type": "string", "description": "Name of the reputation provider.", "example": "Acme Reputation Provider" }, "id": { "type": "string", "description": "Unique identifier for the reputation provider.", "example": "provider-123" }, "clientId": { "type": "string", "description": "Client ID used for integration with the reputation provider.", "example": "client-456" }, "enabled": { "type": "boolean", "description": "Indicates if the caller reputation provider service is enabled.", "example": true }, "callBlockScoreThreshold": { "type": "string", "description": "Score threshold for blocking calls.", "example": "0.7" }, "callAllowScoreThreshold": { "type": "string", "description": "Score threshold for allowing calls.", "example": "0.3" } }, "example": { "name": "Acme Reputation Provider", "id": "provider-123", "clientId": "client-456", "enabled": true, "callBlockScoreThreshold": "0.7", "callAllowScoreThreshold": "0.3" } }, "CallerReputationProviderSettingsUpdate": { "type": "object", "properties": { "enabled": { "type": "boolean", "description": "Indicates if the caller reputation provider service is enabled. when set to true, all other fields are required except clientSecret.", "example": true }, "id": { "type": "string", "description": "Unique identifier for the reputation provider.", "example": "provider-123" }, "name": { "type": "string", "description": "Name of the reputation provider.", "example": "Acme Reputation Provider" }, "clientId": { "type": "string", "description": "Client ID used for integration with the reputation provider.", "example": "client-456" }, "clientSecret": { "type": "string", "description": "Client secret used for integration with the reputation provider.", "example": "secret-789" }, "callBlockScoreThreshold": { "type": "string", "description": "Score threshold for blocking calls.", "example": "0.7" }, "callAllowScoreThreshold": { "type": "string", "description": "Score threshold for allowing calls.", "example": "0.3" } }, "example": { "enabled": true, "id": "provider-123", "name": "Acme Reputation Provider", "clientId": "client-456", "clientSecret": "secret-789", "callBlockScoreThreshold": "0.7", "callAllowScoreThreshold": "0.3" } }, "CallerReputationProviderStatus": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the reputation provider.", "example": "provider-123" }, "status": { "$ref": "#/components/schemas/CallerReputationProviderStatusEnum" } }, "required": [ "id", "status" ], "example": { "id": "provider-123", "status": "CONNECTED" } }, "CallerReputationProviderStatusEnum": { "type": "string", "enum": [ "NOT_CONNECTED", "CONNECTING", "CONNECTED", "ACTIVE", "EXPIRED", "AUTH_FAILED", "PROVIDER_DISABLED" ], "description": "Status of the caller reputation provider integration.\n\n * `NOT_CONNECTED` - Provider is not connected.\n * `CONNECTING` - Provider is in the process of connecting.\n * `CONNECTED` - Provider is connected.\n * `ACTIVE` - Provider is active and operational.\n * `EXPIRED` - Provider's session or token has expired.\n * `AUTH_FAILED` - Authentication with the provider failed.\n * `PROVIDER_DISABLED` - Provider is disabled.\n", "example": "CONNECTED" }, "CallerReputationProviderUnlockRequest": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the reputation provider.", "example": "provider-123" } }, "required": [ "id" ], "example": { "id": "provider-123" } }, "CallerReputationProviderProvidersResponse": { "type": "object", "properties": { "providers": { "type": "array", "items": { "$ref": "#/components/schemas/CallerReputationProviderProvider" }, "description": "List of caller reputation providers." } }, "example": { "providers": [ { "id": "provider-123", "enabled": true, "name": "Acme Reputation Provider", "regions": [ { "id": "region-1", "name": "US East", "type": "primary", "visible": true, "environmentType": "production" } ] } ] } }, "CallerReputationProviderProvider": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the provider.", "example": "provider-123" }, "enabled": { "type": "boolean", "description": "Indicates if the provider is enabled.", "example": true }, "name": { "type": "string", "description": "Name of the provider.", "example": "Acme Reputation Provider" }, "regions": { "type": "array", "items": { "$ref": "#/components/schemas/CallerReputationProviderRegion" }, "description": "List of regions for the provider." } }, "example": { "id": "provider-123", "enabled": true, "name": "Acme Reputation Provider", "regions": [ { "id": "region-1", "name": "US East", "type": "primary", "visible": true, "environmentType": "production" } ] } }, "CallerReputationProviderRegion": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the region.", "example": "region-1" }, "name": { "type": "string", "description": "Name of the region.", "example": "US East" }, "type": { "type": "string", "description": "Type of the region (e.g., primary, secondary).", "example": "primary" }, "visible": { "type": "boolean", "description": "Indicates if the region is visible.", "example": true }, "environmentType": { "type": "string", "description": "Environment type of the region (e.g., production, staging).", "example": "production" } }, "example": { "id": "region-1", "name": "US East", "type": "primary", "visible": true, "environmentType": "production" } }, "CLIDPolicySelection": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": " * `DIRECT_LINE` - Outgoing caller ID will show the caller's direct line number\n * `LOCATION_NUMBER` - Outgoing caller ID will show the main number for the location.\n * `CUSTOM` - Outgoing caller ID will show the value from the customNumber field.\n" }, "CallForwardingAlwaysGet": { "type": "object", "required": [ "enabled", "ringReminderEnabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"Always\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for \"Always\" call forwarding." }, "ringReminderEnabled": { "type": "boolean", "description": "If `true`, a brief tone will be played on the person's phone when a call has been forwarded." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "CallForwardingBusyGet": { "type": "object", "required": [ "enabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "description": "\"Busy\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19075552859", "description": "Destination for \"Busy\" call forwarding." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." } } }, "CallForwardingNoAnswerGet": { "type": "object", "required": [ "enabled", "numberOfRings", "systemMaxNumberOfRings", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"No Answer\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19075552859", "description": "Destination for \"No Answer\" call forwarding." }, "numberOfRings": { "type": "number", "example": 2, "description": "Number of rings before the call will be forwarded if unanswered." }, "systemMaxNumberOfRings": { "type": "number", "example": 20, "description": "System-wide maximum number of rings allowed for `numberOfRings` setting." }, "destinationVoicemailEnabled": { "type": "boolean", "example": true, "description": "Enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } } }, "BusinessContinuityGet": { "type": "object", "required": [ "enabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Business Continuity is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for Business Continuity." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enabled or disabled state of sending incoming calls to the destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } } }, "CallForwardingPlaceSettingGet": { "type": "object", "required": [ "always", "busy", "noAnswer" ], "properties": { "always": { "$ref": "#/components/schemas/CallForwardingAlwaysGet", "description": "Settings for forwarding all incoming calls to the destination you choose." }, "busy": { "$ref": "#/components/schemas/CallForwardingBusyGet", "description": "Settings for forwarding all incoming calls to the destination you chose while the phone is in use or the workspace is busy." }, "noAnswer": { "$ref": "#/components/schemas/CallForwardingNoAnswerGet", "description": "Settings for forwarding which only occurs when you are away or not answering your phone." } } }, "CallForwardingPlaceSettingPatch": { "type": "object", "required": [ "always" ], "properties": { "always": { "$ref": "#/components/schemas/CallForwardingAlwaysGet", "description": "Settings for forwarding all incoming calls to the destination you choose." }, "busy": { "$ref": "#/components/schemas/CallForwardingBusyGet", "description": "Settings for forwarding all incoming calls to the destination you chose while the phone is in use or the workspace is busy." }, "noAnswer": { "$ref": "#/components/schemas/ModifyCallForwardingNoAnswer", "description": "Settings for forwarding which only occurs when you are away or not answering your phone." } } }, "BusinessContinuityPatch": { "type": "object", "required": [ "enabled", "destinationVoicemailEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Business Continuity is enabled or disabled." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination for Business Continuity." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enabled or disabled state of sending incoming calls to the destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } } }, "CallWaiting": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Call Waiting state." } } }, "CallingPermission": { "type": "object", "required": [ "callType", "action", "transferEnabled", "isCallTypeRestrictionEnabled" ], "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Type of the outgoing call.\n * `INTERNAL_CALL` - Internal call type.\n * `TOLL_FREE` - Toll free call type.\n * `INTERNATIONAL` - International call type.\n * `OPERATOR_ASSISTED` - Operator Assisted call type.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Chargeable Directory Assisted call type.\n * `SPECIAL_SERVICES_I` - Special Services I call type.\n * `SPECIAL_SERVICES_II` - Special Services II call type.\n * `PREMIUM_SERVICES_I` - Premium Services I call type.\n * `PREMIUM_SERVICES_II` - Premium Services II call type.\n * `NATIONAL` - National call type.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Permission for call types.\n * `ALLOW` - The call type is allowed.\n * `BLOCK` - The call type is blocked.\n * `AUTH_CODE` - Access Code action for the specified call type.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "isCallTypeRestrictionEnabled": { "type": "boolean", "example": true, "description": "Indicates if the restriction is enforced by the system for the corresponding call type and cannot be changed. For example, certain call types (such as `INTERNATIONAL`) may be permanently blocked and this field will be `true` to reflect that the restriction is system-controlled and not editable." } } }, "InterceptAnnouncementsGet": { "type": "object", "required": [ "greeting", "newNumber", "zeroTransfer" ], "properties": { "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "System default message places when incoming calls are intercepted.\n * `CUSTOM` - A custom greeting is played when incoming calls are intercepted.\n * `DEFAULT` - A System default greeting is played when incoming calls are intercepted.\n" }, "filename": { "type": "string", "example": "incoming.wav", "description": "Filename of the custom greeting; this is an empty string if no custom greeting has been uploaded." }, "newNumber": { "$ref": "#/components/schemas/InterceptNumberGet", "description": "Information about the new number announcement." }, "zeroTransfer": { "$ref": "#/components/schemas/InterceptNumberGet", "description": "Information about how the call is handled if zero (0) is pressed." } } }, "InterceptAnnouncementsPatch": { "type": "object", "properties": { "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "System default message is placed when incoming calls are intercepted.\n * `CUSTOM` - A custom greeting is played when incoming calls are intercepted.\n * `DEFAULT` - A System default greeting is played when incoming calls are intercepted.\n" }, "newNumber": { "$ref": "#/components/schemas/InterceptNumberPatch", "description": "Information about the new number announcement." }, "zeroTransfer": { "$ref": "#/components/schemas/InterceptNumberPatch", "description": "Information about how the call is handled if zero (0) is pressed." } } }, "InterceptGet": { "type": "object", "required": [ "enabled", "incoming", "outgoing" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call intercept is enabled." }, "incoming": { "$ref": "#/components/schemas/InterceptIncomingGet", "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." }, "outgoing": { "$ref": "#/components/schemas/InterceptOutGoingGet", "description": "Settings related to how outgoing calls are handled when the intercept feature is enabled." } } }, "InterceptIncomingGet": { "type": "object", "required": [ "type", "voicemailEnabled", "announcements" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "Incoming calls are intercepted.\n * `INTERCEPT_ALL` - All incoming calls are intercepted.\n * `ALLOW_ALL` - Incoming calls are not intercepted.\n" }, "voicemailEnabled": { "type": "boolean", "description": "Enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." }, "announcements": { "$ref": "#/components/schemas/InterceptAnnouncementsGet", "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." } } }, "InterceptIncomingPatch": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "Incoming calls are intercepted.\n * `INTERCEPT_ALL` - Incoming calls are intercepted.\n * `ALLOW_ALL` - Incoming calls are not intercepted.\n" }, "voicemailEnabled": { "type": "boolean", "example": true, "description": "Enabled or disabled state of sending incoming calls to voicemail when the destination is an internal phone number and that number has the voicemail service enabled." }, "announcements": { "$ref": "#/components/schemas/InterceptAnnouncementsPatch", "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." } } }, "InterceptNumberGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller hears this new number when the call is intercepted." }, "destination": { "type": "string", "example": "+12225551212", "description": "New number the caller hears announced." } } }, "InterceptNumberPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller hears this new number when the call is intercepted." }, "destination": { "type": "string", "example": "+12225551212", "description": "New number the caller hears announced." } } }, "InterceptOutGoingGet": { "type": "object", "required": [ "type", "transferEnabled" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "All outgoing calls are intercepted.\n * `INTERCEPT_ALL` - Outgoing calls are intercepted.\n * `ALLOW_LOCAL_ONLY` - Only non-local calls are intercepted.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "`+12225551212", "description": "Number to which the outbound call be transferred." } } }, "InterceptOutGoingPatch": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "All outgoing calls are intercepted.\n * `INTERCEPT_ALL` - Outgoing calls are intercepted.\n * `ALLOW_LOCAL_ONLY` - Only non-local calls are intercepted.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "+12225551212", "description": "Number to which the outbound call be transferred." } } }, "InterceptPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call interception is enabled." }, "incoming": { "$ref": "#/components/schemas/InterceptIncomingPatch", "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." }, "outgoing": { "$ref": "#/components/schemas/InterceptOutGoingPatch", "description": "Settings related to how outgoing calls are handled when the intercept feature is enabled." } } }, "ModifyCallForwardingNoAnswer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "\"No Answer\" call forwarding is enabled or disabled." }, "destination": { "type": "string", "example": "+19075552859", "description": "Destination for \"No Answer\" call forwarding. If enabled true, destination is required." }, "numberOfRings": { "type": "number", "example": 2, "description": "Number of rings before the call will be forwarded if unanswered. `numberOfRings` must be between 2 and 20, inclusive." }, "systemMaxNumberOfRings": { "type": "number", "example": 20, "description": "Max number of rings before the call will be forwarded if unanswered." }, "destinationVoicemailEnabled": { "type": "boolean", "example": true, "description": "Enables and disables sending incoming to destination number's voicemail if the destination is an internal phone number and that number has the voicemail service enabled." } } }, "ModifyCallWaiting": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "Call Waiting state." } } }, "ModifyCallingPermission": { "type": "object", "properties": { "callType": { "type": "string", "enum": [ "INTERNAL_CALL", "TOLL_FREE", "INTERNATIONAL", "OPERATOR_ASSISTED", "CHARGEABLE_DIRECTORY_ASSISTED", "SPECIAL_SERVICES_I", "SPECIAL_SERVICES_II", "PREMIUM_SERVICES_I", "PREMIUM_SERVICES_II", "NATIONAL" ], "description": "Types for outgoing calls.\n * `INTERNAL_CALL` - Internal call type.\n * `TOLL_FREE` - Toll Free call type.\n * `INTERNATIONAL` - International call type.\n * `OPERATOR_ASSISTED` - Operator Assisted call type.\n * `CHARGEABLE_DIRECTORY_ASSISTED` - Chargeable Directory assisted call type.\n * `SPECIAL_SERVICES_I` - Special Services I call type.\n * `SPECIAL_SERVICES_II` - Special Services II call type.\n * `PREMIUM_SERVICES_I` - Premium Services I call type.\n * `PREMIUM_SERVICES_II` - Premium Services II call type.\n * `NATIONAL` - National call type.\n" }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Permission for call types.\n * `ALLOW` - The call type is allowed.\n * `BLOCK` - The call type is blocked.\n * `AUTH_CODE` - Access Code action for the specified call type.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "ModifyPlaceCallForwardSettings": { "type": "object", "required": [ "callForwarding", "businessContinuity" ], "properties": { "callForwarding": { "$ref": "#/components/schemas/CallForwardingPlaceSettingPatch", "description": "Call forwarding settings for a Workspace." }, "businessContinuity": { "$ref": "#/components/schemas/BusinessContinuityPatch", "description": "Settings for sending calls to a destination of your choice if your phone is not connected to the network for any reason, such as power outage, failed Internet connection, or wiring problem." } } }, "ModifyPlaceCallerIdGet": { "type": "object", "required": [ "selected" ], "properties": { "selected": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of outgoing Caller ID will be used. This setting is for the number portion.\n * `DIRECT_LINE` - Outgoing caller ID shows the caller's direct line number.\n * `LOCATION_NUMBER` - Outgoing caller ID shows the main number for the location.\n * `CUSTOM` - Outgoing caller ID shows the value from the customNumber field.\n" }, "customNumber": { "type": "string", "example": "+12815550003", "description": "Custom number which is shown if CUSTOM is selected. This value must be a number from the workspace's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the workspace's location." }, "displayName": { "type": "string", "example": "Clockmaker's shop 7.1", "description": "Workspace's caller ID display name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "displayDetail": { "type": "string", "example": ".", "description": "Workspace's caller ID display details. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "blockInForwardCallsEnabled": { "type": "boolean", "example": true, "description": "Block this workspace's identity when receiving a call." }, "externalCallerIdNamePolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION", "OTHER" ], "description": "Designates which type of External Caller ID Name policy is used. Default is `DIRECT_LINE`.\n * `DIRECT_LINE` - Outgoing caller ID shows the caller's direct line name.\n * `LOCATION` - Outgoing caller ID shows the external caller ID name for the location.\n * `OTHER` - Outgoing caller ID shows the value from the `customExternalCallerIdName` field.\n" }, "customExternalCallerIdName": { "type": "string", "example": "Custom external caller name", "description": "Custom external caller ID name which is shown if external caller ID name policy is `OTHER`." }, "locationExternalCallerIdName": { "type": "string", "example": "Anna", "description": "Location's external caller ID name which is shown if external caller ID name policy is `LOCATION`." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut", "description": "Settings for the direct line caller ID name to be shown for this workspace." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`, `+`, `\\`, `\"` and Unicode characters are not allowed." } } }, "MonitoredElementCallParkExtension": { "type": "object", "required": [ "id", "name", "extension", "location", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "description": "ID of call park extension." }, "name": { "type": "string", "example": "CPE1", "description": "Name of call park extension." }, "extension": { "type": "string", "example": "8080", "description": "Extension of call park extension." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12348080", "description": "Routing prefix + extension of a person or workspace." }, "location": { "type": "string", "example": "Alaska", "description": "Name of location for call park extension." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of location for call park extension." } } }, "MonitoredElementUser": { "type": "object", "required": [ "id", "firstName", "lastName", "displayName", "type", "email", "numbers", "location", "locationId" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS80NDVkMzMzMC1mNjE3LTExZWItOWQyZS01NzViODE3ZGE2NmE", "description": "ID of person or workspace." }, "firstName": { "type": "string", "example": "John", "description": "First name of person or workspace." }, "lastName": { "type": "string", "example": "Brown", "description": "Last name of person or workspace." }, "displayName": { "type": "string", "example": "John Brown", "description": "Display name of person or workspace." }, "type": { "type": "string", "enum": [ "PEOPLE", "PLACE" ], "description": "Type of the person or workspace.\n * `PEOPLE` - Object is a user.\n * `PLACE` - Object is a workspace.\n" }, "email": { "type": "string", "example": "john.brown@gmail.com", "description": "Email of the person or workspace." }, "numbers": { "type": "array", "items": { "$ref": "#/components/schemas/UserNumberItem" }, "description": "The list of phone numbers containing only the primary number for the monitored person, workspace." }, "location": { "type": "string", "example": "Alaska", "description": "Name of location for call park." }, "locationId": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1", "description": "ID of the location for call park." } } }, "PlaceCallForwardingGet": { "type": "object", "required": [ "callForwarding", "businessContinuity" ], "properties": { "callForwarding": { "$ref": "#/components/schemas/CallForwardingPlaceSettingGet", "description": "Call forwarding settings for a Workspace." }, "businessContinuity": { "$ref": "#/components/schemas/BusinessContinuityGet", "description": "Settings for sending calls to a destination of your choice if your phone is not connected to the network for any reason, such as power outage, failed Internet connection, or wiring problem." } } }, "PlaceCallerIdGet": { "type": "object", "required": [ "types", "selected", "directNumber", "locationNumber", "tollFreeLocationNumber", "displayName", "displayDetail", "blockInForwardCallsEnabled", "externalCallerIdNamePolicy", "locationExternalCallerIdName" ], "properties": { "types": { "type": "array", "items": { "$ref": "#/components/schemas/CLIDPolicySelection" }, "description": "Allowed types for the `selected` field. This field is read-only and cannot be modified." }, "selected": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION_NUMBER", "CUSTOM" ], "description": "Which type of outgoing Caller ID will be used. This setting is for the number portion.\n * `DIRECT_LINE` - Outgoing caller ID shows the caller's direct line number.\n * `LOCATION_NUMBER` - Outgoing caller ID shows the main number for the location.\n * `CUSTOM` - Outgoing caller ID shows the value from the customNumber field.\n" }, "directNumber": { "type": "string", "example": "+12815550003", "description": "Direct number which is shown if `DIRECT_LINE` is selected." }, "locationNumber": { "type": "string", "example": "+12815550002", "description": "Location number which is shown if `LOCATION_NUMBER` is selected" }, "tollFreeLocationNumber": { "type": "boolean", "description": "Flag to indicate if the location number is toll-free number." }, "customNumber": { "type": "string", "example": "+12815550003", "description": "Custom number which is shown if CUSTOM is selected. This value must be a number from the workspace's location or from another location with the same country, PSTN provider, and zone (only applicable for India locations) as the workspace's location." }, "displayName": { "type": "string", "example": "Clockmaker's shop 7.1", "description": "Workspace's caller ID display name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "displayDetail": { "type": "string", "example": ".", "description": "Workspace's caller ID display details. Default is `.`. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead." }, "blockInForwardCallsEnabled": { "type": "boolean", "example": true, "description": "Block this workspace's identity when receiving a call." }, "externalCallerIdNamePolicy": { "type": "string", "enum": [ "DIRECT_LINE", "LOCATION", "OTHER" ], "description": "Designates which type of External Caller ID Name policy is used. Default is `DIRECT_LINE`.\n * `DIRECT_LINE` - Outgoing caller ID shows the caller's direct line name.\n * `LOCATION` - Outgoing caller ID shows the external caller ID name for the location.\n * `OTHER` - Outgoing caller ID shows the value from the `customExternalCallerIdName` field.\n" }, "customExternalCallerIdName": { "type": "string", "example": "Custom external caller name", "description": "Custom external caller ID name which is shown if external caller ID name policy is `OTHER`." }, "locationExternalCallerIdName": { "type": "string", "example": "Anna", "description": "Location's external caller ID name which is shown if external caller ID name policy is `LOCATION`." }, "directLineCallerIdName": { "$ref": "#/components/schemas/DirectLineCallerIdNameObject", "description": "Settings for the direct line caller ID name to be shown for this workspace." }, "dialByName": { "type": "string", "example": "Hakim Smith", "description": "The name to be used for dial by name functions." } } }, "UserInboundPermissionGet": { "type": "object", "required": [ "useCustomEnabled", "externalTransfer", "internalCallsEnabled", "collectCallsEnabled" ], "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "Incoming Permission state. If disabled, the default settings are used." }, "externalTransfer": { "type": "string", "enum": [ "ALLOW_ALL_EXTERNAL", "ALLOW_ONLY_TRANSFERRED_EXTERNAL", "BLOCK_ALL_EXTERNAL" ], "description": "Call transfer setting.\n * `ALLOW_ALL_EXTERNAL` - All external calls are allowed.\n * `ALLOW_ONLY_TRANSFERRED_EXTERNAL` - Only externally transferred external calls are allowed.\n * `BLOCK_ALL_EXTERNAL` - All external calls are blocked.\n" }, "internalCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if workspace can receive internal calls." }, "collectCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if workspace can receive collect calls." } } }, "UserInboundPermissionPatch": { "type": "object", "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "Incoming Permission state. If disabled, the default settings are used." }, "externalTransfer": { "type": "string", "enum": [ "ALLOW_ALL_EXTERNAL", "ALLOW_ONLY_TRANSFERRED_EXTERNAL", "BLOCK_ALL_EXTERNAL" ], "description": "Call transfer setting.\n * `ALLOW_ALL_EXTERNAL` - All external calls are allowed.\n * `ALLOW_ONLY_TRANSFERRED_EXTERNAL` - Only externally transferred external calls are allowed.\n * `BLOCK_ALL_EXTERNAL` - All external calls are blocked.\n" }, "internalCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if the workspace can receive internal calls." }, "collectCallsEnabled": { "type": "boolean", "example": true, "description": "Flag to indicate if the workspace can receive collect calls." } } }, "UserMonitoringGet": { "type": "object", "required": [ "callParkNotificationEnabled" ], "properties": { "callParkNotificationEnabled": { "type": "boolean", "example": true, "description": "Call park notification enabled or disabled." }, "monitoredElements": { "$ref": "#/components/schemas/MonitoredElementItem", "description": "Monitored element items." } } }, "UserMonitoringPatch": { "type": "object", "properties": { "enableCallParkNotification": { "type": "boolean", "example": true, "description": "Call park notification is enabled or disabled." }, "monitoredElements": { "type": "array", "maxItems": 50, "items": { "type": "string" }, "description": "Array of ID strings of monitored elements. Maximum 50 elements." } } }, "UserNumberItem": { "type": "object", "required": [ "primary" ], "properties": { "external": { "type": "string", "example": "+19075552859", "description": "Phone number of person or workspace. Either `phoneNumber` or `extension` is mandatory." }, "extension": { "type": "string", "example": "8080", "description": "Extension of person or workspace. Either `phoneNumber` or `extension` is mandatory." }, "routingPrefix": { "type": "string", "example": "1234", "description": "Routing prefix of location." }, "esn": { "type": "string", "example": "12348080", "description": "Routing prefix + extension of a person or workspace." }, "primary": { "type": "boolean", "example": true, "description": "Flag to indicate primary phone." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "Flag to indicate toll free number." } } }, "UserOutgoingPermissionGet": { "type": "object", "required": [ "useCustomPermissions", "callingPermissions" ], "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates that this workspace uses the shared control that applies to all outgoing call settings categories when placing outbound calls." }, "useCustomPermissions": { "type": "boolean", "example": true, "description": "When `true`, indicates that this workspace uses the specified outgoing calling permissions when placing outbound calls." }, "callingPermissions": { "type": "array", "items": { "$ref": "#/components/schemas/CallingPermission" }, "description": "Workspace's list of outgoing permissions." } } }, "UserOutgoingPermissionPatch": { "type": "object", "properties": { "useCustomEnabled": { "type": "boolean", "example": true, "description": "When `true`, indicates that this workspace uses the shared control that applies to all outgoing call settings categories when placing outbound calls." }, "useCustomPermissions": { "type": "boolean", "example": true, "description": "When `true`, indicates that this workspace uses the specified outgoing calling permissions when placing outbound calls." }, "callingPermissions": { "type": "array", "items": { "$ref": "#/components/schemas/ModifyCallingPermission" }, "description": "Workspace's list of outgoing permissions." } } }, "PlaceGetNumbersResponse": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "distinctiveRingEnabled": { "type": "boolean", "example": true, "description": "Enables a distinctive ring pattern for the person." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/PhoneNumber" }, "description": "List of phone numbers that are assigned to a person." } } }, "WorkspaceAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "WorkspaceECBNAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceECBNAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceECBNAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which the phone number is assigned." }, "type": { "type": "string", "enum": [ "PLACE", "PEOPLE", "VIRTUAL_LINE", "HUNT_GROUP" ], "description": "Type of the phone number's owner.\n * `PLACE` - Phone number's owner is a workspace.\n * `PEOPLE` - Phone number's owner is a person.\n * `VIRTUAL_LINE` - Phone number's owner is a Virtual Line.\n * `HUNT_GROUP` - Phone number's owner is a Hunt Group.\n" }, "firstName": { "type": "string", "example": "Test", "description": "First name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the phone number's owner. This field will be present only when the owner `type` is `PLACE` or `HUNT_GROUP`." } } } } }, "WorkspaceCallForwardAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceCallForwardAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceCallForwardAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber", "owner" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "$ref": "#/components/schemas/NumberOwnerObject", "description": "Owner details for the phone number." } } }, "NumberOwnerObject": { "type": "object", "required": [ "id", "type" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jODhiZGIwNC1jZjU5LTRjMjMtODQ4OC00NTNhOTE3ZDFlMjk", "description": "Unique identifier of the owner to which the PSTN Phone number is assigned." }, "type": { "$ref": "#/components/schemas/NumberOwnerType", "description": "Type of the PSTN phone number's owner." }, "firstName": { "type": "string", "example": "Test", "description": "First name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "lastName": { "type": "string", "example": "Person", "description": "Last name of the PSTN phone number's owner. This field will be present only when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." }, "displayName": { "type": "string", "example": "TestWorkSpace", "description": "Display name of the PSTN phone number's owner. This field will be present except when the owner `type` is `PEOPLE` or `VIRTUAL_LINE`." } } }, "WorkspaceCallInterceptAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceCallInterceptAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceCallInterceptAvailableNumberObject": { "type": "object", "required": [ "state", "isMainNumber", "tollFreeNumber", "telephonyType", "isServiceNumber", "owner" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the PSTN phone number." }, "extension": { "type": "string", "example": "1235", "description": "Extension for the PSTN phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "tollFreeNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a toll-free number." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." }, "owner": { "$ref": "#/components/schemas/NumberOwnerObject", "description": "Owner details for the phone number." } } }, "AnonymousCallRejectionGet": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the Anonymous Call Rejection feature is enabled." } } }, "AnonymousCallRejectionPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "`true` if the Anonymous Call Rejection feature is enabled." } } }, "UserBargeInGet": { "type": "object", "required": [ "enabled", "toneEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the BargeIn feature is enabled." }, "toneEnabled": { "type": "boolean", "description": "When `true`, a tone is played when someone barges into a call." } } }, "UserBargeInPatch": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "description": "`true` if the Barge In feature is enabled." }, "toneEnabled": { "type": "boolean", "description": "When `true`, a tone is played when someone barges into a call." } } }, "PlaceDoNotDisturbGet": { "type": "object", "required": [ "enabled", "ringSplashEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if the DoNotDisturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "When `true`, enables ring reminder when you receive an incoming call while on Do Not Disturb." } } }, "PlaceDoNotDisturbPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "description": "`true` if the DoNotDisturb feature is enabled." }, "ringSplashEnabled": { "type": "boolean", "description": "When `true`, enables ring reminder when you receive an incoming call while on Do Not Disturb." } } }, "CallBridgeGet": { "type": "object", "required": [ "warningToneEnabled" ], "properties": { "warningToneEnabled": { "type": "boolean", "description": "`true` if the Call Bridge Warning Tone feature is enabled." } } }, "CallBridgePatch": { "type": "object", "required": [ "warningToneEnabled" ], "properties": { "warningToneEnabled": { "type": "boolean", "description": "`true` if the Call Bridge Warning Tone feature is enabled." } } }, "PrivacyPatch": { "type": "object", "properties": { "aaExtensionDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant extension dialing is enabled." }, "aaNamingDialingEnabled": { "type": "boolean", "example": true, "description": "When `true` auto attendant dialing by first or last name is enabled." }, "enablePhoneStatusDirectoryPrivacy": { "type": "boolean", "example": true, "description": "When `true` phone status directory privacy is enabled." }, "enablePhoneStatusPickupBargeInPrivacy": { "type": "boolean", "example": true, "description": "When `true` privacy is enforced for call pickup and barge-in. Only members specified by `monitoringAgents` can pickup or barge-in on the call." }, "monitoringAgents": { "type": "array", "items": { "type": "string" }, "description": "List of monitoring person IDs." } } }, "SequentialRingCriteriaPatch": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the sequential ring is in effect." }, "scheduleType": { "type": "string", "enum": [ "holidays", "businessHours" ], "description": "This indicates the type of schedule.\n * `holidays` - The Schedule is of type `holidays`.\n * `businessHours` - The Schedule is of type `businessHours`.\n" }, "scheduleLevel": { "type": "string", "enum": [ "GROUP" ], "description": "This indicates the level of the schedule specified by `scheduleName`.\n * `GROUP` - The Schedule specified is of `GROUP` level.\n" }, "callsFrom": { "type": "string", "enum": [ "SELECT_PHONE_NUMBERS", "ANY_PHONE_NUMBER" ], "description": "This indicates if criteria are applicable for calls from any phone number or selected phone numbers.\n * `SELECT_PHONE_NUMBERS` - Sequential ring criteria only applies for selected incoming numbers.\n * `ANY_PHONE_NUMBER` - Sequential ring criteria applies for any incoming number.\n" }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from private numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true` incoming calls from unavailable numbers are allowed. This is only applicable when `callsFrom` is set to `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "When callsFrom is set to `SELECT_PHONE_NUMBERS`, indicates a list of incoming phone numbers for which the criteria apply." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "UserCallPoliciesPatch": { "type": "object", "required": [ "connectedLineIdPrivacyOnRedirectedCalls" ], "properties": { "connectedLineIdPrivacyOnRedirectedCalls": { "type": "string", "enum": [ "NO_PRIVACY", "PRIVACY_FOR_EXTERNAL_CALLS", "PRIVACY_FOR_ALL_CALLS" ], "description": "Specifies the connection type to be used.\n * `NO_PRIVACY` - Connected line identification is not blocked on redirected calls.\n * `PRIVACY_FOR_EXTERNAL_CALLS` - Connected line identification is blocked on redirected calls to external numbers.\n * `PRIVACY_FOR_ALL_CALLS` - Connected line identification is blocked on all redirected calls.\n" } } }, "SequentialRingGet": { "type": "object", "required": [ "enabled", "ringBaseLocationFirstEnabled", "baseLocationNumberOfRings", "continueIfBaseLocationIsBusyEnabled", "callsToVoicemailEnabled", "phoneNumbers", "criteria" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ring is enabled." }, "ringBaseLocationFirstEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the webex calling primary line will ring first." }, "baseLocationNumberOfRings": { "type": "string", "example": "2", "description": "The number of times the primary line will ring." }, "continueIfBaseLocationIsBusyEnabled": { "type": "boolean", "example": true, "description": "When set to `true` and the primary line is busy, the system redirects calls to the numbers configured for sequential ringing." }, "callsToVoicemailEnabled": { "type": "boolean", "example": true, "description": "When set to `true` calls are directed to voicemail." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingNumber" }, "description": "A list of up to five phone numbers to which calls will be directed." }, "criteria": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingCriteria" }, "description": "A list of criteria specifying conditions when sequential ringing is in effect." } } }, "SequentialRingCriteria": { "type": "object", "required": [ "id", "scheduleName", "source", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the sequential ring is in effect." }, "source": { "$ref": "#/components/schemas/Source", "description": "If criterias are applicable for calls from any phone number or specific phone number." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SequentialRingPatch": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "When set to `true` sequential ring is enabled." }, "ringBaseLocationFirstEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the webex calling primary line will ring first." }, "baseLocationNumberOfRings": { "type": "number", "example": 2, "description": "The number of times the primary line will ring. `baseLocationNumberOfRings` must be between 2 and 20, inclusive." }, "continueIfBaseLocationIsBusyEnabled": { "type": "boolean", "example": true, "description": "When set to `true` and the primary line is busy, the system redirects calls to the numbers configured for sequential ringing." }, "callsToVoicemailEnabled": { "type": "boolean", "example": true, "description": "When set to `true` calls are directed to voicemail." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SequentialRingNumberPatch" }, "description": "A list of up to five phone numbers to which calls will be directed." } } }, "SequentialRingNumberPatch": { "type": "object", "properties": { "phoneNumber": { "type": "string", "example": "+442071838750", "description": "Phone number set as the sequential number." }, "answerConfirmationRequiredEnabled": { "type": "boolean", "example": true, "description": "When set to `true` the called party is required to press 1 on the keypad to receive the call." }, "numberOfRings": { "type": "number", "example": 2, "description": "The number of rings to the specified phone number before the call advances to the subsequent number in the sequence or goes to voicemail. `numberOfRings` must be between 2 and 20, inclusive." } } }, "SimultaneousRingNumberGet": { "type": "object", "required": [ "phoneNumber", "answerConfirmationRequiredEnabled" ], "properties": { "phoneNumber": { "type": "string", "example": "+19075552859", "description": "Phone number set as the sequential number." }, "answerConfirmationRequiredEnabled": { "type": "boolean", "example": true, "description": "When set to `true` the called party is required to press 1 on the keypad to receive the call." } } }, "SimultaneousRingCriteria": { "type": "object", "required": [ "id", "source", "ringEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the simultaneous ring is in effect." }, "source": { "$ref": "#/components/schemas/Source", "description": "If criteria are applicable for calls from any phone number or specific phone number." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SimultaneousRingPatch": { "type": "object", "required": [ "criteriasEnabled" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "Simultaneous Ring is enabled or not." }, "doNotRingIfOnCallEnabled": { "type": "boolean", "example": true, "description": "When set to `true`, the configured phone numbers won't ring when on a call." }, "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/SimultaneousRingNumber" }, "description": "Enter up to 10 phone numbers to ring simultaneously when a workspace phone receives an incoming call." }, "criteriasEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables the selected schedule for simultaneous ring." } } }, "PlaceSimultaneousRingCriteriaGet": { "type": "object", "required": [ "id", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply simultaneously ring for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing criteria is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "ScheduleTypeSelection": { "type": "string", "enum": [ "businessHours", "holidays" ], "description": " * `businessHours` - The Schedule type that specifies the business or working hours during the day.\n * `holidays` - The Schedule type that specifies the day when your organization is not open.\n" }, "PlaceScheduleLevel": { "type": "string", "enum": [ "GROUP" ], "description": " * `GROUP` - Indicates the schedule level that specifies that criteria is of Group level.\n" }, "CallsFromTypeForSelectiveForward": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ANY_PHONE_NUMBER` - The schedule applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The schedule applies to select phone number defined in the `phoneNumbers` property.\n * `ANY_INTERNAL` - The schedule applies to any internal phone number.\n * `ANY_EXTERNAL` - The schedule applies to any external phone number.\n" }, "PlaceSimultaneousRingCriteriaPost": { "type": "object", "required": [ "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "ringEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply simultaneously ring for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing criteria is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "PlaceSimultaneousRingCriteriaPatch": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the simultaneous ring is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply simultaneously ring for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "ringEnabled": { "type": "boolean", "example": true, "description": "When set to `true` simultaneous ringing criteria is enabled for calls that meet the current criteria. Criteria with `ringEnabled` set to `false` take priority." } } }, "SelectiveRejectCriteria": { "type": "object", "required": [ "id", "scheduleName", "source", "rejectEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective reject is in effect." }, "source": { "$ref": "#/components/schemas/SelectiveRejectCallSource", "description": "If criteria are applicable for calls from any phone number, specific phone number or forwarded ones." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "This setting specifies to choose to reject or not to reject the calls that fit within these parameters." } } }, "SelectiveRejectCallSource": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS", "FORWARDED" ], "description": " * `ALL_NUMBERS` - Selective reject criteria applies for all incoming numbers.\n * `SPECIFIC_NUMBERS` - Selective reject criteria applies for calls from specific numbers.\n * `FORWARDED` - Selective reject criteria applies for all forwarded calls.\n" }, "PlaceSelectiveRejectCallCriteriaGet": { "type": "object", "required": [ "id", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective reject is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveRejectCallCallsFromType", "description": "Indicates whether to apply the selective reject criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective reject to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective reject to calls if the callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the calls, that fit within these parameters, will be rejected (if rejectEnabled = `true`) or not (if rejectEnabled = `false`)." } } }, "SelectiveRejectCallCallsFromType": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "FORWARDED" ], "description": " * `ANY_PHONE_NUMBER` - The Schedule applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The Schedule applies to select phone number defined in the `phoneNumbers` property.\n * `FORWARDED` - The Schedule applies to the forwarded calls only.\n" }, "PlaceSelectiveRejectCallCriteriaPost": { "type": "object", "required": [ "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "rejectEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective reject is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveRejectCallCallsFromType", "description": "Indicates whether to apply the selective reject criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Choose to reject (if `rejectEnabled` = `true`) or not to reject (if `rejectEnabled` = `false`) the calls that fit within these parameters." } } }, "PlaceSelectiveRejectCallCriteriaPatch": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective reject is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveRejectCallCallsFromType", "description": "Indicates whether to apply the selective reject criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "rejectEnabled": { "type": "boolean", "example": true, "description": "Choose to reject (if `rejectEnabled` = `true`) or not to reject (if `rejectEnabled` = `false`) the calls that fit within these parameters." } } }, "SelectiveAcceptCallSource": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS", "FORWARDED" ], "description": " * `ALL_NUMBERS` - Selective accept criteria applies for all incoming numbers.\n * `SPECIFIC_NUMBERS` - Selective accept criteria applies for calls from specific numbers.\n * `FORWARDED` - Selective accept criteria applies for all forwarded calls.\n" }, "PlaceSelectiveAcceptCallCriteriaGet": { "type": "object", "required": [ "id", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective accept is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveAcceptCallCallsFromType", "description": "Indicates whether to apply the selective accept criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective accept to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective accept to calls if the callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the calls, that fit within these parameters, will be accepted (if acceptEnabled = `true`) or not (if acceptEnabled = `false`)." } } }, "SelectiveAcceptCallCallsFromType": { "type": "string", "enum": [ "ANY_PHONE_NUMBER", "SELECT_PHONE_NUMBERS", "FORWARDED" ], "description": " * `ANY_PHONE_NUMBER` - The Schedule applies to any phone number.\n * `SELECT_PHONE_NUMBERS` - The Schedule applies to select phone number defined in the `phoneNumbers` property.\n * `FORWARDED` - The Schedule applies to the forwarded calls only.\n" }, "PlaceSelectiveAcceptCallCriteriaPost": { "type": "object", "required": [ "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "acceptEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective accept is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveAcceptCallCallsFromType", "description": "Indicates whether to apply the selective accept criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Choose to accept (if `acceptEnabled` = `true`) or not to accept (if `acceptEnabled` = `false`) the calls that fit within these parameters." } } }, "PlaceSelectiveAcceptCallCriteriaPatch": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective accept is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/SelectiveAcceptCallCallsFromType", "description": "Indicates whether to apply the selective accept criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "acceptEnabled": { "type": "boolean", "example": true, "description": "Choose to accept (if `acceptEnabled` = `true`) or not to accept (if `acceptEnabled` = `false`) the calls that fit within these parameters." } } }, "PriorityAlertCriteria": { "type": "object", "required": [ "id", "source", "notificationEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the priority alert is in effect." }, "source": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS" ], "description": "If criteria are applicable for calls from any phone number or specific phone number.\n * `ALL_NUMBERS` - Indicates that priority alert criteria apply for all incoming numbers.\n * `SPECIFIC_NUMBERS` - Indicates priority alert criteria only apply to specific incoming numbers.\n" }, "notificationEnabled": { "type": "boolean", "example": true, "description": "When set to `true` notification is enabled for calls that meet the current criteria. Criteria with `notificationEnabled` set to `false` take priority." } } }, "PlacePriorityAlertCriteriaGet": { "type": "object", "required": [ "id", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the priority alert is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e. Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply priority alert for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "notificationEnabled": { "type": "boolean", "example": true, "description": "When set to `true` priority alerting criteria is enabled for calls that meet the current criteria. Criteria with `notificationEnabled` set to `false` take priority." } } }, "PlacePriorityAlertCriteriaPost": { "type": "object", "required": [ "scheduleName", "scheduleType", "scheduleLevel", "callsFrom", "notificationEnabled" ], "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the priority alert is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e. Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply priority alert for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match. Value for this attribute is required if `callsFrom` is `SELECT_PHONE_NUMBERS`." }, "notificationEnabled": { "type": "boolean", "example": true, "description": "When set to `true` priority alerting criteria is enabled for calls that meet the current criteria. Criteria with `notificationEnabled` set to `false` take priority." } } }, "PlacePriorityAlertCriteriaPatch": { "type": "object", "properties": { "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the priority alert is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e. Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromType", "description": "Indicates whether to apply priority alert for calls from Any Phone Number or Select Phone Numbers." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables calls even if callers are unavailable." }, "phoneNumbers": { "type": "array", "items": { "type": "string", "example": "+19064441748,+19186663950" }, "description": "the list of phone numbers that will checked against incoming calls for a match." }, "notificationEnabled": { "type": "boolean", "example": true, "description": "When set to `true` priority alerting criteria is enabled for calls that meet the current criteria. Criteria with `notificationEnabled` set to `false` take priority." } } }, "PlaceSelectiveForwardCallCriteriaGet": { "type": "object", "required": [ "id", "callsFrom" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL0NSSVRFUklBLzg2NTAxZDFlLTg1MWMtNDgwYi1hZmE2LTA5MTU4NzQ3NzdmZQ", "description": "Unique identifier for criteria." }, "forwardToPhoneNumber": { "type": "string", "example": "+1934898988", "description": "Phone number to forward calls to during this schedule." }, "sendToVoicemailEnabled": { "type": "boolean", "description": "Enables forwarding for all calls to voicemail. This option is only available for internal phone numbers or extensions." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective forward is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromTypeForSelectiveForward", "description": "Indicates whether to apply the selective forward criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls if the callers are unavailable." }, "numbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "List of phone numbers checked against incoming calls for a match." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the calls, that fit within these parameters, will be forwarded (if forwardEnabled = `true`) or not (if forwardEnabled = `false`)." } } }, "PlaceSelectiveForwardCallCriteriaPost": { "type": "object", "required": [ "callsFrom" ], "properties": { "forwardToPhoneNumber": { "type": "string", "example": "+1934898988", "description": "Phone number to forward calls to during this schedule." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables forwarding for all calls to voicemail. This option is only available for internal phone numbers or extensions." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective forward is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromTypeForSelectiveForward", "description": "Indicates whether to apply the selective forward criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls if the callers are unavailable." }, "numbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "List of phone numbers checked against incoming calls for a match." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the calls, that fit within these parameters, will be forwarded (if forwardEnabled = `true`) or not (if forwardEnabled = `false`)." } } }, "PlaceSelectiveForwardCallCriteriaPatch": { "type": "object", "required": [ "callsFrom" ], "properties": { "forwardToPhoneNumber": { "type": "string", "example": "+1934898988", "description": "Phone number to forward calls to during this schedule." }, "destinationVoicemailEnabled": { "type": "boolean", "description": "Enables forwarding for all calls to voicemail. This option is only available for internal phone numbers or extensions." }, "scheduleName": { "type": "string", "example": "Business Vacation", "description": "Name of the location's schedule which determines when the selective forward is in effect." }, "scheduleType": { "$ref": "#/components/schemas/ScheduleTypeSelection", "description": "The Schedule type whether `businessHours` or `holidays`." }, "scheduleLevel": { "$ref": "#/components/schemas/PlaceScheduleLevel", "description": "The Schedule level i.e, Group." }, "callsFrom": { "$ref": "#/components/schemas/CallsFromTypeForSelectiveForward", "description": "Indicates whether to apply the selective forward criteria for calls from Any Phone Number, Select Phone Numbers or Forwarded ones." }, "anonymousCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls from anonymous callers." }, "unavailableCallersEnabled": { "type": "boolean", "example": true, "description": "When `true`, enables selective forward to calls if the callers are unavailable." }, "numbers": { "type": "array", "items": { "type": "string", "example": "+19075552859,+19186663950" }, "description": "List of phone numbers checked against incoming calls for a match." }, "forwardEnabled": { "type": "boolean", "example": true, "description": "Indicates whether the calls, that fit within these parameters, will be forwarded (if forwardEnabled = `true`) or not (if forwardEnabled = `false`)." } } }, "WorkspaceOutgoingPermissionDigitPatternGetListObject": { "type": "object", "required": [ "useCustomDigitPatterns", "digitPatterns" ], "properties": { "useCustomDigitPatterns": { "type": "boolean", "description": "When `true`, use custom settings for the digit patterns category of outgoing call permissions." }, "digitPatterns": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceDigitPatternObject" }, "description": "List of digit patterns." } } }, "WorkspaceOutgoingPermissionDigitPatternPostObject": { "type": "object", "required": [ "name", "pattern", "action", "transferEnabled" ], "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "WorkspaceOutgoingPermissionDigitPatternCategoryControlPatchObject": { "type": "object", "properties": { "useCustomDigitPatterns": { "type": "boolean", "example": true, "description": "When `true`, use custom settings for the digit patterns category of outgoing call permissions." } } }, "WorkspaceOutgoingPermissionDigitPatternPatchObject": { "type": "object", "properties": { "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "WorkspaceDigitPatternObject": { "type": "object", "required": [ "id", "name", "pattern", "action", "transferEnabled" ], "properties": { "id": { "type": "string", "example": "Y2lzY29zcGFyazovL3VzL1NDSEVEVUxFL1FWVlVUMEZVVkVWT1JFRk9WQzFDVlZOSlRrVlRVeTFJVDFWU1V3", "description": "A unique identifier for the digit pattern." }, "name": { "type": "string", "example": "DigitPattern1", "description": "A unique name for the digit pattern." }, "pattern": { "type": "string", "example": "1XXX", "description": "The digit pattern to be matched with the input number." }, "action": { "type": "string", "enum": [ "ALLOW", "BLOCK", "AUTH_CODE", "TRANSFER_NUMBER_1", "TRANSFER_NUMBER_2", "TRANSFER_NUMBER_3" ], "description": "Action to be performed on the input number that matches the digit pattern.\n * `ALLOW` - Allow the designated call type.\n * `BLOCK` - Block the designated call type.\n * `AUTH_CODE` - Allow only via Authorization Code.\n * `TRANSFER_NUMBER_1` - Transfer to Auto Transfer Number 1. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_2` - Transfer to Auto Transfer Number 2. The answering person can then approve the call and send it through or reject the call.\n * `TRANSFER_NUMBER_3` - Transfer to Auto Transfer Number 3. The answering person can then approve the call and send it through or reject the call.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." } } }, "WorkspaceFaxMessageAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceFaxMessageAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceFaxMessageAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "WorkspaceSecondaryAvailableNumberListGetObject": { "type": "object", "required": [ "phoneNumbers" ], "properties": { "phoneNumbers": { "type": "array", "items": { "$ref": "#/components/schemas/WorkspaceSecondaryAvailableNumberObject" }, "description": "Array of phone numbers." } } }, "WorkspaceSecondaryAvailableNumberObject": { "type": "object", "required": [ "phoneNumber", "state", "isMainNumber", "telephonyType", "isServiceNumber" ], "properties": { "phoneNumber": { "type": "string", "example": "+12056350001", "description": "A unique identifier for the phone number." }, "state": { "$ref": "#/components/schemas/STATE", "description": "Phone number's state." }, "isMainNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is used as a location CLID." }, "telephonyType": { "$ref": "#/components/schemas/TelephonyType", "description": "The telephony type for the number." }, "isServiceNumber": { "type": "boolean", "example": true, "description": "If `true`, the phone number is a service number; otherwise, it is a standard number. Service numbers are high-utilization or high-concurrency PSTN phone numbers that are neither mobile nor toll-free." } } }, "SourceForSelectiveForward": { "type": "string", "enum": [ "ALL_NUMBERS", "SPECIFIC_NUMBERS", "ANY_INTERNAL", "ANY_EXTERNAL" ], "description": " * `ALL_NUMBERS` - Criteria applies to all incoming numbers.\n * `SPECIFIC_NUMBERS` - Criteria applies only for specific incoming numbers.\n * `ANY_INTERNAL` - Criteria applies to all internal incoming numbers.\n * `ANY_EXTERNAL` - Criteria applies to all external incoming numbers.\n" }, "callRecordingResponse": { "type": "object", "properties": { "vendorId": { "type": "string", "example": "53dc4c87-8408-4882-9570-dca2bcdb9280", "description": "Vendor id returned if Terms of Service is not accepted." }, "vendorName": { "type": "string", "example": "Dubber", "description": "Vendor name returned if Terms of Service is not accepted." }, "termsOfServiceUrl": { "type": "string", "example": "https://www.dubber.net/terms", "description": "Terms of Service URL returned if Terms of Service is not accepted." } } } }, "securitySchemes": { "oauth2": { "flows": { "authorizationCode": { "authorizationUrl": "/", "scopes": {}, "tokenUrl": "/" } }, "type": "oauth2" }, "bearer-key": { "type": "http", "description": "e.g. Bearer YOUR_AUTHORIZATION_TOKEN", "scheme": "bearer", "bearerFormat": "JWT" }, "bearerAuth": { "type": "http", "description": "e.g. Bearer YOUR_AUTHORIZATION_TOKEN", "scheme": "bearer", "bearerFormat": "JWT" } }, "parameters": {}, "responses": {}, "requestBodies": {} } }