Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation)

Similar documents
Bulk HTTP API Specification

SMS Outbound. HTTP interface - v1.1

SMS Outbound. SMTP interface - v1.1

Forthnet Mobile Platform - groupsms http interface v1.0 1 / 9

SMS Submit Interface description HTTP Version 1.5

Wired 2 Wireless Technology Solutions API Help Document Copyright Introduction. 2. Parameter list

LINK Mobility SMS REST API MT and Delivery Reports Version 1.3; Last updated September 21, 2017

Response: Note: Please define Dynamic Value in ##Field## The following are the parameters used: For Unicode Message:

All requests must be authenticated using the login and password you use to access your account.

Quriiri HTTP MT API. Quriiri HTTP MT API v , doc version This document describes the Quriiri HTTP MT API version 1 (v1).

HTTP API-HELP DOCUMENT

SMS-Bulk Gateway HTTP interface

NIC SMS SERVICE INTEGRATION

API Documentation. Release Version 1 Beta

Message parameter details

HTTP Specification Version 1.83

Gatesms.eu Mobile Solutions for Business

HTTP API. Table of Contents

SMS HTTP API DOCUMENTATION December 2012

HTTP API - HELP DOCUMENT

SMS Relay. API Documentation SPLIO - SPRING Contact and Campaign SMS Relay API - EN v1.2.docx

Cloud SMS API Guide. Version 5.1

Quick Answers. You may create any Sender ID for the transactional route, provided the Sender ID should be of 6 alpha characters only.

Mobile forensics. SMS (Short Message Service) EMS, MMS, CBS

cellip CELLIPS SMS INTERFACE DESCRIPTION HTTP GET INNEHÅLLSFÖRTECKNING

Revision: 50 Revision Date: :43 Author: Oliver Zabel. GTX Mobile Messaging SMS Gateway Interface Simple HTTP API Manual

InterCallTXT TextOnline User Guide

text2reach2 SMS API Sep 5, 2013 v1.1 This document describes application interface (API) between SMS service provider (SP) and SMS gateway (SMSGW).

Quick help quide to GSM PDU mode structure

Integration Guide Xura Messaging HTTP-Interface

Technical Guide. REST API for Mobile Outbound SMS

Way2mint SMS Mobile Terminate (MT) API Guide for HTTP / HTTPS

XML API SMS GATEWAY. Issue 2.0 Dec XML API

PROFESSIONAL SMS APP CENTER USER MANUAL

SMS API User Guide. Document Reference: October Version: 6

Integration Guide Xura Messaging SMTP- Interface

version 2.0 HTTPS SMSAPI Specification Version 1.0 It also contains Sample Codes for -.Net - PHP - Java

PCCW mobile SMS Web Access 2.0 User Guide

API Spec Sheet For Version 2.5

HTTP API Specification V2.7

HLR Lookup Service (Release 1.1.0)

Overview Introduction Messaging Error Codes Message parameter details Contact Details... 7

Reseller Web Site Instructions Manual

SMPP Gateway Manual. SMPP Gateway Manual Page 1

SMPP Gateway Manual. Route Mobile Limited. (Document version 1.5)

ezeesms URL API Documentation

Accella Toolbar. User Guide. Release 20.0

In order to create your proxy classes, we have provided a WSDL file. This can be located at the following URL:

Instructions for Using New API. Instructions for Using New API

MyMobileAPI. mymobileapi.com. Windows Service Usage

Way2mint SMS Mobile Terminate (MT) API Guide for HTTP HTTPS

@msecnet / Bogdan ALECU

API-SMS HTTP/GET Interface Ref Push SMS, Balance, ACKs. April 18, 2017 v1.12

Web Services User Guide

RouteMobile Mobile Client Manual for Android Version: 2.0

Quenbec inc # henri bourassa H3L-3N3 Montreal, QC,Canada Toll free: Mobile

Redrabbit Cloud-based Communications Platform SMS APIs

mvaayoo API Ver 1.2.0

SMS Driver User Guide. Technical Document. AX 3.x.108 SMS Driver User Guide. Dec 13, Dec 13, 2017

msolutions Messenger Customization Options

1. Overview Account Configuration Details... 3

Telephony Toolbar Enterprise. User Guide

API Integration Document

Dynmark Messaging Platform XML HTTP Interface Quick Start Guide. Draft Revision September

USER GUIDELINES. Q 2. Is it necessary to configure password retrieval question and answer? How can I do that? Q 3. How can I change password?

Contents Overview... 3 Steps to run an Excel Add-In Setup:... 4 Add-Ins LOGIN SEND SMS Send Text or Flash Sms... 1

Diafaan SMS Server 4.1 Manual Diafaan communication software

SMS API - Web Services with SSL SHA2 HMAC Version 1.7

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies

WE POWER YOUR MOBILE WORLD FTP INTEGRATION MANUAL

Request for Comments: 1154 Prime Computer, Inc. April 1990

TraiTel Telecommunications. TTMessenger 4.xx. User Manual

SMS4BD Gateway Integration

Setting Up HTML Message Notification, page 8 Configuring HTML-based Message Notification, page 16 Notifications Subject Line Format, page 18

BulkSMS Marketo Gateway

Send SMS v.3. Compatibility Switch 13 update 1 and higher.

Sendroid Ultimate. User Manual

1 Virtual Terminal Quick Reference Guide. Virtual Terminal Quick Reference Guide. Getting Started

2. Phonebook P Import phonebook P Export phonebook P Buddy List P Your Status P Buddy List Settings P.

Before you start! : 1. It is important to know some things code, before starting the deal with this file.

Table of Contents 1 AQL SMS Gateway How to Guide...1

Front Gateway Product Description for the connection between the SMS gateway and customer

Cisco Encryption

New Dashboard - Help Screens

Google Search Appliance

Extended sms2 API Documentation

USING SatTerm SOFTWARE WITH SMS APPLICATION NOTE

Telenor Corporate Call & SMS. API Documentation

HTTP Based Unified API

AUGUST CommPortal GUIDE

WAM!NET Submission Icons. Help Guide. March 2015

ERMES. Technical Specification for ex MPAY services integration. version /10/2018

SMS Pro/Billing Pro. Interface specification. Version 3.0.1

Excel-SMS Enotified. Excel-SMS Help Manual

HTTP Interface API. for SMS Services. Version 2. Claude ICT Poland Sp. z o. o.

Content Filters. Overview of Content Filters. How Content Filters Work. This chapter contains the following sections:

4PSA VoipNow Core Reseller's Guide. Copyrights Rack-Soft Inc. VoipNow is a registered trademark of Rack-Soft Inc.

Bidder FAQ s and Tips

Mobile Client. User Manual. Version: 2.0.0

Contents. Protus Messaging Services User Guide Web Fax Merge

Transcription:

Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation)

Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation) Table of Contents Part I Introduction 1 1 Features... 1 2 Minimum requirements... 1 3 Support... 1 Part II Quick start: Example flow 1 Part III Send SMS 2 1 Parameters... 2 2 Message types... 3 Text... 4 Long SMS... 4 Binary... 4 Unicode... 5 3 Return value... 5 Successful... request 5 Failed request... 5 Out of credit... 6 Part IV Delivery reports 6

1 1 Introduction Introduction This is a technical guide describing how to send SMS and receive delivery reports by integrating with Cellsynt's SMS gateway using a simple HTTP interface. The interface has been developed to provide a quick and easy way to get started with SMS using technologies and knowledge most developers possess. Cellsynt's SMS gateway is a reliable, flexible and scalable gateway which in an easy way enables development of simple as well as advanced SMS services supporting all kinds of message types. 1.1 Features Communication via a simple HTTP interface (quick and easy to get started) Possibility to send SMS to multiple recipients in a single HTTP request Support for all types of messages Delivery reports 1.2 Minimum requirements Programming knowledge in a suitable programming language which is able to handle HTTP communication (e.g. ASP.NET, Java, Perl, PHP, Python, Ruby or similar) Delivery reports require a public webserver available over the Internet to receive the reports via HTTP communication 1.3 Support If questions or problems arise which cannot be answered by this manual please e-mail us on support@cellsynt.com or call our office at +46 8 525 09 700. To help us provide you with fast and accurate service please include as many details as possible, for example: Account (username) Detailed description of issue Time it occurred (together with time zone) Message originator and destination(s) Possible error messages/logs 2 Quick start: Example flow 1. A message is sent to UK mobile number 07920-110 000 with the text "Testing 123" and originator "Demo". The following HTTP GET request is made: username=demo&password=test123&destination=00447920110000&type=text&charset=utf- 8&text=Testing%20123&originatortype=alpha&originator=Demo 2. The following unique reference (trackingid) is received from the web server's response value: OK: 92dff27302b754424242fb204620dc18 3. Delivery reports are configured for the account to URL https://example.org/delivery-receipts The message gets delivered to the mobile phone and the following HTTP GET request is made: https://example.org/delivery-receipts? trackingid=92dff27302b754424242fb204620dc18&status=delivered&destination=0044792 0110000

2 Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation) 3 Send SMS Sending SMS is done by making a HTTP GET- or POST request. There is no difference in which method you choose but under certain circumstances, such as sending messages to larger amounts of numbers, HTTP POST is recommended because of technical limitations in the length of a HTTP GET query string. HTTP requests should be made to the following URL: https://se-1.cellsynt.net/sms.php For compatibility reasons we also support requests via http, i.e. non-encrypted connections, but for your security we always recommend using https whenever possible. The interface accepts parameters according to the table below. All parameter values should by default be supplied in character encoding ISO-8859-1 (Latin-1) but also UTF-8 is accepted if you specify it using the charset parameter. 3.1 Parameters Parameter Mandatory Description username X Your username (received when account is setup). password X Your password to use together with the username for authentication (received when account is setup). destination X Recipient's telephone number on international format with leading 00 followed by country code, e.g. 00447920110000 for UK number 07920 110 000 (max 17 digits in total). To send the same message to multiple recipients, separate numbers with comma. Max 25000 recipients per HTTP request. text (X) Text that should be sent. Max 160 characters (longer can be sent, see Long SMS) (Parameter text is mandatory as long as parameter type is not set. This is because type's default value is text). charset originatortype originator Character set text and other data is sent as in the HTTP request. Possible values: ISO-8859-1 (default) and UTF-8. Controls the originator type the message should be sent with. Possible values: numeric, shortcode and alpha. Identifier which will be visible on recipient's mobile phone as originator of the message. Allowed values and function depends on parameter originatortype's value according to below: numeric Numeric value (max 15 digits) with telephone number on international format without leading 00 (example UK number 07920 110 000 should be set as 447920110000). Receiving mobile phone will add a leading + sign and thus see the originator as a normal mobile phone number (+447920110000). Therefore it is also possible to reply to the message. shortcode Numerical value (max 15 digits). Used to set a shortcode in an operator network as originator (i.e. will be shown without leading + sign, e.g. 72456). alpha

3 Send SMS type allowconcat expiry flash class udh pid Alphanumeric string (max 11 characters). The following characters are guaranteed to work: a-z, A-Z and 0-9. Other characters may work but functionality can not be guaranteed. Recipients can not reply to messages with alphanumeric originators. Type of message that should be sent. Possible values: text (default), binary and unicode. See more under Message types. Maximum number of SMS permitted to be linked together when needed (default value is 1, see Long SMS). Maximum value is 6 (i.e. max 153 x 6 = 918 characters). Can be used if you want to prevent a message from being delivered after a certain time, e.g. 9 PM the same evening if information thereafter is considered invalid / outdated. If message has not been delivered after the set time (e.g. mobile phone was switched off) you will get a delivery receipt with status "failed". Value should be given as a Unix timestamp. Different operators permit different allowed max values (e.g. 3 days expiry time). If a value is set that is above an operator's max allowed time it will be adjusted to the highest possible value. Value can be set to true if message should be sent as "flash message", i.e. displayed directly on phone screen instead of being saved to inbox. This is identical to setting class=0. Please note that support for flash messages cannot be guaranteed to all operator networks. If flash is not supported the message will be sent as a regular text message instead (class=1). Message class can be set to 0 (flash message), 1 (default, MEspecific), 2 (SIM-specific) or 3 (TE-specific). UDH (User Data Header) can be used to send concatenated SMS, contain formatting information, convey port numbers as a mean to cause start of an application etc. The value should be given on hexadecimal format for the corresponding bytes you wish to send (e.g. AABBCC). Protocol Identifier (specified in GSM 03.40) says how the message should be interpreted. Value should be given on hexadecimal format, e.g. 00 for a regular message and 7D (decimal 125) for a configuration message ("ME Data download"). 3.2 Message types The most common message type is a normal text message which consists of up to 160 characters, but there are also other types of messages that can be sent. Via Cellsynt's SMS gateway the message type is controlled using the HTTP parameter type. Below follows a list of available types, areas of application, possible extra data needed and HTTP request examples.

4 3.2.1 Text Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation) Used to send a normal text message. Maximum number of characters is 160. Any characters specified within character coding GSM 03.38 can be used (e.g. English, Swedish, Norwegian), for other languages / alphabets (e.g. Arabic, Japanese, Chinese) please use Unicode. username=demo&password=test123&destination=00447920110000&type=text&charset=utf- 8&text=Testing%20123 3.2.2 Long SMS Long SMS (also known as "concatenated SMS") enables sending messages exceeding 160 characters. By sending several messages that apart from the text also contain information about how to assemble them again on the receiving mobile phone you can send longer messages that to the recipient looks like one single long message. The division and re-assembly of messages is taken care of by our platform and apart from the text you want to send you only need to specify one additional parameter: allowconcat. Due to the additional information required for re-assembly each part in the long SMS can only contain 153 characters (instead of 160 characters). The numeric parameter allowconcat specifies the amount of parts a message is permitted to be split into. Max value is 6 and default value is 1 (long SMS not permitted). If you want to permit long messages to be sent at all times you can set the value of allowconcat to 6 for all messages (this lets you send up to 153 x 6 = 918 characters). If you try to send a message longer than 160 characters and allowconcat is set to 1 (default), the message will be rejected. Each part of a long SMS will be billed as one SMS. This means that if you send a text consisting of 450 characters with allowconcat set to 6 the message will fit into 3 SMS parts (maximum length for 3 SMS is 153 x 3 = 459 characters) and the cost will be the same as for 3 regular messages. username=demo&password=test123&destination=00447920110000&type=text&allowconcat= 6&charset=UTF-8&text=Lorem%20ipsum%20dolor%20sit%20amet%2C%20consectetur% 20adipisicing%20elit%2C%20sed%20do%20eiusmod%20tempor%20incididunt%20ut%20labore %20et%20dolore%20magna%20aliqua.%20Ut%20enim%20ad%20minim%20veniam%2C%20quis% 20nostrud%20exercitation%20ullamco%20laboris%20nisi%20ut%20aliquip%20ex%20ea% 20commodo%20consequat.%20Duis%20aute%20irure%20dolor%20in%20reprehenderit%20in% 20voluptate%20velit%20esse%20cillum%20dolore%20eu%20fugiat%20nulla%20pariatur.% 20Excepteur%20sint%20occaecat%20cupidatat%20non%20proident%2C%20sunt%20in% 20culpa%20qui%20officia%20deserunt%20mollit%20anim%20id%20est%20laborum. 3.2.3 Binary Binary messages can be used to send settings, business cards etc. See relevant phone manufacturer's manual for further specification on message formats available. Parameter type should be set to binary to signal that you want to send a binary message. Two parameters are needed to send the binary data: udh and data. It is not mandatory to specify both, however, at least one of them must be set. Parameter values should be specified as hexadecimal values. Both parameters must not together exceed 140 bytes = 280 characters.

5 Send SMS username=demo&password=test123&destination=00447920110000&type=binary&udh=aabbcc 001122&data=334455FF 3.2.4 Unicode Unicode messages can be used if you need to send characters not available within an ordinary text message (e.g. Arabic, Japanese). A Unicode SMS can contain maximum 70 characters per message (or 67 characters per part for a long SMS). Unicode messages are sent by setting parameter type to unicode. When sending Unicode messages, the parameter charset can be set to UTF-8 to send data in the UTF-8 character set which holds characters of most of the world's languages. Example to send text Ελλάδα (Greece in Greek): username=demo&password=test123&destination=00447920110000&type=unicode&charset=u TF-8&text=%CE%95%CE%BB%CE%BB%CE%AC%CE%B4%CE%B1 3.3 Return value In response to an HTTP request our SMS gateway gives a return value in plain text. There are two types of return values: 3.3.1 Successful request OK:<space><trackingid> A return value starting with OK: means the HTTP request and all its parameters were properly formatted and the message has been accepted for delivery. On the contrary it says nothing about the delivery of the message since that is not yet known when a message has been submitted. To get delivery status Delivery reports must be used. In the return value is also a unique reference for the message that was sent (trackingid). This value is a string consisting of up to 40 characters. OK: 92dff27302b754424242fb204620dc18 When sending long SMS you will get in return as many trackingid values comma separated as the number of parts in the message sent. Example return value for a message which has been split into three parts (word-wrapped in this document but not in reality): OK: de8c4a032fb45ae65ab9e349a8dc2458, ed6037d0fe08dd4a4ab5cdcfd5aae653,6a351ae2ef03c3c5e271adcccd140089 3.3.2 Failed request Error:<space><error message> This return value is returned when erroneous parameters have been supplied in the HTTP request. This means that an application never should be constructed to under any circumstances retry

6 Integrating with Cellsynt's SMS gateway via HTTP interface (technical documentation) sending a message which have been given Error: in return as it always indicates a permanent error. The error message returned is in plain text and indicates which parameter(s) that were missing or had faulty values. Error: Parameter destination must be set 3.3.2.1 Out of credit If your account's credit limit has been reached the following message will be returned: Error: Out of credits 4 Delivery reports Delivery reports enable you to receive information about a message's delivery status and is activated by specifying a URL in our web interface to which we then will start performing HTTP GET requests with the following parameters: Parameter trackingid status destination Description The unique message reference returned when sending a message. Current status in the operator network. For available values see table below. Recipient to which the message was sent. Possible status values: Status Category Description buffered Intermediate status The operator has not yet been able to deliver the message due to problems in the operator network or in the mobile phone (inbox full etc). Attempts are made trying to deliver the message. delivered Final status Message delivery was successful. failed Final status Message delivery failed. There is no guarantee that delivery reports will be received from operators for all sent messages. Temporary traffic peaks or technical issues in mobile networks can cause delivery reports to be delayed. All information we receive from operators will however be relayed to you immediately. You should never construct application logic to rely on delivery reports (for example re-send messages when you receive a "failed" report). Delivery reports should only be seen as an indication of a message's current delivery status.