{ "opencollection": "1.0.0", "info": { "name": "Webex Admin Address Book External Voicemail API", "version": "1.0.0" }, "items": [ { "info": { "name": "External Voicemail", "type": "folder" }, "items": [ { "info": { "name": "Dial", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/dial", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Answer", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/answer", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Reject", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/reject", "body": { "type": "json", "data": "{}" } }, "docs": "Reject an unanswered incoming call." }, { "info": { "name": "Hangup", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/hangup", "body": { "type": "json", "data": "{}" } }, "docs": "Hangup a call. If used on an unanswered incoming call, the call is rejected and sent to busy." }, { "info": { "name": "Hold", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/hold", "body": { "type": "json", "data": "{}" } }, "docs": "Hold a connected call." }, { "info": { "name": "Resume", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/resume", "body": { "type": "json", "data": "{}" } }, "docs": "Resume a held call." }, { "info": { "name": "Mute", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/mute", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Unmute", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/unmute", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Divert", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/divert", "body": { "type": "json", "data": "{}" } }, "docs": "Divert a call to a destination or a user's voicemail. This is also commonly referred to as a Blind Transfer." }, { "info": { "name": "Transfer", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/transfer", "body": { "type": "json", "data": "{}" } }, "docs": "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. Tho" }, { "info": { "name": "Park", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/park", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Retrieve", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/retrieve", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Start Recording", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/startRecording", "body": { "type": "json", "data": "{}" } }, "docs": "Start recording a call. Use of this API is only valid when the user's call recording mode is set to \"On Demand\"." }, { "info": { "name": "Stop Recording", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/stopRecording", "body": { "type": "json", "data": "{}" } }, "docs": "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\"." }, { "info": { "name": "Pause Recording", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/pauseRecording", "body": { "type": "json", "data": "{}" } }, "docs": "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\"." }, { "info": { "name": "Resume Recording", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/resumeRecording", "body": { "type": "json", "data": "{}" } }, "docs": "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\"." }, { "info": { "name": "Transmit DTMF", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/transmitDtmf", "body": { "type": "json", "data": "{}" } }, "docs": "Transmit DTMF digits to a call." }, { "info": { "name": "Push", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/push", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Pickup", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/pickup", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "Barge In", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/bargeIn", "body": { "type": "json", "data": "{}" } }, "docs": "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." }, { "info": { "name": "List Calls", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/telephony/calls", "params": [ { "name": "lineOwnerId", "value": "Y2lzY29z...", "type": "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." } ] }, "docs": "Get the list of details for all active calls associated with the user." }, { "info": { "name": "Get Call Details", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/telephony/calls/:callId", "params": [ { "name": "callId", "value": "string", "type": "path", "description": "The call identifier of the call." }, { "name": "lineOwnerId", "value": "Y2lzY29z...", "type": "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." } ] }, "docs": "Get the details of the specified active call for the user." }, { "info": { "name": "List Call History", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/telephony/calls/history", "params": [ { "name": "type", "value": "placed", "type": "query", "description": "The type of call history records to retrieve. If not specified, then all call history records are retrieved." } ] }, "docs": "Get the list of call history records for the user. A maximum of 20 call history records per type (`placed`, `missed`, `received`) are returned." }, { "info": { "name": "Set or Clear Message Waiting Indicator (MWI) Status", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/externalVoicemail/mwi", "params": [ { "name": "id", "value": "Y2lzY29zcGFyazovL3VybjpURUFNOnVzLWVhc3QtMV9pbnQxMy9QTEFDRS8xNzdmNTNlZC1hNzY2LTRkYTAtOGQ3OC03MjE0MjhjMmFjZTQ=", "type": "query", "description": "Unique identifier for the user or workspace." }, { "name": "orgId", "value": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE=", "type": "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." } ], "body": { "type": "json", "data": "{}" } }, "docs": "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 mat" }, { "info": { "name": "Pull", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/telephony/calls/pull", "body": { "type": "json", "data": "{}" } }, "docs": "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." } ] } ], "bundled": true }