{
"swagger": "2.0",
"info": {
"title": "Azure Communication Service Call Automation APIs",
"description": "Azure Communication Service Call Automation APIs",
"version": "2026-03-12"
},
"host": "contoso.communication.azure.com",
"schemes": [
"https"
],
"paths": {
"/calling/callConnections": {
"post": {
"tags": [
"PreConnections"
],
"summary": "Create an outbound call.",
"description": "Create an outbound call.",
"operationId": "CreateCall",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "createCallRequest",
"description": "The create call request.",
"required": true,
"schema": {
"$ref": "#/definitions/CreateCallRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"201": {
"description": "Returns details of the call properties once the CreateCall request is received by service. You will receive CallConnected event at your specified callback URI, once the call is connected.",
"schema": {
"$ref": "#/definitions/CallConnectionProperties"
}
}
},
"x-ms-examples": {
"CreateCall": {
"$ref": "./examples/CreateCall.json"
}
}
}
},
"/calling/callConnections:answer": {
"post": {
"tags": [
"PreConnections"
],
"summary": "Answer a Call.",
"description": "Answer a call using the IncomingCallContext from Event Grid.",
"operationId": "AnswerCall",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "answerCallRequest",
"description": "The answer call request.",
"required": true,
"schema": {
"$ref": "#/definitions/AnswerCallRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns details of the call properties once the AnswerCall request is received by service. You will receive CallConnected event at your specified callback URI, once the call is connected.",
"schema": {
"$ref": "#/definitions/CallConnectionProperties"
}
}
},
"x-ms-examples": {
"AnswerCall": {
"$ref": "./examples/AnswerCall.json"
}
}
}
},
"/calling/callConnections:redirect": {
"post": {
"tags": [
"PreConnections"
],
"summary": "Redirect a call.",
"description": "Redirect a call.",
"operationId": "RedirectCall",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "redirectCallRequest",
"description": "The redirect call request.",
"required": true,
"schema": {
"$ref": "#/definitions/RedirectCallRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"204": {
"description": "The service has redirected the call to specified endpoint."
}
},
"x-ms-examples": {
"RedirectCall": {
"$ref": "./examples/RedirectCall.json"
}
}
}
},
"/calling/callConnections:reject": {
"post": {
"tags": [
"PreConnections"
],
"summary": "Reject the call.",
"description": "Reject the call.",
"operationId": "RejectCall",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "rejectCallRequest",
"description": "The reject call request.",
"required": true,
"schema": {
"$ref": "#/definitions/RejectCallRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"204": {
"description": "The service has rejected the call."
}
},
"x-ms-examples": {
"RejectCall": {
"$ref": "./examples/RejectCall.json"
}
}
}
},
"/calling/callConnections:connect": {
"post": {
"tags": [
"PreConnections"
],
"summary": "Create a Connection to a CallLocator.",
"description": "Create a connection to a CallLocator.",
"operationId": "Connect",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "connectRequest",
"description": "The create connection request.",
"required": true,
"schema": {
"$ref": "#/definitions/ConnectRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns connection to a callLocator",
"schema": {
"$ref": "#/definitions/CallConnectionProperties"
}
}
},
"x-ms-examples": {
"Connect": {
"$ref": "./examples/Connect.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}": {
"get": {
"tags": [
"MidConnections"
],
"summary": "Get the detail properties of an ongoing call.",
"operationId": "CallConnection_GetCall",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns details of the call properties.",
"schema": {
"$ref": "#/definitions/CallConnectionProperties"
}
}
},
"x-ms-examples": {
"CallConnection_GetCall": {
"$ref": "./examples/CallConnection_GetCall.json"
}
}
},
"delete": {
"tags": [
"MidConnections"
],
"summary": "Hang up call automation service from the call. This will make call automation service leave the call, but does not terminate if there are more than 1 caller in the call.",
"description": "Hang up call automation service from the call. This will make call automation service leave the call, but does not terminate if there are more than 1 caller in the call.",
"operationId": "CallConnection_HangupCall",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"204": {
"description": "Call automation service has left the call."
}
},
"x-ms-examples": {
"CallConnection_HangupCall": {
"$ref": "./examples/CallConnection_HangupCall.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:terminate": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Terminate a call using CallConnectionId.",
"description": "Terminate a call using CallConnectionId.",
"operationId": "CallConnection_TerminateCall",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The terminate call request.",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"204": {
"description": "The call is terminated."
}
},
"x-ms-examples": {
"CallConnection_TerminateCall": {
"$ref": "./examples/CallConnection_TerminateCall.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:transferToParticipant": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Transfer the call to a participant.",
"description": "Transfer the call to a participant.",
"operationId": "CallConnection_TransferToParticipant",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "transferToParticipantRequest",
"description": "The transfer to participant request.",
"required": true,
"schema": {
"$ref": "#/definitions/TransferToParticipantRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the transfer request and will begin processing it. You will receive either CallTransferAccepted or CallTransferFailed event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/TransferCallResponse"
}
}
},
"x-ms-examples": {
"CallConnection_TransferToParticipant": {
"$ref": "./examples/CallConnection_TransferToParticipant.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:play": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Plays audio to participants in the call.",
"description": "Plays audio to participants in the call.",
"operationId": "CallMedia_Play",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "playRequest",
"description": "play request payload.",
"required": true,
"schema": {
"$ref": "#/definitions/PlayRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the play request and will begin processing it. You will receive either PlayCompleted or PlayFailed event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_Play": {
"$ref": "./examples/CallMedia_Play.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:startTranscription": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Starts transcription in the call",
"description": "Starts transcription in the call",
"operationId": "CallMedia_StartTranscription",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "startTranscriptionRequest",
"required": true,
"schema": {
"$ref": "#/definitions/StartTranscriptionRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the start transcription request and will begin processing it. You will receive either TranscriptionStarted or TranscriptionFailed event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_StartTranscription": {
"$ref": "./examples/CallMedia_StartTranscription.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:stopTranscription": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Stops transcription in the call.",
"description": "Stops transcription in the call.",
"operationId": "CallMedia_StopTranscription",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "stopTranscriptionRequest",
"description": "stop transcription request payload.",
"required": true,
"schema": {
"$ref": "#/definitions/StopTranscriptionRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the stop transcription request and will begin processing it. You will receive either TranscriptionStopped event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_StopTranscription": {
"$ref": "./examples/CallMedia_StopTranscription.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:updateTranscription": {
"post": {
"tags": [
"MidConnections"
],
"summary": "UpdateTranscription Api.",
"description": "API to change transcription language.",
"operationId": "CallMedia_UpdateTranscription",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "updateTranscriptionRequest",
"description": "The UpdateTranscription request",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateTranscriptionRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "Returns the update transcription response"
}
},
"x-ms-examples": {
"CallMedia_UpdateTranscription": {
"$ref": "./examples/CallMedia_UpdateTranscription.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:cancelAllMediaOperations": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Cancel all media operations in a call.",
"description": "Cancel all media operations in a call.",
"operationId": "CallMedia_CancelAllMediaOperations",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the cancel request and will begin processing it. You will receive the RecognizeCanceled and/or PlayCanceled event at your specified callback URI to update you on the status of the request, based on which media operation has been canceled by it."
}
},
"x-ms-examples": {
"CallMedia_CancelAllMediaOperations": {
"$ref": "./examples/CallMedia_CancelAllMediaOperations.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:recognize": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Recognize media from call.",
"description": "Recognize media from call.",
"operationId": "CallMedia_Recognize",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "recognizeRequest",
"description": "The media recognize request",
"required": true,
"schema": {
"$ref": "#/definitions/RecognizeRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the recognize request and will begin processing it. You will receive either RecognizeCompleted or RecognizeFailed event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_Recognize": {
"$ref": "./examples/CallMedia_Recognize.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:startContinuousDtmfRecognition": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Start continuous Dtmf recognition by subscribing to tones.",
"operationId": "CallMedia_StartContinuousDtmfRecognition",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "continuousDtmfRecognitionRequest",
"description": "The continuous recognize request",
"required": true,
"schema": {
"$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "The service has started continuous dtmf recognition. You will receive either the ContinuousDtmfRecognitionToneReceived, ContinuousDtmfRecognitionToneFailed or ContinuousDtmfRecognitionStopped event at your specified callback URI. Continuous dtmf recognition can run in parallel with other media operations. For example if the Recognize operation is also active and a dtmf is detected, both ContinuousDtmfRecognitionToneReceived and RecognizeCompleted events will be received."
}
},
"x-ms-examples": {
"CallMedia_StartContinuousDtmfRecognition": {
"$ref": "./examples/CallMedia_StartContinuousDtmfRecognition.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:stopContinuousDtmfRecognition": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Stop continuous Dtmf recognition by unsubscribing to tones.",
"operationId": "CallMedia_StopContinuousDtmfRecognition",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "continuousDtmfRecognitionRequest",
"description": "The continuous recognize request",
"required": true,
"schema": {
"$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "The service has stopped continuous dtmf recognition. If continuous dtmf recognition was previously started, you will receive the ContinuousDtmfRecognitionStopped event at your specified callback URI."
}
},
"x-ms-examples": {
"CallMedia_StopContinuousDtmfRecognition": {
"$ref": "./examples/CallMedia_StopContinuousDtmfRecognition.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:sendDtmfTones": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Send dtmf tones.",
"description": "Send dtmf tones.",
"operationId": "CallMedia_SendDtmfTones",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "sendDtmfTonesRequest",
"description": "The send dtmf tones request",
"required": true,
"schema": {
"$ref": "#/definitions/SendDtmfTonesRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the send dtmf tones request and will begin processing it. You will receive either the SendDtmfTonesCompleted or the SendDtmfTonesFailed event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/SendDtmfTonesResult"
}
}
},
"x-ms-examples": {
"CallMedia_SendDtmfTones": {
"$ref": "./examples/CallMedia_SendDtmfTones.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:hold": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Hold participant from the call using identifier.",
"description": "Hold participant from the call using identifier.",
"operationId": "CallMedia_Hold",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "holdRequest",
"description": "The participants to be hold from the call.",
"required": true,
"schema": {
"$ref": "#/definitions/HoldRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the hold participant response"
}
},
"x-ms-examples": {
"CallMedia_Hold": {
"$ref": "./examples/CallMedia_Hold.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:unhold": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Unhold participants from the call using identifier.",
"description": "Unhold participants from the call using identifier.",
"operationId": "CallMedia_Unhold",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "unholdRequest",
"description": "The participants to be hold from the call.",
"required": true,
"schema": {
"$ref": "#/definitions/UnholdRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the unhold participant response"
}
},
"x-ms-examples": {
"CallMedia_Unhold": {
"$ref": "./examples/CallMedia_Unhold.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:startMediaStreaming": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Starts media streaming in the call",
"description": "Starts media streaming in the call.",
"operationId": "CallMedia_StartMediaStreaming",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "startMediaStreamingRequest",
"required": true,
"schema": {
"$ref": "#/definitions/StartMediaStreamingRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the start media streaming request and will begin processing it. You will receive either MediaStreamingStarted or MediaStreamingFailed event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_StartMediaStreaming": {
"$ref": "./examples/CallMedia_StartMediaStreaming.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}:stopMediaStreaming": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Stops media streaming in the call",
"description": "Stops media streaming in the call.",
"operationId": "CallMedia_StopMediaStreaming",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "stopMediaStreamingRequest",
"description": "stop media streaming request payload.",
"required": true,
"schema": {
"$ref": "#/definitions/StopMediaStreamingRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the stop media streaming request and will begin processing it. You will receive either MediaStreamingStopped or MediaStreamingFailed event at your specified callback URI to update you on the status of the request."
}
},
"x-ms-examples": {
"CallMedia_StopMediaStreaming": {
"$ref": "./examples/CallMedia_StopMediaStreaming.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants": {
"get": {
"tags": [
"MidConnections"
],
"summary": "Get participants from a call. Recording and transcription bots are omitted from this list.",
"description": "Get participants from a call. Recording and transcription bots are omitted from this list.",
"operationId": "CallConnection_GetParticipants",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection Id",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the get participants response.",
"schema": {
"$ref": "#/definitions/GetParticipantsResponse"
}
}
},
"x-ms-examples": {
"CallConnection_GetParticipants": {
"$ref": "./examples/CallConnection_GetParticipants.json"
}
},
"x-ms-pageable": {
"nextLinkName": "nextLink",
"itemName": "value"
}
}
},
"/calling/callConnections/{callConnectionId}/participants:add": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Add a participant to the call.",
"description": "Add a participant to the call.",
"operationId": "CallConnection_AddParticipant",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection Id",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "addParticipantRequest",
"required": true,
"schema": {
"$ref": "#/definitions/AddParticipantRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the add participant request and will begin processing it. You will receive either AddParticipantSucceeded or AddParticipantFailed event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/AddParticipantResponse"
}
}
},
"x-ms-examples": {
"CallConnection_AddParticipant": {
"$ref": "./examples/CallConnection_AddParticipant.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants:remove": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Remove a participant from the call using identifier.",
"description": "Remove a participant from the call using identifier.",
"operationId": "CallConnection_RemoveParticipant",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "removeParticipantRequest",
"description": "The participant to be removed from the call.",
"required": true,
"schema": {
"$ref": "#/definitions/RemoveParticipantRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the remove participant request and will begin processing it. You will receive either RemoveParticipantSucceeded or RemoveParticipantFailed event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/RemoveParticipantResponse"
}
}
},
"x-ms-examples": {
"CallConnection_RemoveParticipant": {
"$ref": "./examples/CallConnection_RemoveParticipant.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants:mute": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Mute participants from the call using identifier.",
"description": "Mute participants from the call using identifier.",
"operationId": "CallConnection_Mute",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection id.",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "muteParticipantsRequest",
"description": "The participants to be muted from the call.",
"required": true,
"schema": {
"$ref": "#/definitions/MuteParticipantsRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the mute participants response",
"schema": {
"$ref": "#/definitions/MuteParticipantsResult"
}
}
},
"x-ms-examples": {
"CallConnection_Mute": {
"$ref": "./examples/CallConnection_Mute.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants:cancelAddParticipant": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Cancel add participant operation.",
"description": "Cancel add participant operation.",
"operationId": "CallConnection_CancelAddParticipant",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection Id",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "cancelAddParticipantRequest",
"description": "Cancellation request.",
"required": true,
"schema": {
"$ref": "#/definitions/CancelAddParticipantRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "Returns the cancelAddParticipant response",
"schema": {
"$ref": "#/definitions/CancelAddParticipantResponse"
}
}
},
"x-ms-examples": {
"CallConnection_CancelAddParticipant": {
"$ref": "./examples/CallConnection_CancelAddParticipant.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants:moveHere": {
"post": {
"tags": [
"MidConnections"
],
"summary": "Move a participant to the call.",
"description": "Move a participant to the call.",
"operationId": "CallConnection_MoveParticipants",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection Id",
"required": true,
"type": "string"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "moveParticipantRequest",
"description": "The move participants request.",
"required": true,
"schema": {
"$ref": "#/definitions/MoveParticipantsRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the move participant request and will begin processing it. You will receive either MoveParticipantSucceeded or MoveParticipantFailed event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/MoveParticipantsResponse"
}
}
},
"x-ms-examples": {
"CallConnection_MoveParticipants": {
"$ref": "./examples/CallConnection_MoveParticipants.json"
}
}
}
},
"/calling/callConnections/{callConnectionId}/participants/{participantRawId}": {
"get": {
"tags": [
"MidConnections"
],
"summary": "Get participant from a call.",
"description": "Get participant from a call.",
"operationId": "CallConnection_GetParticipant",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "callConnectionId",
"description": "The call connection Id",
"required": true,
"type": "string"
},
{
"in": "path",
"name": "participantRawId",
"description": "Raw id of the participant to retrieve.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the detail of the requested participant.",
"schema": {
"$ref": "#/definitions/CallParticipant"
}
}
},
"x-ms-examples": {
"CallConnection_GetParticipant": {
"$ref": "./examples/CallConnection_GetParticipant.json"
}
}
}
},
"/calling/recordings": {
"post": {
"tags": [
"Recording"
],
"summary": "Start recording the call.",
"operationId": "CallRecording_StartRecording",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "header",
"name": "Repeatability-Request-ID",
"description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
"type": "string",
"format": "uuid"
},
{
"in": "header",
"name": "Repeatability-First-Sent",
"description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
"type": "string",
"format": "date-time-rfc1123"
},
{
"in": "body",
"name": "startCallRecording",
"description": "The request body of start call recording request.",
"required": true,
"schema": {
"$ref": "#/definitions/StartCallRecordingRequest"
}
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the start call recording response.",
"schema": {
"$ref": "#/definitions/RecordingStateResponse"
}
},
"202": {
"description": "The service has accepted the StartCallRecording request and will begin processing it. You will receive either a StartRecordingFailed event or RecordingStateChanged event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/RecordingStateResponse"
}
}
},
"x-ms-examples": {
"CallRecording_StartRecording": {
"$ref": "./examples/CallRecording_StartRecording.json"
}
}
}
},
"/calling/recordings/{recordingId}": {
"get": {
"tags": [
"Recording"
],
"summary": "Get call recording properties.",
"operationId": "CallRecording_GetRecordingProperties",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "recordingId",
"description": "The recording id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"200": {
"description": "Returns the recording properties.",
"schema": {
"$ref": "#/definitions/RecordingStateResponse"
}
}
},
"x-ms-examples": {
"CallRecording_GetRecordingProperties": {
"$ref": "./examples/CallRecording_GetRecordingProperties.json"
}
}
},
"delete": {
"tags": [
"Recording"
],
"summary": "Stop recording the call.",
"operationId": "CallRecording_StopRecording",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "recordingId",
"description": "The recording id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"204": {
"description": "Returns the stop call recording response."
}
},
"x-ms-examples": {
"CallRecording_StopRecording": {
"$ref": "./examples/CallRecording_StopRecording.json"
}
}
}
},
"/calling/recordings/{recordingId}:pause": {
"post": {
"tags": [
"Recording"
],
"summary": "Pause recording the call.",
"operationId": "CallRecording_PauseRecording",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "recordingId",
"description": "The recording id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the pause request and will begin processing it."
}
},
"x-ms-examples": {
"CallRecording_PauseRecording": {
"$ref": "./examples/CallRecording_PauseRecording.json"
}
}
}
},
"/calling/recordings/{recordingId}:resume": {
"post": {
"tags": [
"Recording"
],
"summary": "Resume recording the call.",
"operationId": "CallRecording_ResumeRecording",
"produces": [
"application/json"
],
"parameters": [
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"in": "path",
"name": "recordingId",
"description": "The recording id.",
"required": true,
"type": "string"
}
],
"responses": {
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
},
"202": {
"description": "The service has accepted the resume request and will begin processing it."
}
},
"x-ms-examples": {
"CallRecording_ResumeRecording": {
"$ref": "./examples/CallRecording_ResumeRecording.json"
}
}
}
}
},
"definitions": {
"AddParticipantFailed": {
"description": "The failed to add participants event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"AddParticipantRequest": {
"description": "The request payload for adding participant to the call.",
"required": [
"participantToAdd"
],
"type": "object",
"properties": {
"sourceCallerIdNumber": {
"$ref": "#/definitions/PhoneNumberIdentifierModel"
},
"sourceDisplayName": {
"description": "(Optional) The display name of the source that is associated with this invite operation when\r\nadding a PSTN participant or teams user. Note: Will not update the display name in the roster.",
"type": "string"
},
"participantToAdd": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"invitationTimeoutInSeconds": {
"format": "int32",
"description": "Gets or sets the timeout to wait for the invited participant to pickup.\r\nThe maximum value of this is 180 seconds",
"maximum": 180,
"minimum": 0,
"type": "integer"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
},
"customCallingContext": {
"$ref": "#/definitions/CustomCallingContext"
}
},
"additionalProperties": false
},
"AddParticipantResponse": {
"description": "The response payload for adding participants to the call.",
"type": "object",
"properties": {
"participant": {
"$ref": "#/definitions/CallParticipant"
},
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
},
"invitationId": {
"description": "Invitation ID used to add a participant.",
"type": "string"
}
},
"additionalProperties": false
},
"AddParticipantSucceeded": {
"description": "The participants successfully added event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"AnswerCallRequest": {
"description": "The request payload for answering the call.",
"required": [
"callbackUri",
"incomingCallContext"
],
"type": "object",
"properties": {
"incomingCallContext": {
"description": "The context associated with the call.",
"type": "string"
},
"callbackUri": {
"description": "The callback uri.",
"type": "string"
},
"operationContext": {
"description": "A customer set value used to track the answering of a call.",
"type": "string"
},
"callIntelligenceOptions": {
"$ref": "#/definitions/CallIntelligenceOptions"
},
"answeredBy": {
"$ref": "#/definitions/CommunicationUserIdentifierModel"
},
"mediaStreamingOptions": {
"$ref": "#/definitions/MediaStreamingOptions"
},
"transcriptionOptions": {
"$ref": "#/definitions/TranscriptionOptions"
}
},
"additionalProperties": false
},
"AnswerFailed": {
"description": "The failed to answer call event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"AudioFormat": {
"description": "The format of the audio received from the audio subscription option.",
"enum": [
"pcm16KMono",
"pcm24KMono"
],
"type": "string",
"x-ms-enum": {
"name": "AudioFormat",
"modelAsString": true
}
},
"CallConnected": {
"description": "The call connected event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CallConnectionProperties": {
"description": "Properties of a call connection",
"type": "object",
"properties": {
"callConnectionId": {
"description": "The call connection id.",
"type": "string"
},
"serverCallId": {
"description": "The server call id.",
"type": "string"
},
"targets": {
"description": "The targets of the call.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"callConnectionState": {
"$ref": "#/definitions/CallConnectionStateModel"
},
"callbackUri": {
"description": "The callback URI.",
"type": "string"
},
"sourceCallerIdNumber": {
"$ref": "#/definitions/PhoneNumberIdentifierModel"
},
"sourceDisplayName": {
"description": "Display name of the call if dialing out to a pstn number.",
"type": "string"
},
"source": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"correlationId": {
"description": "The correlation ID.",
"type": "string"
},
"answeredBy": {
"$ref": "#/definitions/CommunicationUserIdentifierModel"
},
"mediaStreamingSubscription": {
"$ref": "#/definitions/MediaStreamingSubscription"
},
"transcriptionSubscription": {
"$ref": "#/definitions/TranscriptionSubscription"
},
"answeredFor": {
"$ref": "#/definitions/PhoneNumberIdentifierModel"
}
},
"additionalProperties": false
},
"CallConnectionStateModel": {
"description": "The states of a call connection.",
"enum": [
"unknown",
"connecting",
"connected",
"transferring",
"transferAccepted",
"disconnecting",
"disconnected"
],
"type": "string",
"x-ms-enum": {
"name": "CallConnectionStateModel",
"modelAsString": true
}
},
"CallDisconnected": {
"description": "The call disconnected event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CallIntelligenceOptions": {
"description": "AI options for the call.",
"type": "object",
"properties": {
"cognitiveServicesEndpoint": {
"description": "The identifier of the Cognitive Service resource assigned to this call.",
"type": "string"
}
},
"additionalProperties": false
},
"CallLocator": {
"description": "The locator used for joining or taking action on a call",
"type": "object",
"properties": {
"groupCallId": {
"description": "The group call id",
"type": "string"
},
"serverCallId": {
"description": "The server call id.",
"type": "string"
},
"roomId": {
"description": "The Acs room id. (Not supported for Start Recording)",
"type": "string"
},
"kind": {
"$ref": "#/definitions/CallLocatorKind"
}
},
"additionalProperties": false
},
"CallLocatorKind": {
"description": "The call locator kind",
"enum": [
"groupCallLocator",
"serverCallLocator",
"roomCallLocator"
],
"type": "string",
"x-ms-enum": {
"name": "CallLocatorKind",
"modelAsString": true
}
},
"CallParticipant": {
"description": "A call participant.",
"type": "object",
"properties": {
"identifier": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"isMuted": {
"description": "Is participant muted",
"type": "boolean"
},
"isOnHold": {
"description": "Is participant on hold.",
"type": "boolean"
}
},
"additionalProperties": false
},
"CallRejectReason": {
"description": "Reason of rejecting a call",
"enum": [
"none",
"busy",
"forbidden"
],
"type": "string",
"x-ms-enum": {
"name": "CallRejectReason",
"modelAsString": true
}
},
"CallTransferAccepted": {
"description": "The call transfer accepted event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"transferTarget": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"transferee": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"CallTransferFailed": {
"description": "The call transfer failed event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CancelAddParticipantFailed": {
"description": "Failed cancel add participant event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"invitationId": {
"description": "Invitation ID used to cancel the request.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CancelAddParticipantRequest": {
"description": "Request payload for cancelling add participant request.",
"required": [
"invitationId"
],
"type": "object",
"properties": {
"invitationId": {
"description": "Invitation ID used to add a participant.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"CancelAddParticipantResponse": {
"description": "Response payload for cancel add participant request.",
"type": "object",
"properties": {
"invitationId": {
"description": "Invitation ID used to cancel the add participant action.",
"type": "string"
},
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
}
},
"additionalProperties": false
},
"CancelAddParticipantSucceeded": {
"description": "Successful cancel add participant event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"invitationId": {
"description": "Invitation ID used to cancel the request.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"ChannelAffinity": {
"description": "Channel affinity for a participant",
"required": [
"participant"
],
"type": "object",
"properties": {
"channel": {
"format": "int32",
"description": "Channel number to which bitstream from a particular participant will be written.",
"maximum": 4,
"minimum": 0,
"type": "integer"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"Choice": {
"required": [
"label",
"phrases"
],
"type": "object",
"properties": {
"label": {
"description": "Identifier for a given choice",
"type": "string"
},
"phrases": {
"description": "List of phrases to recognize",
"type": "array",
"items": {
"type": "string"
}
},
"tone": {
"$ref": "#/definitions/Tone"
}
},
"additionalProperties": false
},
"ChoiceResult": {
"type": "object",
"properties": {
"label": {
"description": "Label is the primary identifier for the choice detected",
"type": "string"
},
"recognizedPhrase": {
"description": "Phrases are set to the value if choice is selected via phrase detection.\r\nIf Dtmf input is recognized, then Label will be the identifier for the choice detected and phrases will be set to null",
"type": "string"
},
"confidence": {
"format": "double",
"description": "The confidence level of the recognized speech, if available, ranges from 0.0 to 1.0",
"type": "number"
}
},
"additionalProperties": false
},
"CommunicationError": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/CommunicationError"
},
"CommunicationErrorResponse": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/CommunicationErrorResponse"
},
"CommunicationIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/CommunicationIdentifierModel"
},
"CommunicationUserIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/CommunicationUserIdentifierModel"
},
"ConnectFailed": {
"description": "The ConnectFailed event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"ConnectRequest": {
"description": "The request payload for creating a connection to a CallLocator.",
"required": [
"callbackUri",
"callLocator"
],
"type": "object",
"properties": {
"callLocator": {
"$ref": "#/definitions/CallLocator"
},
"callbackUri": {
"description": "The callback URI.",
"type": "string"
},
"operationContext": {
"description": "Used by customers to correlate the request to the response event.",
"type": "string"
},
"callIntelligenceOptions": {
"$ref": "#/definitions/CallIntelligenceOptions"
},
"mediaStreamingOptions": {
"$ref": "#/definitions/MediaStreamingOptions"
},
"transcriptionOptions": {
"$ref": "#/definitions/TranscriptionOptions"
}
},
"additionalProperties": false
},
"ContinuousDtmfRecognitionRequest": {
"required": [
"targetParticipant"
],
"type": "object",
"properties": {
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"ContinuousDtmfRecognitionStopped": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"ContinuousDtmfRecognitionToneFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
}
},
"additionalProperties": false
},
"ContinuousDtmfRecognitionToneReceived": {
"type": "object",
"properties": {
"sequenceId": {
"format": "int32",
"description": "The sequence id which can be used to determine if the same tone was played multiple times or if any tones were missed.",
"type": "integer",
"readOnly": true
},
"tone": {
"$ref": "#/definitions/Tone"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CreateCallFailed": {
"description": "The create call failed event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"CreateCallRequest": {
"description": "The request payload for creating the call.",
"required": [
"callbackUri",
"targets"
],
"type": "object",
"properties": {
"targets": {
"description": "The targets of the call.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"sourceCallerIdNumber": {
"$ref": "#/definitions/PhoneNumberIdentifierModel"
},
"sourceDisplayName": {
"description": "Display name of the call if dialing out to a pstn number",
"type": "string"
},
"source": {
"$ref": "#/definitions/CommunicationUserIdentifierModel"
},
"operationContext": {
"description": "A customer set value used to track the answering of a call.",
"type": "string"
},
"callbackUri": {
"description": "The callback URI.",
"type": "string"
},
"callIntelligenceOptions": {
"$ref": "#/definitions/CallIntelligenceOptions"
},
"mediaStreamingOptions": {
"$ref": "#/definitions/MediaStreamingOptions"
},
"transcriptionOptions": {
"$ref": "#/definitions/TranscriptionOptions"
},
"teamsAppSource": {
"$ref": "#/definitions/MicrosoftTeamsAppIdentifierModel"
}
},
"additionalProperties": false
},
"CustomCallingContext": {
"description": "The custom calling context which will be sent to the target",
"type": "object",
"properties": {
"voipHeaders": {
"description": "Custom calling context VoiP headers",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"sipHeaders": {
"description": "Custom calling context SIP headers",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"teamsPhoneCallDetails": {
"$ref": "#/definitions/TeamsPhoneCallDetails"
}
},
"additionalProperties": false
},
"DtmfOptions": {
"description": "Options for DTMF recognition",
"type": "object",
"properties": {
"interToneTimeoutInSeconds": {
"format": "int32",
"description": "Time to wait between DTMF inputs to stop recognizing.",
"maximum": 60,
"minimum": 1,
"type": "integer"
},
"maxTonesToCollect": {
"format": "int32",
"description": "Maximum number of DTMF tones to be collected.",
"type": "integer"
},
"stopTones": {
"description": "List of tones that will stop recognizing.",
"type": "array",
"items": {
"$ref": "#/definitions/Tone"
}
}
},
"additionalProperties": false
},
"DtmfResult": {
"type": "object",
"properties": {
"tones": {
"type": "array",
"items": {
"$ref": "#/definitions/Tone"
},
"readOnly": true
}
},
"additionalProperties": false
},
"ExternalStorage": {
"required": [
"recordingStorageKind"
],
"type": "object",
"properties": {
"recordingStorageKind": {
"$ref": "#/definitions/RecordingStorageKind"
},
"recordingDestinationContainerUrl": {
"format": "uri",
"description": "Uri of a container or a location within a container",
"type": "string"
}
},
"additionalProperties": false
},
"FileSource": {
"required": [
"uri"
],
"type": "object",
"properties": {
"uri": {
"description": "Uri for the audio file to be played",
"type": "string"
}
},
"additionalProperties": false
},
"GetParticipantsResponse": {
"description": "The response payload for getting participants of the call.",
"required": [
"value"
],
"type": "object",
"properties": {
"value": {
"description": "List of the current participants in the call.",
"type": "array",
"items": {
"$ref": "#/definitions/CallParticipant"
}
},
"nextLink": {
"description": "Continue of the list of participants",
"type": "string"
}
},
"additionalProperties": false
},
"HoldFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"HoldRequest": {
"description": "The request payload for holding participant from the call.",
"required": [
"targetParticipant"
],
"type": "object",
"properties": {
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"playSourceInfo": {
"$ref": "#/definitions/PlaySource"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"MediaStreamingAudioChannelType": {
"description": "The audio channel type to stream, e.g., unmixed audio, mixed audio.",
"enum": [
"mixed",
"unmixed"
],
"type": "string",
"x-ms-enum": {
"name": "MediaStreamingAudioChannelType",
"modelAsString": true
}
},
"MediaStreamingContentType": {
"description": "Type of content in Media streaming.",
"enum": [
"audio"
],
"type": "string",
"x-ms-enum": {
"name": "MediaStreamingContentType",
"modelAsString": true
}
},
"MediaStreamingFailed": {
"type": "object",
"properties": {
"mediaStreamingUpdate": {
"$ref": "#/definitions/MediaStreamingUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"MediaStreamingOptions": {
"description": "Options for media streaming.",
"required": [
"audioChannelType",
"transportType"
],
"type": "object",
"properties": {
"transportType": {
"$ref": "#/definitions/StreamingTransportType"
},
"audioChannelType": {
"$ref": "#/definitions/MediaStreamingAudioChannelType"
}
},
"discriminator": "transportType"
},
"MediaStreamingStarted": {
"type": "object",
"properties": {
"mediaStreamingUpdate": {
"$ref": "#/definitions/MediaStreamingUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"MediaStreamingStatus": {
"enum": [
"mediaStreamingStarted",
"mediaStreamingFailed",
"mediaStreamingStopped",
"unspecifiedError"
],
"type": "string",
"x-ms-enum": {
"name": "MediaStreamingStatus",
"modelAsString": true
}
},
"MediaStreamingStatusDetails": {
"enum": [
"subscriptionStarted",
"streamConnectionReestablished",
"streamConnectionUnsuccessful",
"streamUrlMissing",
"serviceShutdown",
"streamConnectionInterrupted",
"speechServicesConnectionError",
"subscriptionStopped",
"unspecifiedError",
"authenticationFailure",
"badRequest",
"tooManyRequests",
"forbidden",
"serviceTimeout",
"initialWebSocketConnectionFailed"
],
"type": "string",
"x-ms-enum": {
"name": "MediaStreamingStatusDetails",
"modelAsString": true
}
},
"MediaStreamingStopped": {
"type": "object",
"properties": {
"mediaStreamingUpdate": {
"$ref": "#/definitions/MediaStreamingUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"MediaStreamingSubscription": {
"description": "Media streaming Subscription Object.",
"type": "object",
"properties": {
"id": {
"description": "Subscription Id.",
"type": "string"
},
"state": {
"$ref": "#/definitions/MediaStreamingSubscriptionState"
},
"subscribedContentTypes": {
"description": "Subscribed media streaming content types.",
"type": "array",
"items": {
"$ref": "#/definitions/MediaStreamingContentType"
}
}
},
"additionalProperties": false
},
"MediaStreamingSubscriptionState": {
"description": "Current state of media streaming session",
"enum": [
"disabled",
"inactive",
"active"
],
"type": "string",
"x-ms-enum": {
"name": "MediaStreamingSubscriptionState",
"modelAsString": true
}
},
"MediaStreamingUpdate": {
"type": "object",
"properties": {
"contentType": {
"type": "string"
},
"mediaStreamingStatus": {
"$ref": "#/definitions/MediaStreamingStatus"
},
"mediaStreamingStatusDetails": {
"$ref": "#/definitions/MediaStreamingStatusDetails"
}
},
"additionalProperties": false
},
"MicrosoftTeamsAppIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/MicrosoftTeamsAppIdentifierModel"
},
"MicrosoftTeamsUserIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/MicrosoftTeamsUserIdentifierModel"
},
"MoveParticipantFailed": {
"description": "Moving the participant failed event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"fromCall": {
"description": "The CallConnectionId for the call you want to move the participant from",
"type": "string"
}
},
"additionalProperties": false
},
"MoveParticipantSucceeded": {
"description": "Moving the participant successfully event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"fromCall": {
"description": "The CallConnectionId for the call you want to move the participant from",
"type": "string"
}
},
"additionalProperties": false
},
"MoveParticipantsRequest": {
"description": "The request payload for moving participant to the call.",
"required": [
"fromCall",
"targetParticipants"
],
"type": "object",
"properties": {
"targetParticipants": {
"description": "The participant to Move.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
},
"fromCall": {
"description": "The CallConnectionId for the call you want to move the participant from",
"type": "string"
}
},
"additionalProperties": false
},
"MoveParticipantsResponse": {
"description": "The response payload for moving participants to the call.",
"type": "object",
"properties": {
"participants": {
"description": "List of current participants in the call.",
"type": "array",
"items": {
"$ref": "#/definitions/CallParticipant"
}
},
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
},
"fromCall": {
"description": "The CallConnectionId for the call you want to move the participant from",
"type": "string"
}
},
"additionalProperties": false
},
"MuteParticipantsRequest": {
"description": "The request payload for muting participants from the call.",
"required": [
"targetParticipants"
],
"type": "object",
"properties": {
"targetParticipants": {
"description": "Participants to be muted from the call.\r\nOnly ACS Users are supported.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
}
},
"additionalProperties": false
},
"MuteParticipantsResult": {
"description": "The result payload for muting participants from the call.",
"type": "object",
"properties": {
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
}
},
"additionalProperties": false
},
"ParticipantsUpdated": {
"description": "The participants updated in a call event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"sequenceNumber": {
"format": "int32",
"description": "The Sequence Number of the event",
"type": "integer"
},
"participants": {
"description": "The list of participants in the call.",
"type": "array",
"items": {
"$ref": "#/definitions/CallParticipant"
}
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"PhoneNumberIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/PhoneNumberIdentifierModel"
},
"PlayCanceled": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"PlayCompleted": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"PlayFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"failedPlaySourceIndex": {
"format": "int32",
"description": "Contains the index of the failed play source.",
"type": "integer"
}
},
"additionalProperties": false
},
"PlayOptions": {
"required": [
"loop"
],
"type": "object",
"properties": {
"loop": {
"description": "The option to play the provided audio source in loop when set to true",
"type": "boolean"
}
},
"additionalProperties": false
},
"PlayRequest": {
"required": [
"playSources"
],
"type": "object",
"properties": {
"playSources": {
"description": "The source of the audio to be played.",
"type": "array",
"items": {
"$ref": "#/definitions/PlaySource"
}
},
"playTo": {
"description": "The list of call participants play provided audio to.\r\nPlays to everyone in the call when not provided.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"interruptCallMediaOperation": {
"description": "If set play can barge into other existing queued-up/currently-processing requests.",
"type": "boolean"
},
"playOptions": {
"$ref": "#/definitions/PlayOptions"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"PlaySource": {
"required": [
"kind"
],
"type": "object",
"properties": {
"kind": {
"$ref": "#/definitions/PlaySourceType"
},
"playSourceCacheId": {
"description": "Defines the identifier to be used for caching related media",
"type": "string"
},
"file": {
"$ref": "#/definitions/FileSource"
},
"text": {
"$ref": "#/definitions/TextSource"
},
"ssml": {
"$ref": "#/definitions/SsmlSource"
}
},
"additionalProperties": false
},
"PlaySourceType": {
"description": "Defines the types of play source",
"enum": [
"file",
"text",
"ssml"
],
"type": "string",
"x-ms-enum": {
"name": "PlaySourceType",
"modelAsString": true
}
},
"PlayStarted": {
"description": "Play started event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"RecognitionType": {
"description": "Recognition type determines the sub-type of the recognition operation\r\nPossible values will be Dtmf, Speech, or Choices",
"enum": [
"dtmf",
"speech",
"choices"
],
"type": "string",
"x-ms-enum": {
"name": "RecognitionType",
"modelAsString": true
}
},
"RecognizeCanceled": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"RecognizeCompleted": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"recognitionType": {
"$ref": "#/definitions/RecognitionType"
},
"dtmfResult": {
"$ref": "#/definitions/DtmfResult"
},
"choiceResult": {
"$ref": "#/definitions/ChoiceResult"
},
"speechResult": {
"$ref": "#/definitions/SpeechResult"
}
},
"additionalProperties": false
},
"RecognizeFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"failedPlaySourceIndex": {
"format": "int32",
"description": "Contains the index of the failed play source.",
"type": "integer"
}
},
"additionalProperties": false
},
"RecognizeInputType": {
"description": "Defines the type of the recognize input",
"enum": [
"dtmf",
"speech",
"speechOrDtmf",
"choices"
],
"type": "string",
"x-ms-enum": {
"name": "RecognizeInputType",
"modelAsString": true
}
},
"RecognizeOptions": {
"required": [
"targetParticipant"
],
"type": "object",
"properties": {
"interruptPrompt": {
"description": "Determines if we interrupt the prompt and start recognizing.",
"type": "boolean"
},
"initialSilenceTimeoutInSeconds": {
"format": "int32",
"description": "Time to wait for first input after prompt (if any).",
"maximum": 300,
"minimum": 0,
"type": "integer"
},
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"speechLanguage": {
"description": "Speech language to be recognized, If not set default is en-US",
"type": "string"
},
"speechRecognitionModelEndpointId": {
"description": "Endpoint where the custom model was deployed.",
"type": "string"
},
"dtmfOptions": {
"$ref": "#/definitions/DtmfOptions"
},
"choices": {
"description": "Defines Ivr choices for recognize.",
"type": "array",
"items": {
"$ref": "#/definitions/Choice"
}
},
"speechOptions": {
"$ref": "#/definitions/SpeechOptions"
}
},
"additionalProperties": false
},
"RecognizeRequest": {
"required": [
"recognizeInputType",
"recognizeOptions"
],
"type": "object",
"properties": {
"recognizeInputType": {
"$ref": "#/definitions/RecognizeInputType"
},
"playPrompt": {
"$ref": "#/definitions/PlaySource"
},
"playPrompts": {
"description": "The source of the audio to be played for recognition.",
"type": "array",
"items": {
"$ref": "#/definitions/PlaySource"
}
},
"interruptCallMediaOperation": {
"description": "If set recognize can barge into other existing queued-up/currently-processing requests.",
"type": "boolean"
},
"recognizeOptions": {
"$ref": "#/definitions/RecognizeOptions"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"RecordingChannelType": {
"description": "Defines the channel type of call recording.",
"enum": [
"mixed",
"unmixed"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingChannelType",
"modelAsString": true
}
},
"RecordingContentType": {
"description": "The content type of call recording.",
"enum": [
"audio",
"audioVideo"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingContentType",
"modelAsString": true
}
},
"RecordingFormatType": {
"description": "Defines the format type of call recording.",
"enum": [
"wav",
"mp3",
"mp4"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingFormatType",
"modelAsString": true
}
},
"RecordingKind": {
"enum": [
"azureCommunicationServices",
"teams",
"teamsCompliance"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingKind",
"modelAsString": true
}
},
"RecordingState": {
"enum": [
"active",
"inactive"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingState",
"modelAsString": true
}
},
"RecordingStateChanged": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"recordingId": {
"description": "The call recording id",
"type": "string",
"readOnly": true
},
"state": {
"$ref": "#/definitions/RecordingState"
},
"startDateTime": {
"format": "date-time",
"description": "The time of the recording started",
"type": "string",
"readOnly": true
},
"recordingKind": {
"$ref": "#/definitions/RecordingKind"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"RecordingStateResponse": {
"type": "object",
"properties": {
"recordingId": {
"type": "string"
},
"recordingState": {
"$ref": "#/definitions/RecordingState"
},
"recordingKind": {
"$ref": "#/definitions/RecordingKind"
}
},
"additionalProperties": false
},
"RecordingStorageKind": {
"description": "Defines the kind of external storage",
"enum": [
"azureCommunicationServices",
"azureBlobStorage"
],
"type": "string",
"x-ms-enum": {
"name": "RecordingStorageKind",
"modelAsString": true
}
},
"RedirectCallRequest": {
"description": "The request payload for redirecting the call.",
"required": [
"incomingCallContext",
"target"
],
"type": "object",
"properties": {
"incomingCallContext": {
"description": "The context associated with the call.",
"type": "string"
},
"target": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"RejectCallRequest": {
"description": "The request payload for rejecting the call.",
"required": [
"incomingCallContext"
],
"type": "object",
"properties": {
"incomingCallContext": {
"description": "The context associated with the call.",
"type": "string"
},
"callRejectReason": {
"$ref": "#/definitions/CallRejectReason"
}
},
"additionalProperties": false
},
"RemoveParticipantFailed": {
"description": "The failed to remove participant event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"RemoveParticipantRequest": {
"description": "The remove participant by identifier request.",
"required": [
"participantToRemove"
],
"type": "object",
"properties": {
"participantToRemove": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"RemoveParticipantResponse": {
"description": "The response payload for removing participants of the call.",
"type": "object",
"properties": {
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
}
},
"additionalProperties": false
},
"RemoveParticipantSucceeded": {
"description": "The participant removed event.",
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
},
"participant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"additionalProperties": false
},
"ResultInformation": {
"type": "object",
"properties": {
"code": {
"format": "int32",
"description": "Code of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected.",
"type": "integer"
},
"subCode": {
"format": "int32",
"description": "Subcode of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected.",
"type": "integer"
},
"message": {
"description": "Detail message that describes the current result.",
"type": "string"
},
"sipDetails": {
"$ref": "#/definitions/SipDiagnosticInfo"
},
"q850Details": {
"$ref": "#/definitions/SipDiagnosticInfo"
}
},
"additionalProperties": false
},
"SendDtmfTonesCompleted": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"SendDtmfTonesFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"SendDtmfTonesRequest": {
"required": [
"targetParticipant",
"tones"
],
"type": "object",
"properties": {
"tones": {
"description": "List of tones to be sent to target participant.",
"type": "array",
"items": {
"$ref": "#/definitions/Tone"
}
},
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"SendDtmfTonesResult": {
"type": "object",
"properties": {
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
}
},
"additionalProperties": false
},
"SipDiagnosticInfo": {
"type": "object",
"properties": {
"code": {
"format": "int32",
"description": "Represents the diagnostic code returned by the SIP service, used for identifying specific issues or statuses.",
"type": "integer"
},
"message": {
"description": "Message associated with the code for diagnosing.",
"type": "string"
}
},
"additionalProperties": false
},
"SpeechOptions": {
"description": "Options for continuous speech recognition",
"type": "object",
"properties": {
"endSilenceTimeoutInMs": {
"format": "int64",
"description": "The length of end silence when user stops speaking and cogservice send response.",
"type": "integer"
}
},
"additionalProperties": false
},
"SpeechResult": {
"description": "The speech status as a result.",
"type": "object",
"properties": {
"speech": {
"description": "The recognized speech in string.",
"type": "string"
},
"confidence": {
"format": "double",
"description": "The confidence level of the recognized speech, if available, ranges from 0.0 to 1.0.",
"type": "number"
}
},
"additionalProperties": false
},
"SsmlSource": {
"required": [
"ssmlText"
],
"type": "object",
"properties": {
"ssmlText": {
"description": "Ssml string for the cognitive service to be played",
"type": "string"
},
"customVoiceEndpointId": {
"description": "Endpoint where the custom voice was deployed.",
"type": "string"
}
},
"additionalProperties": false
},
"StartCallRecordingRequest": {
"description": "The request payload start for call recording operation with call locator.",
"type": "object",
"properties": {
"callLocator": {
"$ref": "#/definitions/CallLocator"
},
"callConnectionId": {
"description": "The call connection Id. (Only one of callLocator or callConnectionId to be used)",
"type": "string"
},
"recordingStateCallbackUri": {
"description": "The uri to send notifications to.",
"type": "string"
},
"recordingContentType": {
"$ref": "#/definitions/RecordingContentType"
},
"recordingChannelType": {
"$ref": "#/definitions/RecordingChannelType"
},
"recordingFormatType": {
"$ref": "#/definitions/RecordingFormatType"
},
"audioChannelParticipantOrdering": {
"description": "The sequential order in which audio channels are assigned to participants in the unmixed recording.\r\nWhen 'recordingChannelType' is set to 'unmixed' and `audioChannelParticipantOrdering is not specified,\r\nthe audio channel to participant mapping will be automatically assigned based on the order in which participant\r\nfirst audio was detected. Channel to participant mapping details can be found in the metadata of the recording.",
"type": "array",
"items": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
},
"channelAffinity": {
"description": "The channel affinity of call recording\r\nWhen 'recordingChannelType' is set to 'unmixed', if channelAffinity is not specified, 'channel' will be automatically assigned.\r\nChannel-Participant mapping details can be found in the metadata of the recording.\r\n///",
"type": "array",
"items": {
"$ref": "#/definitions/ChannelAffinity"
}
},
"pauseOnStart": {
"description": "When set to true will start recording in Pause mode, which can be resumed.",
"type": "boolean"
},
"externalStorage": {
"$ref": "#/definitions/ExternalStorage"
}
},
"additionalProperties": false
},
"StartMediaStreamingRequest": {
"type": "object",
"properties": {
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
}
},
"additionalProperties": false
},
"StartRecordingFailed": {
"type": "object",
"properties": {
"recordingId": {
"description": "The call recording Id.",
"type": "string",
"readOnly": true
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"StartTranscriptionRequest": {
"type": "object",
"properties": {
"locale": {
"description": "Specifies the Locale used for transcription, e.g., en-CA or en-AU.",
"type": "string"
},
"speechModelEndpointId": {
"description": "The ID of the deployed custom model in GUID format. The GUID is generated by Azure Speech Studio, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a.",
"type": "string"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"StopMediaStreamingRequest": {
"type": "object",
"properties": {
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
}
},
"additionalProperties": false
},
"StopTranscriptionRequest": {
"type": "object",
"properties": {
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"StreamingTransportType": {
"description": "Defines the transport type used for streaming. Note that future values may be introduced that are not currently documented.",
"enum": [
"websocket"
],
"type": "string",
"x-ms-enum": {
"name": "StreamingTransportType",
"modelAsString": true
}
},
"TeamsExtensionUserIdentifierModel": {
"$ref": "../../../Common/stable/2025-06-30/common.json#/definitions/TeamsExtensionUserIdentifierModel"
},
"TeamsPhoneCallDetails": {
"description": "The call details which will be sent to the target",
"type": "object",
"properties": {
"teamsPhoneCallerDetails": {
"$ref": "#/definitions/TeamsPhoneCallerDetails"
},
"teamsPhoneSourceDetails": {
"$ref": "#/definitions/TeamsPhoneSourceDetails"
},
"sessionId": {
"description": "Id to exclusively identify this call session. IVR will use this for their telemetry/reporting.",
"type": "string"
},
"intent": {
"description": "The intent of the call",
"type": "string"
},
"callTopic": {
"description": "A very short description (max 48 chars) of the reason for the call. To be displayed in Teams CallNotification",
"type": "string"
},
"callContext": {
"description": "A summary of the call thus far. It will be displayed on a side panel in the Teams UI",
"type": "string"
},
"transcriptUrl": {
"description": "Url for fetching the transcript of the call",
"type": "string"
},
"callSentiment": {
"description": "Sentiment of the call thus far",
"type": "string"
},
"suggestedActions": {
"description": "Recommendations for resolving the issue based on the customer's intent and interaction history",
"type": "string"
}
},
"additionalProperties": false
},
"TeamsPhoneCallerDetails": {
"description": "Container for details relating to the original caller of the call",
"required": [
"caller",
"name",
"phoneNumber"
],
"type": "object",
"properties": {
"caller": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"name": {
"description": "Caller's name",
"type": "string"
},
"phoneNumber": {
"description": "Caller's phone number",
"type": "string"
},
"recordId": {
"description": "Caller's record ID (ex in CRM)",
"type": "string"
},
"screenPopUrl": {
"description": "Caller's screen pop URL",
"type": "string"
},
"isAuthenticated": {
"description": "Flag indicating whether the caller was authenticated",
"type": "boolean"
},
"additionalCallerInformation": {
"description": "A set of key value pairs (max 10, any additional entries would be ignored) which a bot author wants to pass to the Teams Client for display to the agent",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false
},
"TeamsPhoneSourceDetails": {
"description": "Container for details relating to the entity responsible for the creation of these call details",
"required": [
"language",
"source",
"status"
],
"type": "object",
"properties": {
"source": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"language": {
"description": "Language of the source entity passing along the call details, passed in the ISO-639 standard",
"type": "string"
},
"status": {
"description": "Status of the source entity passing along the call details",
"type": "string"
},
"intendedTargets": {
"description": "Intended targets of the source entity passing along the call details",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/CommunicationIdentifierModel"
}
}
},
"additionalProperties": false
},
"TextSource": {
"required": [
"text"
],
"type": "object",
"properties": {
"text": {
"description": "Text for the cognitive service to be played",
"type": "string"
},
"sourceLocale": {
"description": "Source language locale to be played\r\nRefer to available locales here: ",
"type": "string"
},
"voiceKind": {
"$ref": "#/definitions/VoiceKind"
},
"voiceName": {
"description": "Voice name to be played\r\nRefer to available Text-to-speech voices here: ",
"type": "string"
},
"customVoiceEndpointId": {
"description": "Endpoint where the custom voice was deployed.",
"type": "string"
}
},
"additionalProperties": false
},
"Tone": {
"description": "List of valid stop tones",
"enum": [
"zero",
"one",
"two",
"three",
"four",
"five",
"six",
"seven",
"eight",
"nine",
"a",
"b",
"c",
"d",
"pound",
"asterisk"
],
"type": "string",
"x-ms-enum": {
"name": "Tone",
"modelAsString": true
}
},
"TranscriptionFailed": {
"type": "object",
"properties": {
"transcriptionUpdate": {
"$ref": "#/definitions/TranscriptionUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"TranscriptionOptions": {
"description": "Options for live transcription.",
"required": [
"locale",
"transportType"
],
"type": "object",
"properties": {
"transportType": {
"$ref": "#/definitions/StreamingTransportType"
},
"locale": {
"description": "Specifies the Locale used for transcription, e.g., en-CA or en-AU.",
"type": "string"
}
},
"discriminator": "transportType"
},
"TranscriptionResultType": {
"description": "Transcription result types",
"enum": [
"final",
"intermediate"
],
"type": "string",
"x-ms-enum": {
"name": "TranscriptionResultType",
"modelAsString": true
}
},
"TranscriptionStarted": {
"type": "object",
"properties": {
"transcriptionUpdate": {
"$ref": "#/definitions/TranscriptionUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"TranscriptionStatus": {
"enum": [
"transcriptionStarted",
"transcriptionFailed",
"transcriptionResumed",
"transcriptionUpdated",
"transcriptionStopped",
"unspecifiedError"
],
"type": "string",
"x-ms-enum": {
"name": "TranscriptionStatus",
"modelAsString": true
}
},
"TranscriptionStatusDetails": {
"enum": [
"subscriptionStarted",
"streamConnectionReestablished",
"streamConnectionUnsuccessful",
"streamUrlMissing",
"serviceShutdown",
"streamConnectionInterrupted",
"speechServicesConnectionError",
"subscriptionStopped",
"unspecifiedError",
"authenticationFailure",
"badRequest",
"tooManyRequests",
"forbidden",
"serviceTimeout",
"transcriptionLocaleUpdated"
],
"type": "string",
"x-ms-enum": {
"name": "TranscriptionStatusDetails",
"modelAsString": true
}
},
"TranscriptionStopped": {
"type": "object",
"properties": {
"transcriptionUpdate": {
"$ref": "#/definitions/TranscriptionUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"TranscriptionSubscription": {
"description": "Transcription Subscription Object.",
"type": "object",
"properties": {
"id": {
"description": "Subscription Id.",
"type": "string"
},
"state": {
"$ref": "#/definitions/TranscriptionSubscriptionState"
},
"subscribedResultTypes": {
"description": "Subscribed transcription result types.",
"type": "array",
"items": {
"$ref": "#/definitions/TranscriptionResultType"
}
},
"locale": {
"description": "Specifies the locale used for transcription, e.g., en-CA or en-AU.",
"type": "string"
}
},
"additionalProperties": false
},
"TranscriptionSubscriptionState": {
"description": "Current state of transcription session",
"enum": [
"disabled",
"inactive",
"active"
],
"type": "string",
"x-ms-enum": {
"name": "TranscriptionSubscriptionState",
"modelAsString": true
}
},
"TranscriptionUpdate": {
"type": "object",
"properties": {
"transcriptionStatus": {
"$ref": "#/definitions/TranscriptionStatus"
},
"transcriptionStatusDetails": {
"$ref": "#/definitions/TranscriptionStatusDetails"
}
},
"additionalProperties": false
},
"TranscriptionUpdated": {
"type": "object",
"properties": {
"transcriptionUpdate": {
"$ref": "#/definitions/TranscriptionUpdate"
},
"callConnectionId": {
"description": "Call connection ID.",
"type": "string"
},
"serverCallId": {
"description": "Server call ID.",
"type": "string"
},
"correlationId": {
"description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
"type": "string"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"resultInformation": {
"$ref": "#/definitions/ResultInformation"
}
},
"additionalProperties": false
},
"TransferCallResponse": {
"description": "The response payload for transferring the call.",
"type": "object",
"properties": {
"operationContext": {
"description": "The operation context provided by client.",
"type": "string"
}
},
"additionalProperties": false
},
"TransferToParticipantRequest": {
"description": "The request payload for transferring call to a participant.",
"required": [
"targetParticipant"
],
"type": "object",
"properties": {
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"transferee": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
},
"customCallingContext": {
"$ref": "#/definitions/CustomCallingContext"
},
"sourceCallerIdNumber": {
"$ref": "#/definitions/PhoneNumberIdentifierModel"
}
},
"additionalProperties": false
},
"UnholdRequest": {
"description": "The request payload for holding participant from the call.",
"required": [
"targetParticipant"
],
"type": "object",
"properties": {
"targetParticipant": {
"$ref": "#/definitions/CommunicationIdentifierModel"
},
"operationContext": {
"description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"UpdateTranscriptionRequest": {
"type": "object",
"properties": {
"locale": {
"description": "Specifies the Locale used for transcription, e.g., en-CA or en-AU.",
"type": "string"
},
"speechModelEndpointId": {
"description": "The ID of the deployed custom model, in GUID format, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a.",
"type": "string"
},
"operationContext": {
"description": "The value to identify context of the operation.",
"type": "string"
},
"operationCallbackUri": {
"description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.",
"type": "string"
}
},
"additionalProperties": false
},
"VoiceKind": {
"description": "Audio kind type",
"enum": [
"male",
"female"
],
"type": "string",
"x-ms-enum": {
"name": "VoiceKind",
"modelAsString": true
}
},
"WebSocketMediaStreamingOptions": {
"description": "Represents the options for WebSocket transport.",
"type": "object",
"allOf": [
{
"$ref": "#/definitions/MediaStreamingOptions"
}
],
"properties": {
"transportUrl": {
"description": "The transport URL for media streaming.",
"type": "string"
},
"contentType": {
"$ref": "#/definitions/MediaStreamingContentType"
},
"startMediaStreaming": {
"description": "A value indicating whether the media streaming should start immediately after the call is answered.",
"type": "boolean"
},
"enableBidirectional": {
"description": "A value indicating whether bidirectional streaming is enabled.",
"type": "boolean"
},
"audioFormat": {
"$ref": "#/definitions/AudioFormat"
},
"enableDtmfTones": {
"description": "A value that indicates whether to stream the DTMF tones.",
"type": "boolean"
}
},
"x-ms-discriminator-value": "websocket"
},
"WebSocketTranscriptionOptions": {
"description": "Represents the options for WebSocket transport.",
"type": "object",
"allOf": [
{
"$ref": "#/definitions/TranscriptionOptions"
}
],
"properties": {
"transportUrl": {
"description": "The URL used for live transcription transport.",
"type": "string"
},
"speechModelEndpointId": {
"description": "The ID of the deployed custom model in GUID format. The GUID is generated by Azure Speech Studio, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a.",
"type": "string"
},
"startTranscription": {
"description": "Indicates whether the transcription should start immediately after the call is answered.",
"type": "boolean"
},
"enableIntermediateResults": {
"description": "Enables intermediate results for the transcribed speech.",
"type": "boolean"
}
},
"x-ms-discriminator-value": "websocket"
}
},
"parameters": {
"ApiVersionParameter": {
"in": "query",
"name": "api-version",
"description": "Version of the API to invoke.",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
},
"Endpoint": {
"in": "path",
"name": "endpoint",
"description": "The endpoint of the Azure Communication Service resource.",
"required": true,
"type": "string",
"format": "url",
"x-ms-skip-url-encoding": true,
"x-ms-parameter-location": "client"
}
},
"securityDefinitions": {
"Authorization": {
"type": "apiKey",
"name": "Authorization",
"in": "header",
"description": "An Azure Communication Services user access token."
}
},
"security": [
{
"Authorization": []
}
],
"x-ms-parameterized-host": {
"hostTemplate": "{endpoint}",
"useSchemePrefix": false,
"parameters": [
{
"$ref": "#/parameters/Endpoint"
}
]
}
}