-
Notifications
You must be signed in to change notification settings - Fork 25
Description
Describe the requested update
We have created an updated list of all the CXML error codes along with their possible causes.
CXML Error Codes and Possible Causes
4000:
- "The provided list of capabilities contains invalid capabilities for the phone number."
- "The capabilities for the phone number are missing."
4001:
- "The fee for the operation you are trying to perform costs more than the available balance."
10000:
- "The argument passed is invalid."
- "A required argument was left blank"
- "An attempt was made to cancel an in-progress call."
- "An attempt was made to update a completed call."
- "An attempt was made to update a conference or conference participant for a completed conference"
- "An attempt was made to cancel an in-progress or finished fax"
- "An attempt was made to redact a message that is still in-progress"
10001:
- "The operation attempted is not enabled on the space."
10003:
- "The permissions passed for the API token contain invalid selections."
10004:
- "The subproject ID passed does not belong to the project used to authenticate the request."
11100:
- "The URL passed to update the queue member is invalid."
11200:
- "The attempt to deliver a webhook to your server timed out."
- "The attempt to deliver a webhook to your server returned an inconclusive code."
11217:
- "The attempt to deliver a webhook to your server responded with a 4xx or 5xx status code."
11751:
- "The total size of the media message request exceeds the maximum size limit."
12100:
- "Your CXML document failed to parse. There could be a leading space, a missing or unclosed element, or incorrect attribute."
12300:
- "The content type of the provided URL is invalid"
13000:
- "The Conference noun cannot be mixed with Number nouns."
- "The Conference noun can only be used once inside a Dial verb"
13215:
- "The Dial noun has an invalid nested element - the only valid nested element for Dial is Number."
- "The Dial noun includes too many nouns"
- "The Refer noun has an invalid nested element - no verbs can be nested within Refer, and Refer cannot be nested in any other verbs."
13221:
- "The HTTP method attribute is invalid - it can only be 'GET' or 'POST'."
13222:
- "The attribute in sendDigits includes an invalid character. It may only contain '0123456789ABCD*#wW'."
13223:
- "The phone number in Dial is not formatted correctly. It must be E164."
- "The phone number in Dial is missing."
- "You are attempting to Dial something that is not a phone number."
13238:
- "There was an invalid Verb provided in the CXML executed by the waitUrl, holdUrl, or announceUrl."
- "The executed CXML contains Dial, Gather, Hangup, or Record - these are not allowed."
13243:
- "The provided SIP URI is formatted incorrectly."
13254:
- "The SIP URI provided for Dial -> SIP is missing."
- "The SIP URI provided for Dial -> SIP is not a public IP address."
- "The SIP URI provided for Dial -> SIP does not resolve."
13420:
- "The URL provided for Play does not return audio"
- "The URL provided for Play has an invalid content type"
13621:
- "The provided event is not a valid recording callback event."
13699:
- "The provided trim value for the recording is invalid."
13750:
- "The verb provided is not currently supported by the API version or your space."
13801:
- "The Refer verb was used on a non SIP call leg."
14204:
- "The queue name is too short."
- "The queue is missing in the attempt to Enqueue."
16002:
- "The participant to be coached is not in the provided conference."
- "The provided conference attributes are invalid."
- "The required conference attributes are missing."
20001:
- "An unknown error occurred."
20002:
- "The friendly name is missing"
- "The friendly name is invalid"
- "The friendly name must be between 1 and 64 characters long"
20003:
- "There was an authentication error or API access is blocked for this feature."
20009:
- "An attempt was made to delete a call that is not finished "
- "An attempt was made to delete a fax that is not finished"
- "An attempt was made to delete a message that is in-progress."
- "An attempt was made to delete media for a message that is in-progress."
20010:
- "The action you are attempting to performed is disabled for the account."
20404:
- "The resource you are trying to access does not exist."
20422:
- "The passed document is not a valid CXML document."
- "The CXML document is missing a content type header or contains an invalid parameter/value."
20429:
- "There were too many requests or throughput was exceeded."
20504:
- "An internal error occurred."
21201:
- "The outbound phone call request was missing a 'To' number."
21205:
- "A phone call was attempted without a CXML Url or ApplicationSid."
21208:
- "The provided Timeout parameter was invalid"
- "The provided Timeout parameter was not a positive whole integer"
21209:
- "The Method parameter provided was not GET or POST."
- "The passed mode was not valid for the phone number."
21210:
- "An outbound message was attempted where the From number provided was a verified caller ID."
- "The From number provided was not a purchased number in your project"
- "The From number provided was not a purchased or verified number in your project."
21211:
- "The 'To' number provided was missing."
- "The 'To' number provided has an invalid format."
21212:
- "The From number provided has invalid format."
- "The From number provided was not E164 while dialing to a phone number."
- "The From number provided must be a E164 number, caller ID string, or SIP URI."
21213:
- 'An outbound call was attempted without a From number.'
21217:
- "The To phone number provided does not appear to be valid"
21218:
- "The provided AppliationSid is invalid"
- "The provided ApplicationSid does not exist"
21219:
- "The account limitations for this feature have been exceeded"
- "The 'To' phone number is not a verified caller ID and the account is in Trial mode."
- "The 'To' phone number is not a verified caller ID as required for Platform Free Trial messaging."
21220:
- "The call cannot be redirected if it is not in-progress"
- "A stream cannot be started for a call or conference in the current state."
- "A recording cannot be started for a call that is not in-progress."
21234:
- "The AMD parameters provided are not valid."
21262:
- "The AMD status callback URL is missing."
21401:
- "The phone number you're attempting to purchase has an invalid format."
21402:
- "The URL is not valid."
- "The URL is not a fully qualified URL."
21408:
- "The callback URL is not set."
21420:
- "The passed VoiceApplicationSid or SmsApplicationSid could not be found."
21421:
- "An area code or number must be provided to purchase a number."
21451:
- "The area code is not formatted correctly."
21455:
- "The URL given to Play is not valid."
21456:
- "The supplied callback URL is not valid."
21475:
- "An attempt was made to update a conference with an invalid status."
21481:
- "The page token supplied was invalid."
21601:
- "The phone number is not a valid SMS or MMS capable number."
- "The phone number is not a voice capable number."
- "The phone number is not a fax capable number."
21602:
- "An attempt was made to send a message without a media URL or text body."
21603:
- "The format of the 'To' or 'From' is invalid."
- "The 'To' number has invalid format."
- "The 'To' number is missing."
- "The 'From' number is missing."
21604:
- "The 'To' number is required to send a message."
21606:
- "The 'To' number provided is not a mobile number."
21610:
- "The message was blocked by the user or sent from a blacklisted number."
21611:
- "The 'From' number has exceeded the maximum number of queued calls, messages, or faxes for the account."
21612:
- "The Media provided is not supported."
21614:
- "The 'To' number is not a valid mobile number."
21617:
- "The concatenated message body exceeds the allowed character limit."
21620:
- "The media URL(s) provided is/was invalid."
- "The URL must be HTTP or HTTPS."
21623:
- "The number of media files exceeds the allowed limit."
21624:
- "The validity period provided is invalid."
21626:
- "The callback event is not valid."
21628:
- "The E911 address provided is invalid for this phone number."
21701:
- "The number group provided is invalid or unrecognized."
21703:
- "The number group provided does not have a phone number in the group capable of the operation you are attempting."
21705:
- "The message was attempted without a From number or Number Group."
21717:
- "The 'From' number must belong to an active camapign."
22109:
- "The E911 address ID provided is not valid."
22121:
- "This number was purchased too recently to release."
30001:
- "The validity period for the message was exceeded."
30002:
- "The account balance is insufficient to send the message."
- "The account balance is insufficient for the operation you are attempting."
30003:
- "The message was attempted but the destination handset is not reachable."
30004:
- "The message was attempted but blocked by the destination carrier."
30005:
- "The message was attempted but the destination handset is unknown."
30006:
- "The message could not be routed to the destination handset."
30007:
- "The message was filtered due to disallowed content"
- "The message was flagged as a carrier violation"
30008:
- "The message failed due to an unknown upstream error."
30009:
- "The message's validity period has expired at the carrier."
30010:
- "The max price was exceeded by the cost of the message."
- "The max price was exceeded by the cost of the call."
30022:
- "The US A2P 10DLC messaging rate limits were exceeded."
30027:
- "The US A2P 10DLC T-Mobile Daily Message Limit was Reached"
31003:
- "The request resulted in a connection timeout"
31922:
- "The websocket URL provided for the stream is invalid"
- "The websocket URL schema is not WSS"
- "The websocket URL has a trailing whitespace"
- "The websocket URL has an embedded whitespace"
32009:
- "The SIP domain dialed is not a registered endpoint"
32110:
- "The SIP URI provided is invalid."
- "The Refer verb contains an invalid SIP URI."
35125:
- "The PFT Campaign daily message cap has been met."
- "The sole proprietor campaign daily message cap has been met."
50509:
- "The redacted message body must be empty."
- "An attempt to redact the message by passing a different body was made."
53404:
- "The supplied codecs are unsupported or invalid."
53603:
- "The URL returned an HTTP redirect."
- "The URL exceeded the max amount of HTTP redirects."
- "There was an internal failure while attempting to process the media."
54453:
- "The PageToken provided is invalid or missing."
- "A PageToken must be included if your Page value is larger than 0."
54454:
- "The page size provided is invalid."
63011:
- "The message could not be delivered to the carrier."
63019:
- "The media could not be downloaded."
90000:
- "The wildcard is invalid while searching for available numbers."
- "The format for the argument provided is invalid"
- "The supplied parameter is unsupported."
- "The supplied parameter can only be used in combination with InRegion."
- "The capabilities of the number could not be restricted on purchase."
- "The E911 address cannot be set on creation - update the record after it is created."Outside of updating the existing codes and adding the missing ones, we will need to move towards a format that supports multiple causes for each code. The Twilio error warning dictionary is a good example, as our codes loosely map to theirs for compatibility.
Reason for the request
The CXML Error Codes page has become out of date with the codes that are returned through the API, CXML execution, and applied mappings from background processes.
Sections to be updated
CXML Error Codes
Additional context
A proposal was made to update the mappings that are incorrect, overloaded, or duplicated across multiple codes. However, this was ruled out as it would be a breaking change that would require massive multi department effort and coordinated customer communication.
Instead, we will focus on documenting everything as it exists now, and following a clean pattern with code additions.
After we have established a baseline, if any codes become problematic, we can evaluate updating their mappings on a case by case basis, one at a time.
Related Issues or PRs
https://github.com/signalwire/cloud-product/issues/14830
Note
Te linked ticket contains the full audit, including the comparable Twilio code (if one exists), notes about usage, and example error messages/call warning. However, please feel free to reach out if any other information is required!