0% found this document useful (0 votes)
503 views14 pages

Infinito Unified API Guide v1

Uploaded by

Ahmed Taman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
503 views14 pages

Infinito Unified API Guide v1

Uploaded by

Ahmed Taman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

INFINITO

Unified API
Integration Guide

1
2

Table of Contents
Overview of Service ........................................................................................................................ 3
Character Set Support .................................................................................................................... 3
Message Length ............................................................................................................................. 3
End Point (URL) ............................................................................................................................. 4
Supported Authentication Methods ................................................................................................. 4
API sample using query parameters ............................................................................................... 5
API Sample using JSON payload ................................................................................................... 5
Extended Parameters ..................................................................................................................... 8
Submission Status Codes ............................................................................................................. 10
DLR URL ...................................................................................................................................... 12
DLR Status Codes ........................................................................................................................ 13
3

Overview of Service

Infinito provides an open HTTPS and JSON standard-based API for


integrating SMS capabilities into any application or an enterprise
system. This API is specially designed for sending one-to-one as
well as bulk messages through server-to-server communication and
provides single authentication for multiple messages and target
numbers.

Character Set Support

GSM network supports GSM character set. Other than this Infinito
HTTPS API supports sending messages in Unicode using Unicode-
16 Big-Ending and UTF-8 format.

Message Length

If a message is sent whose length is longer than permitted


characters limit, it shall be counted as multiple messages, however,
will be delivered on handset as a single message.
▪ For standard Latin character set 160 characters per SMS is
supported. If SMS text is longer than160 characters,
messages shall be calculated in multiples of 153 characters.
▪ For Unicode messaging (non-English) only 70 characters per
SMS is supported. If Unicode SMS text is longer than 70
characters, messages shall be calculated in multiples of 67
characters.
4

End Point (URL)

▪ https://api.goinfinito.me/unified/v2/send
▪ https://meapi.goinfinito.me/unified/v2/send

This endpoint supports submission using query parameters


(HTTPS API call) and JSON payload.

Supported Authentication Methods

1. Header
Send client id and password using x-client-id and x-client-
password headers
x-client-id: VFClientc6a31cf8dae
x-client-password: vwr46h499lloeyj9873kduwq
2. Query Parameters
Works with Query parameter API call
clientid=[xxxxxxxxxx]&clientpassword=[xxxxxxxxxx]
3. Basic Auth
Client id: VFClientc6a31cf8dae
Client Password: vwr46h499lloeyj9873kduwq
Generate Concatenated string:
VFClientc6a31cf8dae:vwr46h499lloeyj9873kduwq
Create Base64 encoded string:
QWxhZGRpbjpvcGVuU2VzYW1luyywe687RYlOD56HAY671
Send the encoded string using Authorization header
parameter
5

Authorization: Basic
QWxhZGRpbjpvcGVuU2VzYW1luyywe687RYlOD56HAY671
4. Bearer Token
Token:
QWxhZGRpbjpvcGVuU2VzYW1luyywe687RYlOD56HAY671
Send the Token string using Authorization header parameter
Authorization: Bearer
QWxhZGRpbjpvcGVuU2VzYW1luyywe687RYlOD56HAY671

API sample using query parameters

{EndPointURL}?clientid=[xxxxxxxxxx]&clientpassword=[xxxxxxxxxx]
&to=[xxxxxxxxxx]&from=[xxxxxxxxxx]&dlr-
url=[xxxxxxxxxx]&category=[xxxxxxxxxx]&text=[xxxxxxxxxx]
Sample Responses:
Success:
guid=km68c2931604a1f1400007bk6sABHISHEKPY&mobilenumbe
r=XXXX&statuscode=0&statustext=Success
Failure:
guid=km68e4711159a1f140000fd1yqABHISHEKPY&mobilenumber
=XXXX&statuscode=28682&statustext=Invalid Mobile Number
guid=km68e4802368a1f140000lvg3fABHISHEKPY&mobilenumber
=XXXX&statuscode=28680&statustext=Invalid Sender ID

API Sample using JSON payload

{
"apiver": "1.0",
"sms": {
"ver": "2.0",
"dlr": {
6

"url": ""
},
"messages": [
{
"udh": "0",
"text": "This is a test SMS",
"property": 0,
"id": "1",
"addresses": [
{
"from": "INFINITO",
"to": "XXXX",
"seq": "1",
"tag": "Clients optional information"
}
]
}
]
}
}

Sample Responses:
Success:

{
"status": "Success",
"statuscode": 200,
"statustext": "OK",
"messageack": {
"guids": [
{
"guid": "km7lf1242336a1f130010j766vSAMREEN9T0",
"submitdate": "2022-07-21 15:12:42",
"id": "1"
}
]
}
}
Failure:
7

{
"status": "Error",
"statuscode": 57090,
"statustext": "User Credit Expired"
}

.....................................................................

{
"status": "Success",
"statuscode": 200,
"statustext": "OK",
"messageack": {
"guids": [
{
"guid": "kl3a8194512311f442000x61t7",
"submitdate": "2021-03-10 08:19:45",
"id": "id105",
"errors": [
{
"errorcode": 28682,
"errortext": "Invalid ReceiverId",
"seq": "seqid112"
}
]
}
]
}
}
Following are the required parameters:

Parameter Description
clientid Client ID for authentication
clientpassword Client Password for authentication
to Recipient number.
8

from Sender Number or ID. Sender ID should be


a 11 characters long alpha-numeric sender
ID.
text Text that needs to be sent on mobile
handset.

Extended Parameters
Following are the extended parameters that are supported by the
Infinito HTTPS API. Please note that all variables are in small case.
Variable Type Description
Name
charset String Charset of text message. Used to convert
to a format suitable for
7 bits or to UCS-2. Defaults to WINDOWS-
1252 if coding is 7bits and UTF-16BE if
coding is UCS-2.
udh String Optional User Data Header (UDH) part of
the message.
User-defined data header. The data header
is used for long messages as well as
sending binary content. If you need to send
message to specific port (for j2me
application to receive), you may specify the
information in udh parameters.
Must be URL encoded.
mclass Number Optional. Sets the Message Class in DCS
field. Accepts
Values between 0 and 3, for Message
9

Class 0 to 3, A value of 0 sends the


message directly to display, 1 sends to
mobile, 2 to SIM and 3 to SIM toolkit.
mwi Number Optional. Sets Message Waiting Indicator
number bits in DCS field. If given, the message will
be encoded as a Message Waiting
Indicator. The accepted values are 0, 1, 2
and 3 for activating the voice, fax, email and
other indicator or 4, 5, 6, 7 for deactivating,
respectively. This option excludes the flash
Option.
compress Number Optional. Sets the Compression bit in DCS
Field.
coding Number Optional. Sets the coding scheme bits in
DCS field. Accepts values 0 to 2, for 7bit,
8bit or UCS-2. If unset, defaults to 7 bits
unless a UDH is defined, which sets coding
to 8bits.
dlr-mask Number Optional. Request for delivery reports with
(bit the state of
mask) the sent message. The value is a bit mask
composed
of:
1: Delivered to phone,
2: Non-Delivered to Phone,
4: Queued on SMSC,
10

8: Delivered to SMSC,
16: Non-Delivered to SMSC.
Must set dlr-url on sendsms-user group or
use the dlr
url CGI variable.
dlr-url String Optional. Specify the path on which
URL Delivery report need to be returned. This is
a path on your server, which shall be called
in when a delivery report is received from
the Operator against an outgoing message.
(Must be url-encoded)
alt-dcs Number Optional. If unset, Kannel uses the alt-dcs
defined on
SMSC configuration or 0X per default. If
equals to 1,
uses FX.
If equals to 0, force 0X.
rpi Number Optional. Sets the Return Path Indicator
(RPI) value.
(See ETSI Documentation).
priority Number Optional. Sets the Priority value (Range 0-
number 3 is allowed).

Submission Status Codes

Following is the list of status codes, returned at the time of


submission:
11

Status Status Text


Code
0 Successfully Delivered
28673 International Termination Not
Allowed
28674 Empty Mobile Number
28675 Empty Sender ID
28676 Non-compliant Message
28676 Template Mismatch
28677 Invalid UDH Value
28678 Invalid Coding Value
28679 Empty TEXT
28680 Invalid Sender ID
28681 Duplicate Message
28682 Invalid Mobile Number
28683 Invalid Parameter Value
28684 Invalid SMS Data
28685 Invalid Address Data
28686 Restricted Content
28687 SMS Dropped
28688 SMS Dumped
28689 Subscriber Opted Out
28690 Empty Email Address
28692 Invalid Split
28693 Invalid opt out String
52992 Username Password Incorrect
12

52996 Invalid Authorization Token


57089 Contract Validity Lapsed
57090 User Credit Lapsed
57091 User Disabled
57092 User Validity Lapsed
57093 Authorization Token Disabled
65280 Service Temporary Unavailable
65535 Invalid Payload Format
65536 JSON Invalid
65537 Invalid Payload Request
28703 Invalid DLT Content Type

DLR URL

Customer can use following sample URL for receiving the DLR:

Sample DLR URL:


https://abc.com?TO=%p&FROM=%P&TIME=%t&MESSAGE_STA
TUS=%d&REASON_CODE=%2&DELIVERED_DATE=%3&STATU
S_ERROR=%4&CLIENT_GUID=%5&CLIENT_SEQ_NUMBER=%6
&MESSAGE_ID=%7&TEXT_STATUS=%13&SUBMIT_DATE=%14
&MSG_STATUS=%16

Encoded dlr-url parameter will be:


https%3A%2F%2Fround-lake.dustinice.workers.dev%3A443%2Fhttps%2Fabc.com%3FTO%3D%25p%26FROM%3D%25
P%26TIME%3D%25t%26MESSAGE_STATUS%3D%25d%26REA
SON_CODE%3D%252%26DELIVERED_DATE%3D%253%26STA
TUS_ERROR%3D%254%26CLIENT_GUID%3D%255%26CLIENT
_SEQ_NUMBER%3D%256%26MESSAGE_ID%3D%257%26TEX
T_STATUS%3D%2513%26SUBMIT_DATE%3D%2514%26MSG_
STATUS%3D%2516
13

Following table depicts the parameter values to be passed to get


the corresponding values
Sample Parameter Valu Sample Responses
Names es
TO %p 966512345678
971512345678
FROM %P INFINITO
TIME %t 21-07-2022 15:28
MESSAGE_STAT %d 1
US
REASON_CODE 2% 0
DELIVERED_DA 3% 21-07-2022 15:30
TE
STATUS_ERROR 4% 8448
CLIENT_GUID 5% kh5ng551155213b161011bme3v
TESTUSER
CLIENT_SEQ_N 6% Value as Submitted
UMBER
MESSAGE_ID 7% h5ng551155313946013uw3
CIRCLE 8% Unknown
OPERATOR 9% SaudiArabia_STC
UnitedArabEmirates_Du
TEXT_STATUS 13% Success
SUBMIT_DATE 14% 21-07-2022 15:26
MSG_STATUS 16% Delivered
DLR Status Codes
Following is the list of status codes, returned from Operator at the
time of delivery:
14

Status Code Status Text


000 Successfully Delivered
001 Invalid number
002 Absent subscriber
003 Memory capacity exceeded
004 Mobile equipment error
005 Network error
006 Barring
007 Invalid sender ID
008 Dropped
009 NDNC failed
100 Misc. Error

You might also like