Agile Telecom Agile Telecom
  • Products
    • SMS
    • 2 Way
    • Smart Content Verification
    • HLR Look Up
    • Testing Tool
  • Industries
    • Communications
    • Information Technology
    • Financial Services
    • Marketing
  • ATWS
  • How We Work
    • Who We Are
Sign In Contact us
Sign In Contact us

Send SMS

  • ENG – HTTP Protocol
  • ENG – SMPP Protocol
  • ITA – Protocollo HTTP
  • ITA – Protocollo SMPP

Receive SMS

  • ENG – Inbound SMS Service
  • ITA – Servizio di Ricezione SMS

Credit Check

  • ENG – SMS Credit Check
  • ITA – SMS Credit Check

Mobile Number Portability

  • ENG – Mobile Number Portability
  • ITA – Mobile Number Portability
  • Home
  • Documentation
  • Send SMS
  • ITA – Protocollo HTTP
View Categories

ITA – Protocollo HTTP

3 min read

PROTOCOLLO HTTP #

E’ possibile inviare SMS tramite HTTP Rest Api attraverso una chiamata così strutturata:

  • URL: https://secure.agiletelecom.com/services/sms/send
  • METODO: POST
  • AUTENTICAZIONE: Basic / Api-Key / OAuth1.1 (tutte nell’header)
  • BODY: JSON come da esempio qui di seguito:
{
  "globalId" : "f9b865ef-5ce3-4e44-b65c-615fd71bbd09",
  "maxIdLen" : 64,
  "enableConcatenated": true,
  "enableUnicode": true,
  "enableDelivery": true,
  "simulation": false,
  "messages":[
    {
      "destinations": ["41793026727", "417930254674"],
      "ids": ["157d541b-e0cd-4340-ac77-bc5d530dd90e", "d0f2e3c1-a043-418d-ad5e-0248184b9833"],
      "sender": "InfoSMS",
      "body": "This is a message.",
      "hexBody": false,
      "udhData": "070645670000",
      "scheduling": "2022-05-09 09:00:00.002+0200"
    },
    ...
  ]
}

Le variabili da inviare sono le seguenti:

CAMPOTIPOOBBLIGATORIODEFAULTNOTE
globalIdstringno Identificativo univoco di invio per il cliente
maxIdLenintegerno64Lunghezza massima (caratteri) degli id
enableConcatenatedbooleannotrueAbilita i concatenati se necessario
enableUnicodebooleannotrueAbilita testo in unicode
enableDeliverybooleannotrueAbilita la consegna del delivery al cliente
simulationbooleannofalseConsente la simulazione, senza reale invio del messaggio
messagesarraysi Elenco dei messaggi da inviare. Ogni messaggio può avere più destinatari.
destinationsarraysi Elenco dei destinatari di un messaggio
idsarrayno Elenco degli id relativi ai messaggi
senderstringsi Mittente dei messaggi da inviare
bodystringsi Testo dei messaggi
hexBodybooleannofalseIndica se il testo è inserito in HEX o se in normale UTF8/16
udhDatastringno Se presente indica il codice UDH da inserire nel messaggio
schedulingstringno Data di programmazione, in formato “yyyy-MM-dd HH:mm:ss.SSSZ“

La risposta sarà in formato JSON (con specifica Jsend in caso di errori):

  • 2XX (messaggio accettato dal server)
{
  "globalId": "f9b865ef-5ce3-4e44-b65c-615fd71bbd09",
  "processedMessages": 2,
  "processedSmsParts": 4,
  "credit": 10.324
}
CAMPOTIPONOTE
globalIdstringValore del globalid riportato dalla richiesta
processedMessagesintegerMessaggi accettati come da sezione messages sulla richiesta
processedSmsPartsintegerParti che verranno spedite (differisce dal precedente in caso di concatenati)
creditdoubleCredito residuo dell’account espresso in €
  • 4XX (richiesta rifiutata per errori formali nei parametri)
{
    "status": "fail",
    "data": { 
		"body": "Missing message body(ies)" 
		"number": "Wrong destination number(s)"
		
	},
	"code": 6
}
CAMPOTIPONOTE
statusstringVale sempre “fail” per gli errori 4XX
dataobject / stringContiene un elenco di chiave-valore, dove le chiavi indicano il campo da passare in ingresso e il valore indica il problema riscontrato su tale campo. Oppure una stringa che descrive il problema.
body/number/…stringSono due possibili esempi di campi passati all’API in cui siano stati riscontrati dei problemi
codeintegerCodice di errore custom. Indica la tipologia di problema secondo quanto specificato nella tabella dei codici di errore riportata successivamente
  • 5XX (richiesta non processata per errori lato server)
{
    "status": "error",
    "message": "Number check service unavailable",
	"code": 9
}
CAMPOTIPONOTE
statusstringVale sempre “error” per gli errori 5XX
messagestringDescrive il tipo di problema riscontrato lato server durante l’elaborazione della richiesta
codeintegerCodice di errore custom. Indica la tipologia di problema secondo quanto specificato nella tabella dei codici di errore riportata successivamente

Tabella dei codici di errore:

CODICEDESCRIZIONE
1Wrong credentials
2Insufficient credit
8Server error
9Server error (service timeout)
26Alias (Sender) non autorizzato
100Source IP is not allowed

HTTP Delivery #

Utilizzato da AgileTelecom per l’invio della conferma di consegna SMS ai clienti che ne hanno fatto richiesta.

I clienti riceveranno una chiamata HTTP Rest API all’URL che hanno specificato così strutturata:

  • URL: definito dal cliente
  • METODO: POST
  • AUTENTICAZIONE: nessuna
  • BODY: JSON (segue un esempio)
{ 
  "messageId": "157d541b-e0cd-4340-ac77-bc5d530dd90e", 
  "destination": "41793026727",
  "statusCode": 3,
  "description": "Delivered",
  "doneDate": "2022-05-09 09:00:05.002+0200",
  "concatTotal": 2,
  "concatProgressive": 1,
  "lcrOperator": "22210",
  "realOperator": "22201",
  "price": 0.003
}
CAMPOTIPONOTE
messageIdstringID che identifica in modo univoco per il cliente i messaggio spedito
destinationstringNumero di telefono del destinatario del messaggio spedito
statusCodeintegerCodice che identifica lo status di ricezione del messaggio1: Accepted2: Rejected3: Delivered4: Expired5: Deleted6: Undeliverable
descriptionstringDescrizione dello status
doneDatestringData relativa al delivery
concatTotalintegerNumero di parti totali in caso di messaggio concatenato
concatProgressiveintegerNumero della parte del messaggio in caso di messaggio concatenato
lcrOperatorstring(Opzionale, attivabile con parametro cliente) Operatore individuato dal servizio LCR
realOperatorstring(Opzionale, attivabile con parametro cliente) Operatore reale del numero di destinazione
pricedouble(Opzionale, attivabile con parametro cliente) Costo dell’invio
What are your Feelings
Table of Contents
  • PROTOCOLLO HTTP
  • HTTP Delivery

Via Baldassarre Peruzzi 26, 41012 – Carpi (MO)

VAT ID: IT02804070361

Agile Telecom is part of Growens

Products

SMS

2Way

Smart content verification

HLR Lookup

Testing Tool

Industries

Communications

Information Technology

Financial services

Marketing

Developers

Documentation

How we work

Our experience

Our people

Get in touch

Contact Us

Privacy Policy

Compliance

GDPR Infrastructure

Terms of Service

Private Area

AgCom Regulation