Get started

    API Endpoint

        https://api.ithsmspro.com/api/
                

ITHSMSPRO PRO est une solution d'envoi de message court (sms) en temps réel et différé qu'il faut pour vos activités. C'est une solution simple, rapide et légère. L'api de ITHSMSPRO PRO est un RESTFUL API qui vous permet d'envoyer des sms via votre application (web, mobile, etc.). Après chaque envoi, vous avez la possibilité d'accéder à l'historique des rapports d'envoi et à vos données de facturation soit directement sur la plateforme ou via l'API.

Création de compte: Pour commencer, vous devez d'abord créer un compte sur ITHSMSPRO PRO si vous ne l'avez pas déjà fait. Rendez-vous ici pour créer votre compte. Une fois le compte créé, un email vous est automatiquement envoyé contenant le lien de validation de votre compte. Dès que vous valider votre compte, vous pouvez vous connecter sur ITHSMSPRO PRO avec vos identifiants créés. Vous disposez d'un solde initial à la création pour faire vos premiers tests d'envois de sms soit sur la plateforme ou via l'API.

Création d'une clé d'API: Avant de commencer à faire vos envois via l'api, vous devez d'abord générer votre clé d'envoi. Pour ce faire, connectez-vous sur ITHSMSPRO PRO avec les identifiants de votre compte. Aller dans la rubrique développeur. Vous y trouverez la clé de l'api associée à votre compte ITHSMSPRO PRO. C'est cette clé que vous utiliserez pour l'envoi des sms plus tard.

Intégration de l'API


                                      function MessageSend($from, $to, $message, $type, $dlr){
$url = "https://api.ithsmspro.com/api/v1/sms/send"; //url du serveur $apiKey = 'GxAtSMBzwMIlWQMr3QFYTPmx3aGfdUSP'; //remplacez par votre api key $clientId = "1"; //Remplacez par votre client Id $curl = curl_init();
$smsData = array(
'from' => $from, //l'expediteur
'to' =>''.$to.'', //destination au format international sans "+" ni "00". Ex: 22890000000 'type' => $type, //type de message text et flash 'message' => $message, //le contenu de votre sms 'dlr' => $dlr // 1 pour un retour par contre 0
); $ch = curl_init($url); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_HTTPHEADER, array("APIKEY: " . $apiKey, "CLIENTID:" . $clientId)); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $smsData); $result = curl_exec($ch); curl_close($ch); return $result; }

Vous pouvez utiliser curl ou la librairie guzzle pour vos envois à l'aide d'une requête http post.
https://api.ithsmspro.com/api/v1/sms/send



Result example :
result: { "messageId": "587854667", "sender": "ITHSMSPRO", "to": "23562481369", "message": 'hello!', "route": "TD(AIRTEL)", "type": "0", "drl": "1", "sms_count": 1, "amount": 10, "Currency": "XOF", "status": "ACT" }

QUERY PARAMETERS

Field Type Description
APIKEY String Your API key. (Headers)
CLIENTID String Your client id (HEADERS)
From (parameters) String(max caracters 11) sender/expediteur (parameters)
to (parameters) Phone number recipient/destinataire (format internationnal Ex: 22890000000)
type (parameters) integer Type d'sms(plain/text, flash... voir rubrique type sms)
message (parameters) string Le contenu de votre sms
dlr (parameters) string (yes ou no)
url (parameters) url Url de votre dlr

type sms

Value description
0 Plain Text (GSM 3.38 Character encoding)
1 Flash Message (GSM 3.38 Character encoding)

Appendix A: message statuses

Code Description
ABSAbsent Suscriber
ACTMessage accepted into ITHSMSPRO PRO server
BLODestination mobile number blocked by Telecom or by ITHSMSPRO PRO on Client request
BUFMessage has been queued at the gateway for delivery at a later time (delayed delivery)
DLADelivered by Alert App
DLGMessage received by gateway
DLVConfirmation of receipt on the handset of the recipiend
DUPDuplicate Message received from client
ERDAn error occurred delivering the message to the handset
EXPMessage has expired, could not be delivered
INFAffiliate is not configured in the client's profile
INVNetwork is unknown or can not be reached
IPRIn process at ITHSMSPRO PRO
IPVRemote IP is not registered
ITMIntermediate
LENMessage too long
MAPDaily maximum reached at Provider
MAXDaily maximum reached
NCRThe client did not subscribe to this network
NPZNetwork Price not configured
NRCNo Receipt Confirmation from Telecom
NSFThe message cannot be delivered due to a lack of funds in your account. Please re-purchase credits
PACTNotification Accepted into the system
PAPPDelivered to the KingAlert mobile notification system

Vérifier son solde

Vous pouvez vérifier solde à partir d'une requête http post:
Endpoint: https://api.ithsmspro.com/api/v1/account/details

Field type
APIKEY Headers
CLIENTID Headers

SMS TRACE


                                      function smsTrace($messageId){
$url = "https://api.ithsmspro.com/api/v1/sms/trace"; //url du serveur $apiKey = 'GxAtSMBzwMIlWQMr3QFYTPmx3aGfdUSP'; //remplacez par votre api key $clientId = "1"; //Remplacez par votre client Id $curl = curl_init();
$smsData = array(
'messageId' => $messageId, // id du message
); $ch = curl_init($url); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_HTTPHEADER, array("APIKEY: " . $apiKey, "CLIENTID:" . $clientId)); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $smsData); $result = curl_exec($ch); curl_close($ch); return $result; }

Vous pouvez vérifier le statut d'un sms à partir d'une requête http post et l'id du message:
Endpoint: https://api.ithsmspro.com/api/v1/sms/trace


Result example :
result: { "messageId": "587854667", "sender": "ITHSMSPRO", "destination": "23562481369", "route": "TD(AIRTEL)", "status": "ACT" }
Field type
APIKEY Headers
CLIENTID Headers
messageId parameter

SMS REPORTS


                                      function smsReport($date_start, $date_end, $type){
$url = "https://api.ithsmspro.com/api/v1/sms/reports"; //url du serveur $apiKey = 'GxAtSMBzwMIlWQMr3QFYTPmx3aGfdUSP'; //remplacez par votre api key $clientId = "1"; //Remplacez par votre client Id $curl = curl_init();
$smsData = array(
'date_start' => $date_start,
'date_end' => $date_end, 'type' => $type
); $ch = curl_init($url); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_HTTPHEADER, array("APIKEY: " . $apiKey, "CLIENTID:" . $clientId)); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $smsData); $result = curl_exec($ch); curl_close($ch); return $result; }

Vous pouvez demander des rapports à partir d'une requête http post:
Endpoint: https://api.ithsmspro.com/api/v1/sms/reports

Field type
APIKEY Headers
CLIENTID Headers
date_start parameter(format: YYYY-mm-dd)
date_end parameter(format: YYYY-mm-dd)
type parameter(integer: 1- platform reports, 2-Api reports)