You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Error codes for Call Automation can come either as synchronous responses to API calls or asynchronous responses via the provided callback URI. In the synchronous situation, if an API call is made and it'sn't accepted, ACS will provide an error code describing why the API call was rejected. In asynchronous scenarios if an API call is made and is accepted but something still goes wrong, both a callback event and an error code are received. An example of a common callback event for call failures would be the `callDisconnected` event that is surfaced whenever a call is disconnected. Once the `callDisconnected` event is received, there won't be any more callback events for that given call. For a list of call signaling callback events see ([this page](../../../../../concepts/call-automation/call-automation.md#call-automation-webhook-events)), and for a list of callback events for media actions see ([this page](../../../../../how-tos/call-automation/control-mid-call-media-actions.md)).
18
+
19
+
### Error Code Syntax
20
+
Error codes, subcodes, and corresponding result categories help developers identify and diagnose errors. Error code details include:
21
+
22
+
**Code** - are 3 digit integers representing client or server response status. The code categories:
23
+
- Successful responses (200-299)
24
+
- Client error (400-499)
25
+
- Server error (500-599)
26
+
- Global error (600-699)
27
+
28
+
**Subcode** - Are defined as an integer, where each number indicates a unique reason, specific to a group of scenarios or specific scenario outcome.
29
+
30
+
**Message** - Describes the outcome and provides hints how to mitigate the problem if an outcome is a failure.
31
+
32
+
In addition to the code and subcode, more detailed troubleshooting information can be found in the call logs. To learn more about how to enable and access calling logs, see [this page](../../../../../concepts/analytics/enable-logging.md) for detailed guidance.
33
+
15
34
## Call Automation SDK error codes
16
35
17
-
The following error codes are exposed by the Call Automation SDK.
|| 400 | Bad request || The input request is invalid. Look at the error message to determine which input is incorrect. |
22
-
|| 400 | Play Failed || Ensure your audio file is WAV, 16 KHz, or Mono, and make sure the file URL is publicly accessible. |
23
-
|| 400 | Recognize Failed || Check the error message. The message highlights if this failure is due to timeout being reached or if operation was canceled. For more information about the error codes and messages, see [gathering user input](../../../../../how-tos/call-automation/recognize-action.md#event-codes). |
24
-
|| 401 | Unauthorized || HMAC authentication failed. Verify whether the connection string used to create CallAutomationClient is correct. |
25
-
|| 403 | Forbidden || Request is forbidden. Make sure that you can have access to the resource you're trying to access. |
26
-
|| 404 | Resource not found || The call you're trying to act on doesn't exist. For example, transferring a call that previously disconnected. |
27
-
|| 429 | Too many requests || Retry after a delay suggested in the Retry-After header, then exponentially backoff. |
28
-
|| 500 | Internal server error || Retry after a delay. If it persists, raise a support ticket. |
29
-
|| 500 | Play Failed || File a support request through the Azure portal. |
30
-
|| 500 | Recognize Failed || Check error message and confirm the audio file format is valid (WAV, 16 KHz, Mono). If the file format is valid, file a support request through Azure portal. |
31
-
|| 502 | Bad gateway || Retry after a delay with a fresh http client. |
32
-
|| 503,504 | Communication Services infrastructure error. || File a support request through the Azure portal. |
36
+
The following table contains the most common codes and subcodes. If your error isn't in this table, refer to the generic codes and subcodes to get more information about your specific scenario.
37
+
38
+
### Most common Call Automation error codes
39
+
| Code | Subcode | Description | Mitigation |
40
+
| --- | --- | --- | --- |
41
+
| 404 | 8522 | A generic error code that indicates that the resource isn't found. Resources can include calls and participants. | Double check call status: the call may have already ended, or the participant has left the call. |
42
+
| 400 | 8523 | A generic error code that indicates that something in the request body is invalid. | Check to make sure all of the parameters are valid. Refer to the error message to determine which parameter is throwing the error. |
43
+
| 400 | 8501 | Action Not Supported Call Not Established | The action associated with the error message was activated while the call was not active. Ensure that new call actions aren't initiated after the call has been disconnected. This error could also result from actions invoked while the call is active if they're close to the call disconnected time. |
44
+
| 400 | 8500 | Invalid Media Mode | Check the status of your media operations to see if any of them are already active, or if target participant is already in a media operation. If there's an active media operation, wait for the operation to finish and then retry. |
45
+
| 400 | 8559 | Action Not Supported Only One Single Dialout App Allowed | Duplicate start recording request, recording already initiated or in progress. Double check recording status to ensure it's inactive before submitting a new start recording call. |
46
+
| 400 | 8528 | Action not supported call terminated | The action associated with the error message was activated while the call was terminated. Ensure that new call actions aren't initiated after the call is terminated. This error could also result from actions invoked while the call is active if they're close to the call termination time. |
47
+
| 409 | 8519 | Conflict | Check to make sure multiple actions aren't being performed on the same resource in parallel. Refer to error message to identify which two actions are in conflict. |
48
+
| 403 | 7507 | Call Source Identity Invalid | Application identity from authorization token didn't match application identity in call source. Check to make sure you're using the connection string from the ACS resource the incoming call webhook was configured in (the phone number has to be owned by the same ACS resource answering the call). |
49
+
| 403 | 7504 | Insufficient Application Permissions | Generic code for insufficient permissions, check error message for context on what resource is lacking permissions. |
50
+
| 400 | 8585 | Action Not Valid In Current Call State | Call isn't established or is disconnected: wait for the call to be established before retrying the media action. |
51
+
| 405 | 8520 | Functionality not supported at this time | Expected Error: Workflow not currently supported. Check our release blog to see if there's an updated SDK that has enabled these functionalities. See the Call Automation known limitations page for a list of not supported workflows. |
52
+
| 412 | 8583 | Precondition Failed | Reference [this page](../../../../../how-tos/call-automation/control-mid-call-media-actions.md#media-action-compatibility-table) listing incompatible media actions to ensure you aren't running or queueing incompatible actions. |
53
+
| 400 | 8567 | ACS Resource Service Principal Not Enabled | The Azure Cognitive Service Resource isn't configured properly. See this [page](../../../../../concepts/call-automation/azure-communication-services-azure-cognitive-services-integration.md) for a guide on setting up your Azure Cognitive Service Resource. |
54
+
| 405 | 8522 | Missing configuration | Check error message for more context on which configuration needs to be established. This configuration needs to happen when invoking the AnswerCall API. |
55
+
56
+
### Generic error codes
57
+
#### 2xx codes
58
+
A 2xx code represents a successful response. The subcode for successful responses will be 0.
59
+
60
+
#### 4xx codes
61
+
A 4xx Code represents a client error.
62
+
63
+
| Status Code | Description |
64
+
| --- | --- |
65
+
| 400 | Bad request |
66
+
| 401 | Unauthorized |
67
+
| 403 | Forbidden |
68
+
| 404 | Not found |
69
+
| 405 | Method not allowed |
70
+
| 406 | Not acceptable |
71
+
| 408 | Timed out |
72
+
| 409 | Conflict |
73
+
| 412 | Precondition failed |
74
+
| 413 | Request entity too large |
75
+
| 426 | Upgrade required |
76
+
| 429 | Too many requests |
77
+
| 481 | Transaction doesn't exist |
78
+
| 487 | Canceled |
79
+
80
+
#### 5xx codes
81
+
A 5xx code represents a server error.
82
+
83
+
| Status Code | Description |
84
+
| --- | --- |
85
+
| 500 | Internal server error |
86
+
| 501 | Not implemented |
87
+
| 502 | Bad gateway |
88
+
| 503 | Service Unavailable |
89
+
| 504 | Gateway Timeout |
90
+
91
+
#### 6xx codes
92
+
A 6xx code represents a global error.
93
+
94
+
| Status Code | Description |
95
+
| --- | --- |
96
+
| 603 | Declined |
97
+
98
+
### Generic subcodes
99
+
| Subcode | Description |
100
+
| --- | --- |
101
+
| 0 | Success |
102
+
| 7000 | Graceful |
103
+
| 7500 | Unsupported AAD Identity |
104
+
| 7501 | Invalid Token |
105
+
| 7502 | Access Not Enabled |
106
+
| 7504 | Insufficient Application Permissions |
107
+
| 7505 | Enterprise Tenant Mismatch |
108
+
| 7506 | Untrusted Certificate |
109
+
| 7507 | Call Source Identity Invalid |
110
+
| 7508 | Unsupported ACS Identity |
111
+
| 7509 | Hmac Validation Error |
112
+
| 7510 | Managed Identity Validation Error |
113
+
| 7600 | Resource Access Not Enabled |
114
+
| 7601 | Invalid ACS Source Identity |
115
+
| 7602 | Invalid ACS Target Identity |
116
+
| 7603 | Invalid ACS Identity |
117
+
| 7604 | Unauthorized Teams Interop Scenario |
118
+
| 7605 | Unauthorized Teams Recording Interop Scenario |
119
+
| 7606 | Unauthorized ACS Resource For Cognitive Actions |
120
+
| 8500 | Invalid Media Mode |
121
+
| 8501 | Call Not Established |
122
+
| 8502 | My Participant ID Not Available |
123
+
| 8503 | Call Media State Audio Inactive |
124
+
| 8504 | Media Streams Unavailable |
125
+
| 8505 | Multiple Participants With Replacement |
126
+
| 8506 | Non Compliance Recording Call |
127
+
| 8508 | Operation Canceled |
128
+
| 8509 | Max Silence Timeout Reached |
129
+
| 8510 | Initial Silence Timeout Reached |
130
+
| 8511 | Play Prompt Failed |
131
+
| 8512 | Play Beep Failed |
132
+
| 8513 | Media Receive Timeout |
133
+
| 8514 | Stop Tone Detected |
134
+
| 8515 | Max Record Duration Reached |
135
+
| 8516 | Call Throttled |
136
+
| 8517 | Call Tenant ID Mismatch |
137
+
| 8518 | Call Exception |
138
+
| 8519 | Conflict |
139
+
| 8520 | Not Implemented |
140
+
| 8521 | Too Many Hops |
141
+
| 8522 | Not Found |
142
+
| 8523 | Invalid Argument |
143
+
| 8524 | Invalid Participants Count For Compliance Recording |
144
+
| 8525 | Non Recorded Party |
145
+
| 8526 | Invalid Join Token |
146
+
| 8527 | Invalid Join URL |
147
+
| 8528 | Call Terminated |
148
+
| 8529 | Call Throttled Monthly Limit Reached |
149
+
| 8530 | Call Throttled Active Calls Limit Reached |
150
+
| 8531 | Max Digits Received |
151
+
| 8532 | Inter Digit Timeout Reached |
152
+
| 8533 | Dtmf Option Matched |
153
+
| 8534 | Incorrect Tone Entered |
154
+
| 8535 | Invalid File Format |
155
+
| 8536 | File Download Failed |
156
+
| 8537 | Keep Alive Timeout Reached |
157
+
| 8538 | Callee Declined |
158
+
| 8539 | Callee Busy |
159
+
| 8540 | Callee Busy Everywhere |
160
+
| 8541 | Callee Unavailable |
161
+
| 8542 | Call Canceled |
162
+
| 8543 | Call Doesn't Exist |
163
+
| 8544 | Callee Unreachable |
164
+
| 8545 | Speech Option Matched |
165
+
| 8546 | Callee Sent Invalid Request |
166
+
| 8547 | Speech Option Not Matched |
167
+
| 8548 | Call isn't Group Call |
168
+
| 8549 | Retarget Conversation Creation Failed |
169
+
| 8550 | Retarget Media Negotiation Failed |
170
+
| 8551 | Retarget Not Supported |
171
+
| 8552 | Can't Remove Organizer |
172
+
| 8553 | Duplicate Recording |
173
+
| 8554 | Participant Out Of Meeting Audio Mix |
174
+
| 8555 | Retarget Already In Progress |
175
+
| 8556 | Action Not Supported For CR Call |
176
+
| 8557 | Wrong Format Type |
177
+
| 8558 | Participant Not Present |
178
+
| 8559 | Duplicate Single Dialout |
179
+
| 8560 | Join Conversation Blocked Due To Locked Meeting |
180
+
| 8561 | Invalid Join Meeting ID |
181
+
| 8562 | Recording Mode Not Supported |
182
+
| 8563 | Speech Not Recognized |
183
+
| 8564 | Speech Service Connection Error |
184
+
| 8565 | Cognitive Services Error |
185
+
| 8566 | Unmute Operation Not Allowed |
186
+
| 8567 | ACS Resource Service Principal Not Enabled |
187
+
| 8568 | Managed Identity For Cognitive Service Request Failed |
0 commit comments