Skip to content
Last updated

HTTP Basic for SMS

Note:

Reach out to our Sales team to get your credentials to use this service. You can contact them here.

Outbound SMS HTTP

Account details

Your account details are found in the Customer Account Details document and are used according to the below table.

Your available host options will be visible in the Customer Account Details document.

Hosthttp-<host>.clxcommunications.com
Port3800 (use 3801 for SSL)
URL/sendsms?
User<user>
Password<password>

CGI Variables / Query String parameters

VariableDescriptionTypeO/M
usernameUsername or account name.String[M]
passwordPassword associated with given username.String[M]
fromPhone number of the sender Short number max length is 16 Alphanumeric sender is limited to GSM default alphabet with max length 11 MSISDN sender max length is 18String[M]
toPhone number of the received. Plus signs (+) must be URL encoded[M]
textContents of the message, URL encoded as necessary.String[M]
charsetCharset of text message. Used to convert to a format suitable for 7-bit or UCS2. Defaults to ISO-8859-1 if coding is 7-bit and UTF16BE if coding is UCS2String[O]
udhOptional User Data Header (UDH) part of the message. Must be URL encoded.String[O]
mclassSets the Message Class in DCS Field. Accepts values between 0 and 3. 0 = Sends the message directly to display 1 = Sends to mobile 2 = Sends to SIM 3 = Sends to SIM ToolkitNumber[O]
mwiSets Message Waiting Indicator bits in the DCS field. If given, the message will be encoded as Message Waiting Indicator. The accepted values are 0, 1, 2, 3 for activating the voice, fax, e-mail and other indicator. Or 4, 5, 6, 7 for deactivating respectively.Number[O]
codingSets the coding scheme bits in DCS field. Accepts values between 0 and 2. 0 = 7-bit 1 = 8-bit 2 = UCS2 If unset, defaults to 7-bit unless a UDH is defined, which sets coding to 8-bit.Number[O]
validityIf given, Sinch will only try to send the message for this many minutes. If the destination mobile is unreachable the SMSC discards the message.Number (Minutes)[O]
deferredIf given, the message will be postponed to be delivered at now plus this many minutesNumber (Minutes)[O]
dlr-maskRequest for delivery reports with the state of the sent message. The value is a bit mask composed of: 1 = Delivered to phone 2 = Non-delivered to Phone 4 = Queued on SMSC 8 = Delivered to SMSC 16 = Non-delivered to SMSC. If you want multiple report types, you simply add the values together. For example, if you want to get delivery (1) and non-delivery (2) you set the dlr-mask value to 3 (1+2). If given, dlr-url must be given as well.Number (bit mask)[O]
dlr-urlIf dlr-mask is given, this is the URL to be fetched. (Must be url-encoded)String (url)[O]
pidSets the PID value [2]. For example, a SIM Toolkit message would use something like the following: &pid=127&coding=2&alt-dcs=1&mclass=3Number[O]
alt-dcsIf unset, 0X per default. 1= uses FX. 2 = force 0XNumber[O]
idA user provided identity of the message. If DLR is requested it will be possible to have this user provided identity included in the DLR-URL. Maximum length of this field is 32 bytes.String[O]

O = Optional

M = Mandatory

DLR-URL Escape Codes

Escape codesDescription
%tThe time the message was sent, formatted as YYYY-MM-DD HH:MM , example, 2021–09–21+14:18:00.
%TThe time the message was sent, in UNIX epoch timestamp format.
%pThe phone number of the sender of the SMS message.
%PThe phone number of the received of the SMS message.
%qLike %p, but a leading 00 is replaced with +.
%QLike %P, but a leading 00 is replaced with +.
%dThe delivery report type value (check dlr-mask in chapter 2).
%AThe delivery report SMSC reply, if any.
%iThe message identity.
%IThe user provided identity for this message; the id provided via id parameter in sendsms request.
%eThe error code of the SMS delivery.
%sThe status of the SMS delivery. Following statuses can be returned: UNDELIV DELIVRD ENROUTE DELETED EXPIRED, or UNKNOWN.
%uThe done date, formatted as as YYYY–MM–DD HH:MM, example, “1999–09–21 14:18”.
%UThe done date, in UNIX epoch timestamp format.
%mThe MCC + MNC of the receiver for the SMS message.

Time zone

Sinch SMSC uses UTC (Coordinated Universal Time).

Response Format

Message Accepted

All requests that are correct will be accepted. The SMS server responds with status HTTP/1.1 202 and a message ID as content.

Test case with correct settings:

Correct Settings

$ curl -v “http://sms1.clxnetworks.net:3800/sendsms?username=user&password=pass&from=CLX&to=46700 123456&text=Test”
* About to connect() to sms1.clxnetworks.net port 3800 (#0)
*           Trying 93.158.78.4… connected
* Connected to sms1.clxnetworks.net (93.158.78.4) port 3800 (#0)
> GET /sendsms?username=user&password=pass&from=CLX&to=46700123456&text=Test HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Host: sms1.clxnetworks.net:3800
> Accept: */*
>
< HTTP/1.1 202 Accepted
< Date: Tue, 9 Nov 2010 12:38:58 +0100
< Content-Length: 32
< Content-Type: text/plain; charset=ISO-8859-1
* Connection #0 to host sms1.clxnetworks.net left intact
* Closing connection #0
12c306e85bc5d9e4e52211c741e21277

Message rejected

All requests that are failing get a corresponding HTTP status code and also a fail message as content.

Test case with wrong settings - “mclass=123”

Wrong Settings

$ curl -v “http://sms1.clxnetworks.net:3800/sendsms?username=user&password=pass&from=CLX&to=46700 123456&mclass=123&text=Test”
* About to connect() to sms1.clxnetworks.net port 3800 (#0)
*           Trying 93.158.78.4… connected
* Connected to sms1.clxnetworks.net (93.158.78.4) port 3800 (#0)
> GET /sendsms?username=user&password=pass&from=CLX&to=46700123456&mclass=123&text=Test HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Host: sms1.clxnetworks.net:3800
> Accept: */*
>
< HTTP/1.1 400 Bad Request - server could not understand request
< Date: Tue, 9 Nov 2010 12:42:41 +0100
< Content-Length: 20
< Content-Type: text/plain; charset=ISO-8859-1
<
* Connection #0 to host sms1.clxnetworks.net left intact
* Closing connection #0
Invalid mclass value

Error Codes

Error Message (as content)HTTP Status 1Code
Not acceptable 3NOT_ACCEPTABLE406
Method not allowed, use GETMETHOD_NOT_ALLOWED405
Query missingBAD_REQUEST400
Syntax errorBAD_REQUEST400
User/Password parameter missing in the request (Basic Authorization isn't used)NON_AUTHORITATIVE_INFORMATION203
Account not foundUNAUTHORIZED401
Originator IP address isn't authorizedUNAUTHORIZED401
Account blockedPAYMENT_REQUIRED402
Incorrect passwordUNAUTHORIZED401
Account throttledTEMPORARY_REDIRECT307
From number missingBAD_REQUEST400
Charset not supportedBAD_REQUEST400
From number blockedFORBIDDEN403
To number missingBAD_REQUEST400
To number blockedFORBIDDEN403
User data header incorrectly formattedBAD_REQUEST400
User data header too longBAD_REQUEST400
Message ID parameter not foundBAD_REQUEST400
Invalid codingBAD_REQUEST400
Invalid coding valueBAD_REQUEST400
Invalid mclassBAD_REQUEST400
Invalid mclass valueBAD_REQUEST400
Invalid alt-dcsBAD_REQUEST400
Invalid alt-dcs valueBAD_REQUEST400
Invalid parameter combination, alt-dcs can only be set to 1 in conjunction with mclassBAD_REQUEST400
Invalid parameter combination, alt-dcs can't be set to 1 when coding is UCS2BAD_REQUEST400
Invalid mwiBAD_REQUEST400
Invalid mwi valueBAD_REQUEST400
Invalid parameter combination, mwi can only be set with 7bit codingBAD_REQUEST400
Invalid parameter combination, mclass and mwi can't coexistBAD_REQUEST400
Invalid validityBAD_REQUEST400
Invalid validity valueBAD_REQUEST400
Invalid deferredBAD_REQUEST400
Invalid deferred valueBAD_REQUEST400
Invalid pidBAD_REQUEST400
Invalid pid valueBAD_REQUEST400
Invalid dlr-maskBAD_REQUEST400
Invalid dlr-mask valueBAD_REQUEST400
Invalid parameter combination, dlr-url set but no dlr-maskBAD_REQUEST400
Invalid dlr-url lengthBAD_REQUEST400
Invalid dlr-url, can't find / after domainBAD_REQUEST400
Invalid dlr-url, invalid port valueBAD_REQUEST400
Invalid dlr-url, unknown hostBAD_REQUEST400
Invalid parameter combination, dlr-mask set but no dlr-urlBAD_REQUEST400
Text too long to fit in one SMS and auto concat not allowedBAD_REQUEST400
Text and udh too long to fit in one SMSBAD_REQUEST400
Incorrect binary coding of text, should be example %01%a0%34BAD_REQUEST400
Binary text plus idh too long to fit in one SMSBAD_REQUEST400
Charset UTH-16BE not supportedBAD_REQUEST400
UCS2 text plus udh too long to fit in one SMSBAD_REQUEST400
Unknown errorBAD_REQUEST400

Examples

Basic Configuration

VariableValue
http-API URLhttp://sms1.clxnetworks.net:3800/sendsms
usernameuserX
passwordpassX
fromTest
to123456
message“Hello world”
dlr-mask31
dlr-urlhttp://your.host.com/dlr.php?type=%25d&dr-msg=%25A

Example 1 - Submit text message

Submit Text Message

http://sms1.clxnetworks.net:3800/sendsms?username=userX&password=passX&from=test&to=123456&text=Hello+world

(Content of the message must be URL encoded)

Variable / ValuesComment
http://sms1.clxnetworks.net:3800/sendsmshttp-API URL
username=userXSet username to userX
password=passXSet password to passX
from=testSet originator to test
to=123456Set MSISDN to 123456
text=Hello+worldSet message content to “Hello world”
dlr-mask=7Set dlr-mask to 7 (see How dlr-mask works for further explanations)
dlr-url=http%3a%2f%2fyour.host.com%2fdlr.php%3ftype%3d%25d%26dr-%c2%admsg%3d%25ASet the url where delivery reports will be sent and which values. Must be URL encoded (see How dlr-url works for further explanations)

Example 2 - Submit text message with delivery report

Submit text message with delivery report

http://sms1.clxnetworks.net:3800/sendsms?username=userX&password=passX&from=test&to=123456&text=Hello+world&dlr-mask=7&dlr-url=http%3a%2f%2fyour.host.com%2fdlr.php%3ftype%3d%25d%26dr-%c2%admsg%3d%25A
Value (decimal)Description
1Delivered to phone
2Non-Delivered to phone
4Queued on SMSC
8Delivered to SMSC
16Non-Delivered to SMSC

If you want multiple report types, simply add the values together. For example, to get delivery success and/or failure, set the dlr-mask value to 7 (1+2+4).

Enter the URL where you want the dlr request to be sent example:

Example

http://your.host.com/dlr.php

Then add what type of dlr-url escape codes you which to receive.

Escape codes
%tThe time the message was sent, formatted as YYYY-MM-DD HH:MM.
%TThe time the message was sent, in UNIX epoch timestamp format.
%pThe phone number of the sender of the SMS message.
%PThe phone number of the receiver of the SMS message.
%qLike %p, but a leading ‘00’ is replaced with ‘+’.
%QLike %P, but a leading ‘00’ is replaced with ‘+’.
%dThe delivery report type value (check dlr-mask for more information)
%AThe delivery report SMSC reply, if any.

Example

type=%d&dr-msg=%A

One example of a delivery report received: (Note that the delivery report is url-encoded)

Delivery Report Received

/dlr.php?type=1&dr-msg=id%3A128fc8d26225d9e4e52097f4249028b7%2Bsub%3A001%2Bdlvrd%3A001
%2Bsubmit%2Bdate%3A1006030843%2Bdone%2Bdate%3A1006030843%2Bstat%3ADELIVRD
%2Berr%3A000%2Btext%3A%2B%2B%2B%2B%2B%2B%2B%2B%2B%2B%2B%2B
%2B%2B%2B%2B%2B%2B%2B%2B

The delivery report decoded:

Delivery Report Decoded

/dlr.php?type=1&dr-msg=id:128fc8d26225d9e4e52097f4249028b7+sub:001+dlvrd:001+submit
+date:1006030843+done+date:1006030843+stat:DELIVRD+err:000
+text:++++++++++++++++++++

Example 3 - Submit flash message

Example

http://sms1.clxnetworks.net:3800/sendsms?username=userX&password=passX&from=test&to=123456&text=Hello+world&alt-dcs=1&mclass=0
Variable / ValuesComment
http://sms1.clxnetworks.net:3800/sendsmshttp-API URL
username=userXSet username to userX
password=passXSet password to passX
from=testSet originator to test
to=123456Set MSISDN to 123456
text=Hello+worldSet message content to “Hello world”
alt-dcs=1Uses FX
mclass=0Sends the message directly to display

Parameter “mclass” sets the Message Class in DCS field.

mclass=0Sends the message directly to display
mclass=1Sends to mobile
mclass=2Sends to SIM
mclass=3Sends to SIM Toolkit

Parameter “alt-dcs”:

  • If unset, 0X per default
  • If equals to 1, uses FX
  • If equals to 2, force 0X

Example 4 - Submit UCS2 message

Content not URL-Encoded:

Not URL-Encoded

http://sms1.clxnetworks.net:3800/sendsms?username=userX&password=passX&from=test&to=123456&text=??????+???&coding=2

Content URL-Encoded:

URL-Encoded

http://sms1.clxnetworks.net:3800/sendsms?username=userX&password=passX&from=test&to=123456&text=%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82%20%D0%BC%D0%B8%D1%80&coding=2
Variable / ValuesComment
http://sms1.clxnetworks.net:3800/sendsmshttp-API URL
username=userXSet username to userX
password=passXSet password to passX
from=testSet originator to test
to=123456Set MSISDN to 123456
text=Hello+worldSet message content to “Hello world”
alt-dcs=1Uses FX
mclass=0Sends the message directly to display

Parameter “coding” sets the coding scheme bits in DCS field.

coding=07-bit
coding=18-bit
coding=2UCS2

If unset, it defaults to 7-bit unless a UDH is defined, which sets coding to 8-bit.

Inbound SMS HTTP

Destination URI

To receive the MO message, Sinch needs a URL that specifies where the messages should be sent. The URL will be passed as HTTP1.1 GET request. Sinch needs:

  • Hostname
  • Port
  • URL: Use escape codes when construct the URL

URL escape codes

Escape codesDescription
%tThe time the message was sent, formatted as YYYY-MM-DD HH:MM.
%TThe time the message was sent, in UNIX epoch timestamp format.
%pThe MO number.
%PThe phone number of the sender.
%qLike %p, but a leading 00 is replaced with +.
%QLike %P, but a leading 00 is replaced with +.
%AThe short message content.
%uudh of incoming message.
%C1MCC + MNC of the sender for the SMS message. (Short codes only).

Example

This URL will pass the MO message to the http server "mo.yourdomain.net" on tcp port 5000. The example script to receive and parse the request is "yourGetMo.php." Sinch will escape the destination MSISDN to variable "msisdn," originator address to variable "originator" and the message to variable "msg."

The URL to use:

URL to use

http://mo.yourdomain.net:5000/yourGetMo.php?originator=%q&msisdn=%P&msg=%A

Message Error Specification

Overview

This specification covers error codes related to the HTTP communication.

Messages states

A message will always be in one of the following states:

Message stateValueDescription
ENROUTE1Message is in the process of being sent to the destination
Delivered2Message has been delivered to destination
EXPIRED3Message validity period has expired
DELETED4Message has been deleted
UNDELIVERABLE5Message is undeliverable
UNKNOWN7Message is in invalid state

Status reports error codes

The following are the error codes Sinch Networks will be sending:

ErrorError ClassDescriptionCommentTreated as
0NO ERRORNo error / Unknown errorTemporary
1ROUTING ERRORInternal routing errorReport to SinchPermanent
2ROUTING ERRORInternal routing errorReport to SinchPermanent
3ROUTING ERRORInternal routing errorReport to SinchPermanent
4ROUTING ERRORInternal routing errorReport to SinchTemporary
5ROUTING ERRORInternal routing errorReport to SinchPermanent
6ROUTING ERRORInternal routing errorReport to SinchPermanent
7ROUTING ERRORInternal routing errorReport to SinchPermanent
8ROUTING ERRORInternal routing errorReport to SinchPermanent
9ROUTING ERRORUnsupported number planPermanent
10ROUTING ERRORUnsupported type of numberPermanent
11ROUTING ERRORMessage not deliverPermanent
12ROUTING ERRORDialling zone not foundPermanent
13ROUTING ERRORNot home zone and IMSI not allowedPermanent
14ROUTING ERRORNot home zone and IMSI fetch failedTemporary
15SCREENING ERRORScreening blockPermanent
16SCREENING ERRORTerminating IMSI blockedPermanent
17ROUTING ERRORDestination network type unknownPermanent
18ESME ERRORESME errorTemporary
19SCREENING ERROROriginating location mismatchPermanentPermanent
40INTERNAL ERRORInternal errorReport to SinchTemporary
50INTERNAL ERRORInternal errorReport to SinchTemporary
51INTERNAL ERRORInternal errorReport to SinchTemporary
52INTERNAL ERRORInternal errorReport to SinchTemporary
53INTERNAL ERRORInternal errorReport to SinchPermanent
54INTERNAL ERRORInternal errorReport to SinchPermanent
55INTERNAL ERRORInternal errorReport to SinchPermanent
60SCREENING ERRORError, originator blockedPermanent
61SCREENING ERRORError, destination blockedPermanent
62SCREENING ERRORError, keyword blockedPermanent
63SCREENING ERRORError, SC address blockedPermanent
64SCREENING ERRORError, blocked due to exceeded quotaPermanent
65SCREENING ERRORError, loop detectedPermanent
66SCREENING ERRORError, data coding scheme blockedPermanent
67SCREENING ERRORError, information element identifier blockedPermanent
70ESME ERRORInternal errorReport to SinchTemporary
71ESME ERRORInternal errorReport to SinchTemporary
72ESME ERRORInternal errorReport to SinchPermanent
73ESME ERRORInternal errorReport to SinchTemporary
74ESME ERRORInternal errorReport to SinchTemporary
75ESME ERRORInternal errorReport to SinchTemporary
76ESME ERRORInternal errorReport to SinchTemporary
77ESME ERRORIMSI lookup blockedPermanent
100SMSC ERRORUnidentified SubscriberPermanent
101SMSC ERRORFacility not supportedTemporary
102SMSC ERRORSystem failureTemporary
103SMSC ERRORUnexpected data valuePermanent
104SMSC ERRORData missingPermanent
105SMSC ERROREquipment protocol errorPermanent
106SMSC ERRORUnknown service centre addressTemporary
107SMSC ERRORService centre congestionTemporary
108SMSC ERRORInvalid short message entity addressPermanent
109SMSC ERRORSubscriber not service centre subscriberTemporary
110SMSC ERRORRejectIndicates temporary problem or lost reachPermanent
111SMSC ERRORLocal CancelIndicates temporary problem or lost reachTemporary
112SMSC ERRORAbortIndicates temporary problem or lost reachTemporary
113SMSC ERRORException (internal)Report to SinchPermanent
114SMSC ERRORUnknown errorTemporary
150HLR ERRORUnknown subscriberMessage is rejected because there is no directory number for the mobile subscriberPermanent
151HLR ERRORCall barredMessage is rejected due to barring of the MSPermanent
152HLR ERRORTeleservice not provisionedMessage is rejected because the recipient MS has no SMS subscriptionPermanent
153HLR ERRORAbsent subscriberTemporary
154HLR ERRORFacility not supportedThe message is rejected due to no provision of the SMS in the VPLMNPermanent
155HLR ERRORSystem failureMessage rejected due to network or protocol failureTemporary
156HLR ERRORUnexpected data valuePermanent
157HLR ERRORData missingPermanent
158HLR ERRORMemory capacity exceededMessage rejected because the MS doesn’t have enough memoryTemporary
159HLR ERRORMobile subscriber not reachableTemporary
160HLR ERRORRejectIndicates temporary problem or lost reachPermanent
161HLR ERRORLocal CancelIndicates temporary problem or lost reachTemporary
162HLR ERRORAbortIndicates temporary problem or lost reachTemporary
163HLR ERRORException (internal)Report to Sinch (Local error)Permanent
164HLR ERRORUnknown errorTemporary
200MSC ERRORUnidentified subscriberTemporary
201MSC ERRORAbsent subscriber, IMSI detachedSubscriber is absent and have been for a period of timeTemporary
202MSC ERRORAbsent subscriber, no page responseThe message is rejected because there was no paging responseTemporary
203MSC ERRORSubscriber busy for MT SMSThe message is rejected because of congestion encountered at the visited MSCTemporary
204MSC ERRORFacility not supportedThe message is rejected due to no provision of the SMS in the destination SIMPermanent
205MSC ERRORIllegal subscriberMessage rejected because of failed authenticationPermanent
206MSC ERRORIllegal equipmentMessage rejected because the MS was black-listedPermanent
207MSC ERRORSystem failureMessage rejected due to network or protocol failureTemporary
208MSC ERRORUnexpected data valuePermanent
209MSC ERRORData missingPermanent
210MSC ERRORMemory capacity exceededMessage rejected because the MS doesn’t have enough memoryTemporary
211MSC ERROREquipment protocol errorTemporary
212MSC ERROREquipment not short message equippedTemporary
213MSC ERRORRejectIndicates temporary problem or lost reachPermanent
214MSC ERRORLocal CancelIndicates temporary problem or lost reachTemporary
215MSC ERRORAbortIndicates temporary problem or lost reachTemporary
216MSC ERRORException (internal)Report to SinchPermanent
217MSC ERRORUnknown errorTemporary
250SCREENING ERRORError, personal service barring, MO Personal Determined Barring White ListPermanent
251SCREENING ERRORError, personal service barring, MO Personal Determined Barring Black ListPermanent
252SCREENING ERRORError, personal service barring, MO Operator Determined Barring White ListPermanent
253SCREENING ERRORError, personal service barring, MO Operator Determined Barring Black ListPermanent
254SCREENING ERRORError, personal service barring, MT Personal Determined Barring White ListPermanent
255SCREENING ERRORError, personal service barring, MT Personal Determined Barring Black ListPermanent
256SCREENING ERRORError, personal service barring, MT Operator Determined Barring White ListPermanent
257SCREENING ERRORError, personal service barring, MT Operator Determined Barring Black ListPermanent
280SM external control.Indicates internal network problem.Temporary
300ESME EXTERNAL ERRORInvalid destination addressPermanent
301ESME EXTERNAL ERRORInvalid destination numbering planPermanent
302ESME EXTERNAL ERRORInvalid destination type of numberPermanent
303ESME EXTERNAL ERRORInvalid destination flagPermanent
304ESME EXTERNAL ERRORInvalid number of destinationsPermanent
310ESME EXTERNAL ERRORInvalid source addressPermanent
311ESME EXTERNAL ERRORInvalid source numbering planPermanent
312ESME EXTERNAL ERRORInvalid source type of numberPermanent
320ESME EXTERNAL ERRORESME Receiver permanent errorPermanent
321ESME EXTERNAL ERRORESME Receiver reject errorPermanent
322ESME EXTERNAL ERRORESME Receiver temporary error
330ESME EXTERNAL ERRORInvalid command lengthPermanent
331ESME EXTERNAL ERRORInvalid service typePermanent
332ESME EXTERNAL ERRORInvalid operationPermanent
333ESME EXTERNAL ERROROperation not allowedPermanent
334ESME EXTERNAL ERRORInvalid parameterPermanent
335ESME EXTERNAL ERRORParameter not allowedPermanent
336ESME EXTERNAL ERRORInvalid parameter lengthPermanent
337ESME EXTERNAL ERRORInvalid optional parameterPermanent
338ESME EXTERNAL ERROROptional parameter missingPermanent
339ESME EXTERNAL ERRORInvalid validity parameterPermanent
340ESME EXTERNAL ERRORInvalid scheduled delivery parameterPermanent
341ESME EXTERNAL ERRORInvalid distribution listPermanent
342ESME EXTERNAL ERRORInvalid message classPermanent
343ESME EXTERNAL ERRORInvalid message lengthPermanent
344ESME EXTERNAL ERRORInvalid message referencePermanent
345ESME EXTERNAL ERRORInvalid number of messagesPermanent
346ESME EXTERNAL ERRORInvalid predefined messagePermanent
347ESME EXTERNAL ERRORInvalid priorityPermanent
348ESME EXTERNAL ERRORInvalid replace flagPermanent
349ESME EXTERNAL ERRORRequest failedPermanent
350ESME EXTERNAL ERRORInvalid delivery report requestTemporary
360ESME EXTERNAL ERRORMessage queue fullTemporary
361ESME EXTERNAL ERRORExtenal errorReport to SinchTemporary
362ESME EXTERNAL ERRORExtenal errorReport to SinchTemporary
370ESME EXTERNAL ERRORCan't find informationTemporary
399ESME EXTERNAL ERRORUnknownTemporary