Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Before you begin

...

Submits a message object for delivery to a mobile phone. Set Content-Type: application/json in your request header and POST a JSON object with the following properties:

Parameter

Data type

Description

source

String

Required. This is the source number from where the message should be sent. The format is depending on the specified sourceTON.

sourceTON

TON

This is the source type of number. See allowed TON values below. 
Default ALPHANUMERIC.

destination

String

Required. This is the destination number. The format is depending on the specified destinationTON. Remember that MSISDNS include the country code and a leading plus sign. (+)

destinationTON

TON

This is the destination type of number. See allowed TON values below. 
Default MSISDN.

dcs

DCS

Advanced.

This is the Data Coding Scheme that should be used when sending the SMS. See allowed DCS values in a separate table. 
Default TEXT.

userDataHeader

String

Advanced.

This value may be specified when sending concatenated SMS, WAP-push, etc. The format is hex encoded 8-bit bytes. More information about valid UDH for long SMS may be given by Support upon request. Common will handle the splitting and concatenation of messages if you do not have a specific reason to do it yourself.

userData

String

This is the message content itself. The DCS specifies the format (encoding) on this value.

Note that messages that messages of more than 140 bytes must be split into multiple messages. Common will do that automatically by default.

useDeliveryReport

Boolean

True indicates that a delivery report should be sent back when the message has come to a final state. (Delivered or failed)

TRUE is mandatory for premium messages.

Defaults to TRUE, and it is recommended to use delivery reports.

deliveryReportGates

List
<String>

One or more gates that should be used for sending delivery reports. If you do not specify any Gates to deliver Delivery Reports to, make sure to set useDeliveryReport to FALSE. See the chapter on delivery reports for more information. Required for premium messages.

relativeValidityTime

Long

This specifies how long the message is supposed to live. If the message takes longer to deliver to the handset than the validityTime, the message will be discarded.

The value is specified in milliseconds.

Default is 48 hours (172800000).

absoluteValidityTime

Date

The absolute time when a message should expire. Minimum 15 minutes and maximum 48h in the future. Formatted according to RFC3339, e.g. 2010-03-30T12:59:40+02:00. Overrides relativeValidityTime if both are set.

tariff

Integer

Price, in local currency, in 1/100 of currency. For example, to send a message costing 5 NOK, this should be set to 500.

If you are splitting a long message into multiple segments yourself, set price only on the first segment.

Default 0.

currency

Currency

The currency should be set if the default country currency not to be used. Supported currencies are NOK, SEK, DKK, EUR, LTL.
Ignored for non-premium messages.

vat

Integer

Deprecated - implementations should not use this field any more.

The VAT that used for the premium transaction, default differ per market. 2500 equals 25%. Absence or value = -1 means not set.
Ignored for non-premium messages.

age

Integer

Allowed age for (adult) content.
Optional. Not supported by all operators.

priority

Priority

See the Priority value table, Optional. 

platformId

String

Your platformId. Provided to you by Support.

platformPartnerId

String

Your platformPartnerId. Provided to you by Support.

refId

String

Your own internal transaction ID. Not used for anything except as a reference.
Optional. 

productDescription

String

When sending premium messages, a description of the service. This will be printed on the end-user’s phone bill.
Ignored for non-premium messages.

productCategory

Integer

When sending premium messages, specify which category the service is. This lets the operator know which rates to apply to the message. Support or your sales contact will help you determine the correct productCategory to set.
Ignored for non-premium messages.

moReferenceId

String

A reference to the ID of the MO message which triggered the MT message. Required for some operators.

customParameters

KeyValue

Advanced. Additional parameters may be specified if needed.

Support will advise you if you need to use custom parameters.

ignoreResponse

Boolean

Indicates whether you want a response in the body when you submit the message. This is not a delivery report, only a confirmation of message submission. 

Default is false.

DCS

Data Coding Scheme sets the encoding used for the message. Default and recommended is TEXT.

...

https://[your assigned URL]/sms/sendbatch

batchSendRequest

Parameter

Data type

Description

useDeliveryReport

Boolean

True indicates that a delivery report should be sent back when the message has come to a final state. (Delivered or failed)

TRUE is mandatory for premium messages.

Defaults to TRUE, and it is recommended to use delivery reports.

deliveryReportGates

List
<String>

One or more gates that should be used for sending delivery reports. If you do not specify any Gates to deliver Delivery Reports to, make sure to set useDeliveryReport to FALSE. See the chapter on delivery reports for more information. Required for premium messages.

relativeValidityTime

Long

This specifies how long the message is supposed to live. If the message takes longer to deliver to the handset than the validityTime, the message will be discarded.

The value is specified in milliseconds.

Default is 48 hours (172800000).

absoluteValidityTime

Date

The absolute time when a message should expire. Minimum 15 minutes and maximum 48h in the future. Formatted according to RFC3339, e.g. 2010-03-30T12:59:40+02:00. Overrides relativeValidityTime if both are set.

priority

Priority

See the Priority value table, optional.

platformId

String

Your platformId. Provided to you by Support.

platformPartnerId

String

Your platformPartnerId. Provided to you by Support.

customParameters

KeyValue

Advanced. Additional parameters may be specified if needed.

Support will advise you if you need to use custom parameters.

ignoreResponse

Boolean

Indicates whether you want a response in the body when you submit the message. This is not a delivery report, only a confirmation of message submission. 

Default is true.

sendRequestMessages

List
<sendRequestMessage>

An array of messages. The maximum number of messages allowed within the array is 1000. See the following table for its content.

sendRequestMessage

Parameter

Data type

Description

source

String

Required. This is the source number from where the message should be sent. The format is depending on the specified sourceTON.

sourceTON

TON

This is the source type of number. See allowed TON values below. 
Default ALPHANUMERIC.

destination

String

Required. This is the destination number. The format is depending on the specified destinationTON. Remember that MSISDNS include the country code and a leading plus sign. (+)

destinationTON

TON

This is the destination type of number. See allowed TON values below. 
Default MSISDN.

dcs

DCS

Advanced.

This is the Data Coding Scheme that should be used when sending the SMS. See allowed DCS values in a separate table. 
Default TEXT.

userDataHeader

String

Advanced.

This value may be specified when sending concatenated SMS, WAP-push, etc. The format is hex encoded 8-bit bytes. More information about valid UDH for long SMS may be given by Support upon request. Common will handle the splitting and concatenation of messages if you do not have a specific reason to do it yourself.

userData

String

This is the message content itself. The DCS specifies the format (encoding) on this value.

Note that messages that messages of more than 140 bytes must be split into multiple messages. Common will do that automatically by default.

tariff

Integer

Price, in local currency, in 1/100 of currency. For example, to send a message costing 5 NOK, this should be set to 500.

If you are splitting a long message into multiple segments yourself, set price only on the first segment.

Default 0.

currency

Currency

The currency should be set if the default country currency not to be used. Supported currencies are NOK, SEK, DKK, EUR.
Ignored for non-premium messages.

vat

Integer

Deprecated - implementations should not use this field anymore.

The VAT that used for the premium transaction, default differ per market. 2500 equals 25%. Absence or value = -1 means not set.
Ignored for non-premium messages.

age

Integer

Allowed age for (adult) content.
Optional. Not supported by all operators.

refId

String

Your own internal transaction ID. Not used for anything except as a reference.
Optional. 

productDescription

String

When sending premium messages, a description of the service. This will be printed on the end-user’s phone bill.
Ignored for non-premium messages.

productCategory

Integer

When sending premium messages, specify which category the service is. This lets the operator know which rates to apply to the message. Support or your sales contact will help you determine the correct productCategory to set.
Ignored for non-premium messages.

The acceptable productCategory values are specified under productCategory values.

moReferenceId

String

A reference to the ID of the MO message which triggered the MT message. Required for some operators.

customParameters

KeyValue

Advanced. Additional parameters may be specified if needed.

Support will advise you if you need to use custom parameters.

These additional parameters are overridden by those that are in the batchSendRequest.

productCategory values

Product categories defined by SERGEL:

Value

Description

1

CPA_REGULAR_RINGTONES

2

CPA_REGULAR_RINGBACK_TONES

3

CPA_REGULAR_MUSIC_FULL_TRACK

4

CPA_REGULAR_WALLP_ANIM

5

CPA_REGULAR_VIDEOS

6

CPA_REGULAR_NEWS

7

Not in use

8

CPA_REGULAR_LOTTERY

9

Not in use

10

CPA_REGULAR_VOTING

11

CPA_REGULAR_MOBILE_MARKETING

12

Not in use

13

Not in use

14

CPA_REGULAR_COMMUNITY

15

CPA_REGULAR_INFO_SERVICE

16

CPA_REGULAR_MIXED_CONTENT

17

GAS_CHARITY

18

GAS_CONCERT_TICKETS

19

GAS_MEMBERSHIP_FEE

20

GAS_PHYSICAL_GOODS_NON_FOOD

21

MEDIA_CPA_INTERNET_TV

22

MEDIA_CPA_INTERNET_FILM

23

MEDIA_CPA_E_BOOK

24

MEDIA_CPA_E_MAGAZINE

25

MEDIA_CPA_E_NEWSPAPER

26

Not in use

27

CPA_REGULAR_OTHER

28

GAS_CINEMA_TICKETS

29

GAS_BOOK

30

GAS_MUSIC_CD

31

GAS_MAGAZINE

32

GAS_ACCESS_FEE_SPORTS

33

GAS_ZERORATED_SMS

34

GAS_CLASSIFIED_ADS

35

GAS_CLASSIFIED_ADS_ABOVE_PRICE_200

36

Note: --- NOT TO BE USED ----

37

MANUAL_SERVICES

38

PHYSICAL_GOODS_FOOD_DRINK

39

TRANSPORT_BUS

40

TRANSPORT_TRAIN

41

HEALTH_SERVICES

42

PARKING

43

AUTOMATIC NUMBER DIRECTORY SERVICES

44

ALERT SERVICES

45

INFORMATION SERVICES

46

MEDIA

47

MEMBERSHIP_COMMERCIAL

48

FISHING_LICENSE

49

GIFT_CERTIFICATE

50

MANUAL_SERVICE_REGISTERED

51 

CINEMA_TICKET 

52

ROADTAX

53

NON_HUMANITARIAN_DONATIONS

...

Strex productCategory values

The list of valid Strex business models: Strex Payment, Transport, Donation, Media, Information Services, Automatic Number Directory Service, Mobile Content Services, Mobile Content Services 18+, Alert Services, Voting.

Note: SERGEL CommonLayer product categories do not use these Strex business models:  Media, Information Services, Automatic Number Directory Service, Alert Services.

Value

Description

Strex service code

Strex business model

1

CPA_REGULAR_RINGTONES

03001

MOBILECONTENTSERVICES

2

CPA_REGULAR_RINGBACK_TONES

03002

MOBILECONTENTSERVICES

3

CPA_REGULAR_MUSIC_FULL_TRACK

03002

MOBILECONTENTSERVICES

4

CPA_REGULAR_WALLP_ANIM

03004

MOBILECONTENTSERVICES

5

CPA_REGULAR_VIDEOS

03007

MOBILECONTENTSERVICES

6

CPA_REGULAR_NEWS

02001

MOBILECONTENTSERVICES

7

Not in use

N/A

N/A

8

CPA_REGULAR_LOTTERY

03012

MOBILECONTENTSERVICES

9

Not in use

N/A

N/A

10

CPA_REGULAR_VOTING

04002

VOTING

11

CPA_REGULAR_MOBILE_MARKETING

02001

MOBILECONTENTSERVICES

12

Not in use

N/A

N/A

13

Not in use

N/A

N/A

14

CPA_REGULAR_COMMUNITY

03011

MOBILECONTENTSERVICES

15

CPA_REGULAR_INFO_SERVICE

04001

MOBILECONTENTSERVICES

16

CPA_REGULAR_MIXED_CONTENT

03011

MOBILECONTENTSERVICES

17

GAS_CHARITY

14002

DONATION

18

GAS_CONCERT_TICKETS

05010

STREX-PAYMENT

19

GAS_MEMBERSHIP_FEE

14001

STREX-PAYMENT

20

GAS_PHYSICAL_GOODS_NON_FOOD

15001

STREX-PAYMENT

21

MEDIA_CPA_INTERNET_TV

16001

STREX-PAYMENT

22

MEDIA_CPA_INTERNET_FILM

16002

STREX-PAYMENT

23

MEDIA_CPA_E_BOOK

16003

STREX-PAYMENT

24

MEDIA_CPA_E_MAGAZINE

16004

STREX-PAYMENT

25

MEDIA_CPA_E_NEWSPAPER

16005

STREX-PAYMENT

26

Not in use

N/A

N/A

27

CPA_REGULAR_OTHER

02001

INFORMATIONSERVICES

28

GAS_CINEMA_TICKETS

05010

STREX-PAYMENT

29

GAS_BOOK

15001

STREX-PAYMENT

30

GAS_MUSIC_CD

15001

STREX-PAYMENT

31

GAS_MAGAZINE

15001

STREX-PAYMENT

32

GAS_ACCESS_FEE_SPORTS

13003

STREX-PAYMENT

33

GAS_ZERORATED_SMS

89001

STREX-PAYMENT

34

GAS_CLASSIFIED_ADS

08001

STREX-PAYMENT

35

GAS_CLASSIFIED_ADS_ABOVE_PRICE_200

08001

STREX-PAYMENT

36

Note: --- NOT TO BE USED ----

NA

STREX-PAYMENT

37

MANUAL_SERVICES

02001

STREX-PAYMENT

38

PHYSICAL_GOODS_FOOD_DRINK

10001

STREX-PAYMENT

39

TRANSPORT_BUS

06002

TRANSPORT

40

TRANSPORT_TRAIN

06001

TRANSPORT

41

HEALTH_SERVICES

07001

STREX-PAYMENT

42

PARKING

06005

TRANSPORT

43

AUTOMATIC NUMBER DIRECTORY SERVICES

16008

AUTOMATICNUMBERDIRECTORYSERVICE

44

ALERT SERVICES

02001

ALERTSERVICES

45

INFORMATION SERVICES

02001

INFORMATIONSERVICES

46

MEDIA

16005

MEDIA

47

MEMBERSHIP_COMMERCIAL

14004

STREX-PAYMENT

48

FISHING_LICENSE

13001

STREX-PAYMENT

49

GIFT_CERTIFICATE

09001

STREX-PAYMENT

50

MANUAL_SERVICE_REGISTERD

13006

STREX-PAYMENT

52

ROADTAX

06007

TRANSPORT

...

In the case of batch sendings, this value can be added within the batchSendRequest or within the SendRequestMessage. But if this customParameter is added within the batchSendRequest, then it will override its value for all the messages within this single batchSendRequest.

Example 1

Here, all the messages will be sent as flash sms, even if the flash.sms customParameter is found with the value “false”within a sendRequestMessage:

...

"userData": "Hello world, second message",

"refId": "qts883r"

}

]

}


Example 2

Here, the first message will be sent as a flash SMS, meanwhile the second one and the third one will be sent as normal SMS. This will work if the customParameter “flash.sms” is absent in the batchSendRequest.

...

Please be aware that when you use the obfuscate function, you are not able to search in message logs for destination number or message content.

Obfuscation Example

Example for “obfuscate.userData” Image Removed

"customParameters" : { "obfuscate.userData" : "true" }

Example for “obfuscate”Image Removed

"customParameters" : { "obfuscate" : "true" }

Delivery Reports

When an MT message is delivered to a handset, or fails for any reason, you will receive a callback with a delivery report. This is required for charged messages, optional (but recommended) for free messages. If the message is multi-part message, then it will get a delivery report for each part. It can be sent in JSON, XML, or HTTP GET/POST key/value pairs. If you want to change your format or your URL, please contact Support.

...

The most common result code is 1001 Delivered. This code indicates a successful delivery (and payment, if charged) of the message. Most statuses are final, indicating that the message either has been successfully delivered, or failed in a non-recoverable way.

resultCode

Description

Transaction State

0

Unknown error

FINAL: NOT DELIVERED, NOT BILLED*

1

Temporary routing error

FINAL: NOT DELIVERED, NOT BILLED*

2

Permanent routing error

FINAL: NOT DELIVERED, NOT BILLED*

3

Maximum throttling exceeded

FINAL: NOT DELIVERED, NOT BILLED*

4

Timeout

FINAL: UNKNOWN DELIVERY, UNKNOWN BILLING*

5

Operator unknown error

FINAL: UNKNOWN DELIVERY, UNKNOWN BILLING*

6

Operator error

FINAL: NOT DELIVERED, NOT BILLED*

104

Configuration error

FINAL: NOT DELIVERED, NOT BILLED*

105

Internal error (internal SERGEL error)

FINAL: NOT DELIVERED, NOT BILLED*

1000

Sent (to operator)

TEMP: NOT DELIVERED, NOT BILLED*

1001

Billed and delivered

FINAL: DELIVERED, BILLED* (if applicable)

1002

Expired

FINAL: NOT DELIVERED, NOT BILLED*

1003

Deleted

FINAL: NOT DELIVERED, NOT BILLED*

1004

Mobile full

FINAL: NOT DELIVERED, NOT BILLED*

1005

Queued

TEMP: NOT DELIVERED, NOT BILLED*

1006

Not delivered

FINAL: NOT DELIVERED, NOT BILLED*

1007

Delivered,  Billed delayed

TEMP: DELIVERED, NOT BILLED*

1008

Billed OK (charged OK before sending message)

TEMP: NOT DELIVERED, BILLED*

1009

Billed OK and NOT Delivered

FINAL: NOT DELIVERED, BILLED*

1010

Expired, generated by SERGEL

FINAL: UNKOWN DELIVERY, UNKNOWN BILLING*

1011

Billed OK and sent (to operator)

TEMP: NOT DELIVERED, BILLED*

1012

Delayed (temporary billing error, system will try to resend)

TEMP: NOT DELIVERED, NOT BILLED* (resending)

1013

Message sent to operator, Bill delayed

TEMP: NOT DELIVERED, NOT BILLED*

2000

Invalid source, the specified source number or Alpha is invalid

FINAL: NOT DELIVERED, NOT BILLED*

2001

Source shortnumber not supported, the source TON may not be set to shortnumber

FINAL: NOT DELIVERED, NOT BILLED*

2002

Source alpha not supported, the source TON may not be set to alpha

FINAL: NOT DELIVERED, NOT BILLED*

2003

Source MSISDN not supported, the source TON may not be set to MSISD

FINAL: NOT DELIVERED, NOT BILLED*

2100

Destination shortnumber not supported, the destination TON may not be set to shortnumber

FINAL: NOT DELIVERED, NOT BILLED*

2101

Destination alpha not supported, the destination TON may not be set to alpha

FINAL: NOT DELIVERED, NOT BILLED*

2102

Destination MSIDN not supported, the destination TON may not be set to MSISDN

FINAL: NOT DELIVERED, NOT BILLED*

2103

Operation blocked, requested operation is not supported for the specified destination

NOT DELIVERED, NOT BILLED*

2104

Unknown subscriber

FINAL: NOT DELIVERED, NOT BILLED*

2105

Destination blocked (subscriber permanently barred)

FINAL: NOT DELIVERED, NOT BILLED*

2106

Number error

FINAL: NOT DELIVERED, NOT BILLED*

2107

Destination temporarily blocked (subscriber temporarily barred)

FINAL: NOT DELIVERED, NOT BILLED*

2200

Charging error

FINAL: NOT DELIVERED, NOT BILLED*

2201

Subscriber has low balance

FINAL: NOT DELIVERED, NOT BILLED*

2202

Subscriber barred for overcharged (premium) messages

FINAL: NOT DELIVERED, NOT BILLED*

2203

Subscriber too young (for this particular content)

FINAL: NOT DELIVERED, NOT BILLED*

2204

Prepaid subscriber not allowed

FINAL: NOT DELIVERED, NOT BILLED*

2205

Service rejected by subscriber

FINAL: NOT DELIVERED, NOT BILLED*

2206

Subscriber not registered in payment system

FINAL: NOT DELIVERED, NOT BILLED*

2207

Subscriber has reached max balance

FINAL: NOT DELIVERED, NOT BILLED*

3000

GSM encoding is not supported

FINAL: NOT DELIVERED, NOT BILLED*

3001

UCS2 encoding is not supported

FINAL: NOT DELIVERED, NOT BILLED*

3002

Binary encoding is not supported

FINAL: NOT DELIVERED, NOT BILLED*

4000

Delivery report is not supported

FINAL: NOT DELIVERED, NOT BILLED*

4001

Invalid message content

FINAL: NOT DELIVERED, NOT BILLED*

4002

Invalid tariff

FINAL: NOT DELIVERED, NOT BILLED*

4003

Invalid user data

FINAL: NOT DELIVERED, NOT BILLED*

4004

Invalid user data header

FINAL: NOT DELIVERED, NOT BILLED*

4005

Invalid data coding

FINAL: NOT DELIVERED, NOT BILLED*

4006

Invalid VAT

FINAL: NOT DELIVERED, NOT BILLED*

4007

Unsupported content for destination

FINAL: NOT DELIVERED, NOT BILLED*

*BILLED, NOT BILLED & UNKNOWN BILLING Transaction state indicates the state when sending premium SMS.

...