diff --git a/specification/communication/data-plane/CallAutomation/preview/2024-09-01-preview/communicationservicescallautomation.json b/specification/communication/data-plane/CallAutomation/preview/2024-09-01-preview/communicationservicescallautomation.json
new file mode 100644
index 000000000000..2a9f1b5a6e7e
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2024-09-01-preview/communicationservicescallautomation.json
@@ -0,0 +1,5400 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-01-preview",
+ "title": "Azure Communication Service Call Automation APIs",
+ "description": "Azure Communication Service Call Automation APIs"
+ },
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/calling/callConnections": {
+ "post": {
+ "tags": [
+ "PreConnections"
+ ],
+ "summary": "Create an outbound call.",
+ "description": "Create an outbound call.",
+ "operationId": "CreateCall",
+ "parameters": [
+ {
+ "name": "createCallRequest",
+ "in": "body",
+ "description": "The create call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CreateCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "answerCallRequest",
+ "in": "body",
+ "description": "The answer call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AnswerCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "redirectCallRequest",
+ "in": "body",
+ "description": "The redirect call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RedirectCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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 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",
+ "parameters": [
+ {
+ "name": "rejectCallRequest",
+ "in": "body",
+ "description": "The reject call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RejectCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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 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",
+ "parameters": [
+ {
+ "name": "connectRequest",
+ "in": "body",
+ "description": "The create connection request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The terminate call request.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "transferToParticipantRequest",
+ "in": "body",
+ "description": "The transfer to participant request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TransferToParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "playRequest",
+ "in": "body",
+ "description": "play request payload.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PlayRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "startTranscriptionRequest",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartTranscriptionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "stopTranscriptionRequest",
+ "in": "body",
+ "description": "stop transcription request payload.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StopTranscriptionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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}:cancelAllMediaOperations": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Cancel all media operations in a call.",
+ "description": "Cancel all media operations in a call.",
+ "operationId": "CallMedia_CancelAllMediaOperations",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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.",
+ "operationId": "CallMedia_Recognize",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recognizeRequest",
+ "in": "body",
+ "description": "The media recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RecognizeRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "continuousDtmfRecognitionRequest",
+ "in": "body",
+ "description": "The continuous recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "continuousDtmfRecognitionRequest",
+ "in": "body",
+ "description": "The continuous recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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.",
+ "operationId": "CallMedia_SendDtmfTones",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sendDtmfTonesRequest",
+ "in": "body",
+ "description": "The send dtmf tones request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SendDtmfTonesRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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}:updateTranscription": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "UpdateTranscription Api.",
+ "description": "API to change transcription language.",
+ "operationId": "CallMedia_UpdateTranscription",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "updateTranscriptionRequest",
+ "in": "body",
+ "description": "The UpdateTranscription request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UpdateTranscriptionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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}:hold": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Hold participant from the call using identifier.",
+ "operationId": "CallMedia_Hold",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "holdRequest",
+ "in": "body",
+ "description": "The participants to be hold from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/HoldRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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.",
+ "operationId": "CallMedia_Unhold",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "unholdRequest",
+ "in": "body",
+ "description": "The participants to be hold from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UnholdRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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}:startHoldMusic": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Hold participant from the call using identifier.",
+ "operationId": "CallMedia_StartHoldMusic",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "startHoldMusicRequest",
+ "in": "body",
+ "description": "The participants to be hold from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartHoldMusicRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the hold participant response"
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_StartHoldMusic": {
+ "$ref": "./examples/CallMedia_StartHoldMusic.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:stopHoldMusic": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Unhold participants from the call using identifier.",
+ "operationId": "CallMedia_StopHoldMusic",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "stopHoldMusicRequest",
+ "in": "body",
+ "description": "The participants to be hold from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StopHoldMusicRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the unhold participant response"
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_StopHoldMusic": {
+ "$ref": "./examples/CallMedia_StopHoldMusic.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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "startMediaStreamingRequest",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartMediaStreamingRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "stopMediaStreamingRequest",
+ "in": "body",
+ "description": "stop media streaming request payload.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StopMediaStreamingRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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}/dialogs/{dialogId}": {
+ "put": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Start a dialog targeting a particular participant on the call.",
+ "description": "Start a dialog.",
+ "operationId": "CallDialog_StartDialog",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "dialogId",
+ "in": "path",
+ "description": "The dialog id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "startDialogRequest",
+ "in": "body",
+ "description": "The start dialog request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartDialogRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "201": {
+ "description": "Returns the start dialog response.",
+ "schema": {
+ "$ref": "#/definitions/DialogStateResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallDialog_StartDialog": {
+ "$ref": "./examples/CallDialog_StartDialog.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MidConnections"
+ ],
+ "operationId": "CallDialog_StopDialog",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "dialogId",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "operationCallbackUri",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "Returns no content for stop dialog response."
+ }
+ },
+ "x-ms-examples": {
+ "CallDialog_StopDialog": {
+ "$ref": "./examples/CallDialog_StopDialog.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Update an ongoing dialog in a call.",
+ "description": "Update a dialog.",
+ "operationId": "CallDialog_UpdateDialog",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "dialogId",
+ "in": "path",
+ "description": "The dialog id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "updateDialogRequest",
+ "in": "body",
+ "description": "The update dialog request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UpdateDialogRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the update dialog response."
+ }
+ },
+ "x-ms-examples": {
+ "CallDialog_UpdateDialog": {
+ "$ref": "./examples/CallDialog_UpdateDialog.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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "addParticipantRequest",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AddParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "removeParticipantRequest",
+ "in": "body",
+ "description": "The participant to be removed from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RemoveParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "muteParticipantsRequest",
+ "in": "body",
+ "description": "The participants to be muted from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MuteParticipantsRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "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:unmute": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Unmute participants from the call using identifier.",
+ "description": "Unmute participants from the call using identifier.",
+ "operationId": "CallConnection_Unmute",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "unmuteParticipantsRequest",
+ "in": "body",
+ "description": "The participants to be unmuted from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UnmuteParticipantsRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "200": {
+ "description": "Returns the unmute participants response",
+ "schema": {
+ "$ref": "#/definitions/UnmuteParticipantsResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_Unmute": {
+ "$ref": "./examples/CallConnection_Unmute.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants:cancelAddParticipant": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Cancel add participant operation.",
+ "description": "Cancel add participant operation.",
+ "operationId": "CallConnection_CancelAddParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cancelAddParticipantRequest",
+ "in": "body",
+ "description": "Cancellation request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CancelAddParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "202": {
+ "description": "Returns the cancelAddParticipant response",
+ "schema": {
+ "$ref": "#/definitions/CancelAddParticipantResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_CancelAddParticipant": {
+ "$ref": "./examples/CallConnection_CancelAddParticipant.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants/{participantRawId}": {
+ "get": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Get participant from a call.",
+ "description": "Get participant from a call.",
+ "operationId": "CallConnection_GetParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "participantRawId",
+ "in": "path",
+ "description": "Raw id of the participant to retrieve.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "startCallRecording",
+ "in": "body",
+ "description": "The request body of start call recording request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartCallRecordingRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "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"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "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"
+ }
+ },
+ "200": {
+ "description": "Returns the start call recording response.",
+ "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",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "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": {
+ "CreateCallRequest": {
+ "description": "The request payload for creating the call.",
+ "required": [
+ "targets",
+ "callbackUri"
+ ],
+ "type": "object",
+ "properties": {
+ "targets": {
+ "description": "The targets of the call.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when calling a PSTN callee."
+ },
+ "sourceDisplayName": {
+ "description": "Display name of the call if dialing out to a pstn number",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "The identifier of the source of the call"
+ },
+ "opsSource": {
+ "$ref": "#/definitions/MicrosoftTeamsAppIdentifierModel",
+ "description": "The identifier of the source in an OPS call"
+ },
+ "operationContext": {
+ "description": "A customer set value used to track the answering of a call.",
+ "type": "string"
+ },
+ "callbackUri": {
+ "description": "The callback URI.",
+ "type": "string"
+ },
+ "mediaStreamingConfiguration": {
+ "$ref": "#/definitions/MediaStreamingConfiguration",
+ "description": "Media Streaming Configuration."
+ },
+ "transcriptionConfiguration": {
+ "$ref": "#/definitions/TranscriptionConfiguration",
+ "description": "Live Transcription Configuration."
+ },
+ "callIntelligenceOptions": {
+ "$ref": "#/definitions/CallIntelligenceOptions",
+ "description": "AI options for the call."
+ },
+ "customCallingContext": {
+ "$ref": "#/definitions/CustomCallingContext",
+ "description": "Used by customer to send custom calling context to targets"
+ }
+ }
+ },
+ "AzureOpenAIDialog": {
+ "description": "Azure Open AI Dialog",
+ "required": [],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseDialog"
+ }
+ ],
+ "properties": {},
+ "x-ms-discriminator-value": "azureOpenAI"
+ },
+ "CommunicationIdentifierModel": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationIdentifierModel"
+ },
+ "PhoneNumberIdentifierModel": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/PhoneNumberIdentifierModel"
+ },
+ "CommunicationUserIdentifierModel": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationUserIdentifierModel"
+ },
+ "AzureOpenAIDialogUpdate": {
+ "description": "Azure Open AI Dialog for UpdateDialog API Call",
+ "required": [],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/DialogUpdateBase"
+ }
+ ],
+ "properties": {},
+ "x-ms-discriminator-value": "azureOpenAI"
+ },
+ "MicrosoftTeamsAppIdentifierModel": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/MicrosoftTeamsAppIdentifierModel"
+ },
+ "MediaStreamingTransportType": {
+ "description": "The type of transport to be used for media streaming, eg. Websocket",
+ "enum": [
+ "websocket"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "MediaStreamingTransportType",
+ "modelAsString": true
+ }
+ },
+ "MediaStreamingContentType": {
+ "description": "Content type to stream, eg. audio",
+ "enum": [
+ "audio"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "MediaStreamingContentType",
+ "modelAsString": true
+ }
+ },
+ "MediaStreamingAudioChannelType": {
+ "description": "Audio channel type to stream, eg. unmixed audio, mixed audio",
+ "enum": [
+ "mixed",
+ "unmixed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "MediaStreamingAudioChannelType",
+ "modelAsString": true
+ }
+ },
+ "MediaStreamingConfiguration": {
+ "description": "Configuration of Media streaming.",
+ "required": [
+ "transportUrl",
+ "transportType",
+ "contentType",
+ "audioChannelType"
+ ],
+ "type": "object",
+ "properties": {
+ "transportUrl": {
+ "description": "Transport URL for media streaming",
+ "type": "string"
+ },
+ "transportType": {
+ "$ref": "#/definitions/MediaStreamingTransportType"
+ },
+ "contentType": {
+ "$ref": "#/definitions/MediaStreamingContentType"
+ },
+ "audioChannelType": {
+ "$ref": "#/definitions/MediaStreamingAudioChannelType"
+ },
+ "startMediaStreaming": {
+ "description": "Determines if the media streaming should be started immediately after call is answered or not.",
+ "type": "boolean"
+ }
+ }
+ },
+ "TranscriptionTransportType": {
+ "description": "The type of transport to be used for live transcription, eg. Websocket",
+ "enum": [
+ "websocket"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TranscriptionTransportType",
+ "modelAsString": true
+ }
+ },
+ "TranscriptionConfiguration": {
+ "description": "Configuration of live transcription.",
+ "required": [
+ "transportUrl",
+ "transportType",
+ "locale",
+ "startTranscription"
+ ],
+ "type": "object",
+ "properties": {
+ "transportUrl": {
+ "description": "Transport URL for live transcription",
+ "type": "string"
+ },
+ "transportType": {
+ "$ref": "#/definitions/TranscriptionTransportType"
+ },
+ "locale": {
+ "description": "Defines the locale for the data e.g en-CA, en-AU",
+ "type": "string"
+ },
+ "startTranscription": {
+ "description": "Determines if the transcription should be started immediately after call is answered or not.",
+ "type": "boolean"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "MicrosoftTeamsUserIdentifierModel": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/MicrosoftTeamsUserIdentifierModel"
+ },
+ "CommunicationErrorResponse": {
+ "$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationErrorResponse"
+ },
+ "PowerVirtualAgentsDialog": {
+ "description": "Power Virtual Agents Dialog",
+ "required": [
+ "botAppId"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseDialog"
+ }
+ ],
+ "properties": {
+ "botAppId": {
+ "description": "Bot identifier.",
+ "type": "string"
+ },
+ "language": {
+ "description": "Language.",
+ "type": "string"
+ }
+ },
+ "x-ms-discriminator-value": "powerVirtualAgents"
+ },
+ "CallConnectionStateModel": {
+ "description": "The state of the call connection.",
+ "enum": [
+ "unknown",
+ "connecting",
+ "connected",
+ "transferring",
+ "transferAccepted",
+ "disconnecting",
+ "disconnected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallConnectionStateModel",
+ "modelAsString": true
+ }
+ },
+ "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"
+ },
+ "mediaSubscriptionId": {
+ "description": "SubscriptionId for media streaming",
+ "type": "string"
+ },
+ "dataSubscriptionId": {
+ "description": "SubscriptionId for transcription",
+ "type": "string"
+ },
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when calling a PSTN callee."
+ },
+ "sourceDisplayName": {
+ "description": "Display name of the call if dialing out to a pstn number.",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Source identity."
+ },
+ "correlationId": {
+ "description": "The correlation ID.",
+ "type": "string"
+ },
+ "answeredBy": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "Identity of the answering entity. Only populated when identity is provided in the request."
+ },
+ "mediaStreamingSubscription": {
+ "$ref": "#/definitions/MediaStreamingSubscription",
+ "description": "The state of media streaming subscription for the call"
+ },
+ "transcriptionSubscription": {
+ "$ref": "#/definitions/TranscriptionSubscription",
+ "description": "Transcription Subscription."
+ },
+ "answeredFor": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "Identity of the original Pstn target of an incoming Call. Only populated when the original target is a Pstn number."
+ }
+ }
+ },
+ "MediaStreamingSubscriptionState": {
+ "description": "Media streaming subscription state.",
+ "enum": [
+ "disabled",
+ "inactive",
+ "active"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "MediaStreamingSubscriptionState",
+ "modelAsString": true
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "TranscriptionSubscriptionState": {
+ "description": "Transcription subscription state.",
+ "enum": [
+ "disabled",
+ "inactive",
+ "active"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TranscriptionSubscriptionState",
+ "modelAsString": true
+ }
+ },
+ "TranscriptionResultType": {
+ "enum": [
+ "final",
+ "intermediate"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TranscriptionResultType",
+ "modelAsString": true
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "AnswerCallRequest": {
+ "description": "The request payload for answering the call.",
+ "required": [
+ "incomingCallContext",
+ "callbackUri"
+ ],
+ "type": "object",
+ "properties": {
+ "incomingCallContext": {
+ "description": "The context associated with the call.",
+ "type": "string"
+ },
+ "callbackUri": {
+ "description": "The callback uri.",
+ "type": "string"
+ },
+ "customCallingContext": {
+ "$ref": "#/definitions/CustomCallingContext",
+ "description": "Used by customer to send custom calling context to targets when answering On-Behalf-Of call"
+ },
+ "operationContext": {
+ "description": "A customer set value used to track the answering of a call.",
+ "type": "string"
+ },
+ "mediaStreamingConfiguration": {
+ "$ref": "#/definitions/MediaStreamingConfiguration",
+ "description": "Media Streaming Configuration."
+ },
+ "transcriptionConfiguration": {
+ "$ref": "#/definitions/TranscriptionConfiguration",
+ "description": "Live Transcription Configuration."
+ },
+ "callIntelligenceOptions": {
+ "$ref": "#/definitions/CallIntelligenceOptions",
+ "description": "AI options for the call."
+ },
+ "answeredBy": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "The identifier of the call automation entity which answers the call"
+ }
+ }
+ },
+ "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",
+ "description": "The target identity to redirect the call to."
+ },
+ "customCallingContext": {
+ "$ref": "#/definitions/CustomCallingContext",
+ "description": "Used by customer to send custom calling context to targets"
+ }
+ }
+ },
+ "CallRejectReason": {
+ "description": "The rejection reason.",
+ "enum": [
+ "none",
+ "busy",
+ "forbidden"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallRejectReason",
+ "modelAsString": true
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "ConnectRequest": {
+ "description": "The request payload for creating a connection to a CallLocator.",
+ "required": [
+ "callLocator",
+ "callbackUri"
+ ],
+ "type": "object",
+ "properties": {
+ "callLocator": {
+ "$ref": "#/definitions/CallLocator",
+ "description": "The call locator."
+ },
+ "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",
+ "description": "AI options for the call."
+ },
+ "mediaStreamingConfiguration": {
+ "$ref": "#/definitions/MediaStreamingConfiguration",
+ "description": "Media Streaming Configuration."
+ },
+ "transcriptionConfiguration": {
+ "$ref": "#/definitions/TranscriptionConfiguration",
+ "description": "Live Transcription Configuration."
+ }
+ }
+ },
+ "CallLocatorKind": {
+ "description": "The call locator kind.",
+ "enum": [
+ "unknown",
+ "groupCallLocator",
+ "serverCallLocator",
+ "roomCallLocator"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallLocatorKind",
+ "modelAsString": true
+ }
+ },
+ "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",
+ "type": "string"
+ },
+ "kind": {
+ "$ref": "#/definitions/CallLocatorKind"
+ }
+ }
+ },
+ "TransferToParticipantRequest": {
+ "description": "The request payload for transferring call to a participant.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The identity of the target where call should be transferred to."
+ },
+ "customCallingContext": {
+ "$ref": "#/definitions/CustomCallingContext",
+ "description": "Used by customer to send custom calling context to targets"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "transferee": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Transferee is the participant who is transferred away."
+ },
+ "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"
+ },
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that will be used as the transferor's caller Id when transferring a call to a Pstn target."
+ }
+ }
+ },
+ "TransferCallResponse": {
+ "description": "The response payload for transferring the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ },
+ "playOptions": {
+ "$ref": "#/definitions/PlayOptions",
+ "description": "Defines options for playing the audio."
+ },
+ "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"
+ }
+ }
+ },
+ "PlaySourceType": {
+ "description": "Defines the type of the play source",
+ "enum": [
+ "file",
+ "text",
+ "ssml"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PlaySourceType",
+ "modelAsString": true
+ }
+ },
+ "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",
+ "description": "Defines the file source info to be used for play"
+ },
+ "text": {
+ "$ref": "#/definitions/TextSource",
+ "description": "Defines the text source info to be used for play"
+ },
+ "ssml": {
+ "$ref": "#/definitions/SsmlSource",
+ "description": "Defines the ssml(Speech Synthesis Markup Language) source info to be used for play"
+ }
+ }
+ },
+ "PlayOptions": {
+ "required": [
+ "loop"
+ ],
+ "type": "object",
+ "properties": {
+ "loop": {
+ "description": "The option to play the provided audio source in loop when set to true",
+ "type": "boolean"
+ },
+ "interruptCallMediaOperation": {
+ "description": "If set play can barge into other existing queued-up/currently-processing requests.",
+ "type": "boolean"
+ }
+ }
+ },
+ "FileSource": {
+ "required": [
+ "uri"
+ ],
+ "type": "object",
+ "properties": {
+ "uri": {
+ "description": "Uri for the audio file to be played",
+ "type": "string"
+ }
+ }
+ },
+ "VoiceKind": {
+ "description": "Voice kind type",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VoiceKind",
+ "modelAsString": true
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "StartTranscriptionRequest": {
+ "type": "object",
+ "properties": {
+ "locale": {
+ "description": "Defines Locale for the transcription e,g en-US",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "StopTranscriptionRequest": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "RecognizeInputType": {
+ "description": "Determines the type of the recognition.",
+ "enum": [
+ "dtmf",
+ "speech",
+ "speechOrDtmf",
+ "choices"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecognizeInputType",
+ "modelAsString": true
+ }
+ },
+ "RecognizeRequest": {
+ "required": [
+ "recognizeInputType",
+ "recognizeOptions"
+ ],
+ "type": "object",
+ "properties": {
+ "recognizeInputType": {
+ "$ref": "#/definitions/RecognizeInputType"
+ },
+ "playPrompt": {
+ "$ref": "#/definitions/PlaySource",
+ "description": "The source of the audio to be played for recognition."
+ },
+ "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",
+ "description": "Defines options for recognition."
+ },
+ "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"
+ }
+ }
+ },
+ "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",
+ "description": "Target participant of DTMF tone recognition."
+ },
+ "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",
+ "description": "Defines configurations for DTMF."
+ },
+ "choices": {
+ "description": "Defines Ivr choices for recognize.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Choice"
+ }
+ },
+ "speechOptions": {
+ "$ref": "#/definitions/SpeechOptions",
+ "description": "Defines continuous speech recognition option."
+ }
+ }
+ },
+ "Tone": {
+ "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
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionRequest": {
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Defines options for recognition."
+ },
+ "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"
+ }
+ }
+ },
+ "SendDtmfTonesRequest": {
+ "required": [
+ "tones",
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "tones": {
+ "description": "List of tones to be sent to target participant.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ }
+ },
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Target participant of send Dtmf tones."
+ },
+ "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"
+ }
+ }
+ },
+ "SendDtmfTonesResult": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "UpdateTranscriptionRequest": {
+ "required": [
+ "locale"
+ ],
+ "type": "object",
+ "properties": {
+ "locale": {
+ "description": "Defines new locale for transcription.",
+ "type": "string"
+ }
+ }
+ },
+ "HoldRequest": {
+ "description": "The request payload for holding participant from the call.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant to be held from the call."
+ },
+ "playSourceInfo": {
+ "$ref": "#/definitions/PlaySource",
+ "description": "Prompt to play while in hold."
+ },
+ "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"
+ }
+ }
+ },
+ "UnholdRequest": {
+ "description": "The request payload for holding participant from the call.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participants to be hold from the call.\r\nOnly ACS Users are supported."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "StartHoldMusicRequest": {
+ "description": "The request payload for holding participant from the call.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant to be held from the call."
+ },
+ "playSourceInfo": {
+ "$ref": "#/definitions/PlaySource",
+ "description": "Prompt to play while in hold."
+ },
+ "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"
+ }
+ }
+ },
+ "StopHoldMusicRequest": {
+ "description": "The request payload for holding participant from the call.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participants to be hold from the call.\r\nOnly ACS Users are supported."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "StartDialogRequest": {
+ "required": [
+ "dialog"
+ ],
+ "type": "object",
+ "properties": {
+ "dialog": {
+ "$ref": "#/definitions/BaseDialog",
+ "description": "Defines the dialog."
+ },
+ "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"
+ }
+ }
+ },
+ "DialogInputType": {
+ "description": "Determines the type of the dialog.",
+ "enum": [
+ "powerVirtualAgents",
+ "azureOpenAI"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DialogInputType",
+ "modelAsString": true
+ }
+ },
+ "BaseDialog": {
+ "required": [
+ "kind",
+ "context"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "context": {
+ "description": "Dialog context.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ }
+ },
+ "discriminator": "kind"
+ },
+ "DialogStateResponse": {
+ "type": "object",
+ "properties": {
+ "dialogId": {
+ "description": "The dialog ID.",
+ "type": "string"
+ },
+ "dialog": {
+ "$ref": "#/definitions/BaseDialog",
+ "description": "Defines dialog."
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "UpdateDialogRequest": {
+ "required": [
+ "dialog"
+ ],
+ "type": "object",
+ "properties": {
+ "dialog": {
+ "$ref": "#/definitions/DialogUpdateBase",
+ "description": "Dialog context."
+ },
+ "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"
+ }
+ }
+ },
+ "DialogUpdateBase": {
+ "required": [
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "context": {
+ "description": "Dialog context.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ }
+ },
+ "discriminator": "kind"
+ },
+ "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"
+ }
+ }
+ },
+ "CallParticipant": {
+ "description": "A call participant.",
+ "type": "object",
+ "properties": {
+ "identifier": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Communication identifier of the participant"
+ },
+ "isMuted": {
+ "description": "Is participant muted",
+ "type": "boolean"
+ },
+ "isOnHold": {
+ "description": "Is participant on hold.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AddParticipantRequest": {
+ "description": "The request payload for adding participant to the call.",
+ "required": [
+ "participantToAdd"
+ ],
+ "type": "object",
+ "properties": {
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when inviting a PSTN participant."
+ },
+ "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",
+ "description": "The participant to invite."
+ },
+ "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"
+ },
+ "customCallingContext": {
+ "$ref": "#/definitions/CustomCallingContext",
+ "description": "Used by customer to send custom calling context to targets"
+ },
+ "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"
+ }
+ }
+ },
+ "AddParticipantResponse": {
+ "description": "The response payload for adding participants to the call.",
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CallParticipant",
+ "description": "List of current participants in the call."
+ },
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ },
+ "invitationId": {
+ "description": "Invitation ID used to add a participant.",
+ "type": "string"
+ }
+ }
+ },
+ "RemoveParticipantRequest": {
+ "description": "The remove participant by identifier request.",
+ "required": [
+ "participantToRemove"
+ ],
+ "type": "object",
+ "properties": {
+ "participantToRemove": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The participants to be removed from the call."
+ },
+ "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"
+ }
+ }
+ },
+ "RemoveParticipantResponse": {
+ "description": "The response payload for removing participants of the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "MuteParticipantsResult": {
+ "description": "The result payload for muting participants from the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "UnmuteParticipantsRequest": {
+ "description": "The request payload for unmuting participant from the call.",
+ "required": [
+ "targetParticipants"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipants": {
+ "description": "Participants to be unmuted 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"
+ }
+ }
+ },
+ "UnmuteParticipantsResponse": {
+ "description": "The response payload for unmuting participants from the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "RecordingContentType": {
+ "description": "The content type of call recording.",
+ "enum": [
+ "audio",
+ "audioVideo"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingContentType",
+ "modelAsString": true
+ }
+ },
+ "RecordingChannelType": {
+ "description": "The channel type of call recording.",
+ "enum": [
+ "mixed",
+ "unmixed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingChannelType",
+ "modelAsString": true
+ }
+ },
+ "RecordingFormatType": {
+ "description": "The format type of call recording.",
+ "enum": [
+ "wav",
+ "mp3",
+ "mp4"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingFormatType",
+ "modelAsString": true
+ }
+ },
+ "StartCallRecordingRequest": {
+ "description": "The request payload start for call recording operation with call locator.",
+ "required": [
+ "callLocator"
+ ],
+ "type": "object",
+ "properties": {
+ "callLocator": {
+ "$ref": "#/definitions/CallLocator",
+ "description": "The call locator."
+ },
+ "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"
+ }
+ },
+ "externalStorage": {
+ "$ref": "#/definitions/ExternalStorage",
+ "description": "Optional property to specify location where recording will be stored"
+ },
+ "pauseOnStart": {
+ "description": "When set to true will start recording in Pause mode, which can be resumed.",
+ "type": "boolean"
+ }
+ }
+ },
+ "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",
+ "description": "The identifier for the participant whose bitstream will be written to the channel\r\nrepresented by the channel number."
+ }
+ }
+ },
+ "RecordingStorageKind": {
+ "description": "Defines the kind of external storage",
+ "enum": [
+ "azureCommunicationServices",
+ "azureBlobStorage"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingStorageKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "AzureCommunicationServices",
+ "description": "Storage managed by Azure Communication Services",
+ "value": "AzureCommunicationServices"
+ },
+ {
+ "name": "AzureBlobStorage",
+ "description": "Storage managed by provided Azure blob",
+ "value": "AzureBlobStorage"
+ }
+ ]
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "RecordingState": {
+ "enum": [
+ "active",
+ "inactive"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingState",
+ "modelAsString": true
+ }
+ },
+ "RecordingKind": {
+ "enum": [
+ "azureCommunicationServices",
+ "teams",
+ "teamsCompliance"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "AzureCommunicationServices",
+ "description": "Recording initiated by Azure Communication Services",
+ "value": "AzureCommunicationServices"
+ },
+ {
+ "name": "Teams",
+ "description": "Recording initiated by Teams user",
+ "value": "Teams"
+ },
+ {
+ "name": "TeamsCompliance",
+ "description": "Recording initiated by Teams compliance policy",
+ "value": "TeamsCompliance"
+ }
+ ]
+ }
+ },
+ "RecordingStateResponse": {
+ "type": "object",
+ "properties": {
+ "recordingId": {
+ "type": "string"
+ },
+ "recordingState": {
+ "$ref": "#/definitions/RecordingState"
+ },
+ "recordingKind": {
+ "$ref": "#/definitions/RecordingKind"
+ }
+ }
+ },
+ "AddParticipantFailed": {
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "AddParticipantSucceeded": {
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CallConnected": {
+ "description": "The call connected event.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CallDisconnected": {
+ "description": "The call disconnected event.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CallTransferAccepted": {
+ "description": "The call transfer accepted event.",
+ "type": "object",
+ "properties": {
+ "transferTarget": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Target who the call is transferred to.",
+ "readOnly": true
+ },
+ "transferee": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "the participant who is being transferred away.",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CallTransferFailed": {
+ "description": "The call transfer failed event.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ParticipantsUpdated": {
+ "type": "object",
+ "properties": {
+ "participants": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CallParticipant"
+ },
+ "readOnly": true
+ },
+ "sequenceNumber": {
+ "format": "int32",
+ "type": "integer",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message.",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RemoveParticipantSucceeded": {
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RemoveParticipantFailed": {
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CancelAddParticipantSucceeded": {
+ "type": "object",
+ "properties": {
+ "invitationId": {
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CancelAddParticipantFailed": {
+ "description": "Failed cancel add participant event.",
+ "type": "object",
+ "properties": {
+ "invitationId": {
+ "description": "Invitation ID used to cancel the request.",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AnswerFailed": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RecordingStateChanged": {
+ "type": "object",
+ "properties": {
+ "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",
+ "description": "Result information defines the code, subcode and message",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PlayCompleted": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PlayFailed": {
+ "type": "object",
+ "properties": {
+ "failedPlaySourceIndex": {
+ "format": "int32",
+ "description": "Indicates the index of the failed play source.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PlayCanceled": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RecognitionType": {
+ "description": "Determines the sub-type of the recognize operation.\r\nIn case of cancel operation this field is not set and is returned empty",
+ "enum": [
+ "dtmf",
+ "speech",
+ "choices"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RecognitionType",
+ "modelAsString": true
+ }
+ },
+ "RecognizeCompleted": {
+ "type": "object",
+ "properties": {
+ "recognitionType": {
+ "$ref": "#/definitions/RecognitionType"
+ },
+ "collectTonesResult": {
+ "$ref": "#/definitions/CollectTonesResult",
+ "description": "Defines the result for RecognitionType = Dtmf\r\nWould be replaced by DtmfResult after server sdk renewed",
+ "readOnly": true
+ },
+ "dtmfResult": {
+ "$ref": "#/definitions/DtmfResult",
+ "description": "Defines the result for RecognitionType = Dtmf",
+ "readOnly": true
+ },
+ "speechResult": {
+ "$ref": "#/definitions/SpeechResult",
+ "description": "Defines the result for RecognitionType = Speech and SpeechOrDtmf",
+ "readOnly": true
+ },
+ "choiceResult": {
+ "$ref": "#/definitions/ChoiceResult",
+ "description": "Defines the result for RecognitionType = Choices",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CollectTonesResult": {
+ "type": "object",
+ "properties": {
+ "tones": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "DtmfResult": {
+ "type": "object",
+ "properties": {
+ "tones": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "SpeechResult": {
+ "description": "The speech recognition status as a result.",
+ "type": "object",
+ "properties": {
+ "speech": {
+ "description": "The recognized speech in string.",
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "RecognizeFailed": {
+ "type": "object",
+ "properties": {
+ "failedPlaySourceIndex": {
+ "format": "int32",
+ "description": "Indicates the index of the failed play source.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RecognizeCanceled": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogCompleted": {
+ "type": "object",
+ "properties": {
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogFailed": {
+ "type": "object",
+ "properties": {
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogConsent": {
+ "type": "object",
+ "properties": {
+ "userConsent": {
+ "$ref": "#/definitions/UserConsent",
+ "description": "UserConsent data from the Conversation Conductor",
+ "readOnly": true
+ },
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UserConsent": {
+ "type": "object",
+ "properties": {
+ "recording": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ },
+ "DialogStarted": {
+ "type": "object",
+ "properties": {
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogHangup": {
+ "type": "object",
+ "properties": {
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "ivrContext": {
+ "description": "Ivr Context",
+ "type": "object",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogTransfer": {
+ "type": "object",
+ "properties": {
+ "transferType": {
+ "description": "Transfer type",
+ "type": "string",
+ "readOnly": true
+ },
+ "transferDestination": {
+ "description": "Transfer destination",
+ "type": "string",
+ "readOnly": true
+ },
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "ivrContext": {
+ "description": "Ivr Context",
+ "type": "object",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogLanguageChange": {
+ "type": "object",
+ "properties": {
+ "selectedLanguage": {
+ "description": "Selected Language",
+ "type": "string",
+ "readOnly": true
+ },
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "ivrContext": {
+ "description": "Ivr Context",
+ "type": "object",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogSensitivityUpdate": {
+ "type": "object",
+ "properties": {
+ "sensitiveMask": {
+ "description": "SensitiveMask",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DialogUpdated": {
+ "type": "object",
+ "properties": {
+ "dialogInputType": {
+ "$ref": "#/definitions/DialogInputType"
+ },
+ "dialogId": {
+ "description": "Dialog ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "ivrContext": {
+ "description": "Ivr Context",
+ "type": "object",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionToneFailed": {
+ "type": "object",
+ "properties": {
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Result information defines the code, subcode and message",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionToneReceived": {
+ "type": "object",
+ "properties": {
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Result information defines the code, subcode and message",
+ "readOnly": true
+ },
+ "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"
+ },
+ "operationContext": {
+ "type": "string",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionStopped": {
+ "description": "Call connection ID.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SendDtmfTonesCompleted": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SendDtmfTonesFailed": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TranscriptionStarted": {
+ "type": "object",
+ "properties": {
+ "transcriptionUpdate": {
+ "$ref": "#/definitions/TranscriptionUpdate",
+ "description": "Defines the result for TranscriptionUpdate with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "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
+ }
+ },
+ "TranscriptionUpdate": {
+ "type": "object",
+ "properties": {
+ "transcriptionStatus": {
+ "$ref": "#/definitions/TranscriptionStatus"
+ },
+ "transcriptionStatusDetails": {
+ "$ref": "#/definitions/TranscriptionStatusDetails"
+ }
+ }
+ },
+ "TranscriptionStopped": {
+ "type": "object",
+ "properties": {
+ "transcriptionUpdate": {
+ "$ref": "#/definitions/TranscriptionUpdate",
+ "description": "Defines the result for TranscriptionUpdate with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TranscriptionFailed": {
+ "type": "object",
+ "properties": {
+ "transcriptionUpdate": {
+ "$ref": "#/definitions/TranscriptionUpdate",
+ "description": "Defines the result for TranscriptionUpdate with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "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 to set the context for connecting to a call.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "TranscriptionUpdated": {
+ "type": "object",
+ "properties": {
+ "transcriptionUpdate": {
+ "$ref": "#/definitions/TranscriptionUpdate",
+ "description": "Defines the result for TranscriptionUpdate with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MediaStreamingFailed": {
+ "type": "object",
+ "properties": {
+ "mediaStreamingUpdate": {
+ "$ref": "#/definitions/MediaStreamingUpdate",
+ "description": "Defines the result for audio streaming update with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "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
+ }
+ },
+ "MediaStreamingUpdate": {
+ "type": "object",
+ "properties": {
+ "contentType": {
+ "type": "string"
+ },
+ "mediaStreamingStatus": {
+ "$ref": "#/definitions/MediaStreamingStatus"
+ },
+ "mediaStreamingStatusDetails": {
+ "$ref": "#/definitions/MediaStreamingStatusDetails"
+ }
+ }
+ },
+ "MediaStreamingStarted": {
+ "type": "object",
+ "properties": {
+ "mediaStreamingUpdate": {
+ "$ref": "#/definitions/MediaStreamingUpdate",
+ "description": "Defines the result for audio streaming update with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MediaStreamingStopped": {
+ "type": "object",
+ "properties": {
+ "mediaStreamingUpdate": {
+ "$ref": "#/definitions/MediaStreamingUpdate",
+ "description": "Defines the result for audio streaming update with the current status and the details about the status",
+ "readOnly": true
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HoldFailed": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code/sub-code and message from NGC services.",
+ "readOnly": true
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Version of API to invoke.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "Endpoint": {
+ "name": "endpoint",
+ "in": "path",
+ "description": "The endpoint of the Azure Communication resource.",
+ "required": true,
+ "type": "string",
+ "format": "url",
+ "x-ms-skip-url-encoding": true,
+ "x-ms-parameter-location": "client"
+ }
+ },
+ "securityDefinitions": {
+ "Authorization": {
+ "type": "apiKey",
+ "description": "An Azure Communication Services user access token.",
+ "name": "Authorization",
+ "in": "header"
+ }
+ },
+ "security": [
+ {
+ "Authorization": []
+ }
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "$ref": "#/parameters/Endpoint"
+ }
+ ]
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/readme.md b/specification/communication/data-plane/CallAutomation/readme.md
index 475691dd098c..ff83393606f8 100644
--- a/specification/communication/data-plane/CallAutomation/readme.md
+++ b/specification/communication/data-plane/CallAutomation/readme.md
@@ -26,7 +26,7 @@ These are the global settings for the communicationservices.
```yaml
openapi-type: data-plane
-tag: package-2024-04-15
+tag: package-2024-09-01-preview
```
### Tag: package-2022-04-07-preview
@@ -98,7 +98,17 @@ suppressions:
reason: Our LRO behavior does not fit the default behavior
```
----
+
+### Tag: package-2024-09-01-preview
+
+These settings apply only when `--tag=package-2024-09-01-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-09-01-preview'
+input-file:
+ - preview/2024-09-01-preview/communicationservicescallautomation.json
+title:
+ Azure Communication Services
+```
# Code Generation