Einführung


In dieser Dokumentation finden Sie Anleitungen, wie Sie mit Hilfe der HTTP-API schnell SMS-Dienste in verschiedene Lösungen integrieren können.

Unsere API basiert auf dem REST-Standard. Um mit unserer API zu interagieren, kann jeder Client HTTP in jeder Programmiersprache verwendet werden.

Die Dokumentation ist intuitiv und mit Blick auf die Entwickler geschrieben.

Voraussetzungen


Um unsere API nutzen zu können, benötigen Sie Identifikationsinformationen. Diese werden nicht nur für die API, sondern auch für andere Dienste wie z.B. Ihren Kundenbereich verwendet.

Basis-URL


Obwohl Sie das HTTP-Protokoll verwenden können, empfehlen wir Ihnen dringend, alle Ihre Anfragen an die SMS-API-API über HTTPS zu senden, damit der Datenverkehr verschlüsselt und die Vertraulichkeit gewährleistet ist.
URL de base :

Format der Telefonnummer


Wir verwenden Zahlenformatierung E.164 die international standardisiert ist. Telefonnummern werden in der Regel mit einem + (Plus) Zeichen vorangestellt, gefolgt von der Ländervorwahl, der Netzvorwahl und der Teilnehmernummer.

Anzeige Die Telefonnummer
225 09000001

Nous n'envoyons des méssages qu'à des numéro de téléphone valide (numéros), écrit en format international par ex. 22509000001, 22377000010

Prüfen Sie die Bilanzübersicht


POST : https://de.vavasms.com/api/v1/check/balance

Einstellungen

Name Typ Beschreibung
username string die E-Mail Ihres Kontos
password string das Passwort für Ihr Konto

Beispielhafte Abfrage
                                    
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://de.vavasms.com/api/v1/check/balance",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "username=your_email&password=your_password",
  CURLOPT_HTTPHEADER => array(
    "Accept: */*",
    "Content-Type: application/x-www-form-urlencoded",
    "Host: de.vavasms.com"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
                                    
                                
                                    
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "username=your_email&password=your_password");
Request request = new Request.Builder()
  .url("https://de.vavasms.com/api/v1/check/balance")
  .post(body)
  .addHeader("Content-Type", "application/x-www-form-urlencoded")
  .addHeader("Accept", "*/*")
  .addHeader("Host", "de.vavasms.com")
  .build();

Response response = client.newCall(request).execute();
                                    
                                
                                    
var settings = {
  "async": true,
  "crossDomain": true,
  "url": "https://de.vavasms.com/api/v1/check/balance",
  "method": "POST",
  "headers": {
    "Content-Type": "application/x-www-form-urlencoded",
    "Accept": "*/*",
    "Host": "de.vavasms.com"
  },
  "data": {
    "username": "your_email",
    "password": "your_password"
  }
}
$.ajax(settings).done(function (response) {
  console.log(response);
});
                                    
                                
                                    
var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/check/balance',
  headers:
   {'cache-control': 'no-cache',
     'Host': 'de.vavasms.com',
     'Content-Type': 'application/x-www-form-urlencoded'},
  form: { username: 'your_email', password: 'your_password' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);
  console.log(body);
});
                                    
                                
                                    
import http.client

conn = http.client.HTTPConnection("https://de.vavasms.com/api")

payload = "username=your_email&password=your_password"

headers = {
    'Content-Type': "application/x-www-form-urlencoded",
    'Accept': "*/*",
    'Host': "de.vavasms.com"
    }

conn.request("POST", "v1/check/balance", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
                                    
                                

Beispiel einer Erfolgsgeschichte
                            
{
    "code": 0,
    "message": "OPERATION_SUCCES",
    "data": {
        "amount": 25540,
        "currency": "XOF"
    }
}
                            
                        

Beispiel für einen Fehlerfall
                            
{
    "code": 901,
    "message": "INVALID_CREDENTIALS",
    "description": "Identifiant de connexion incorrect",
    "data": []
}
                            
                        

NB: Der Saldo ist in XOF (XOF)


Ausgehende Nachrichten


Standardmäßig ist Ihr Benutzername Ihr SENDER_ID , aber Sie können in Ihrem Konto mehr SENDER_ID anfordern.

Eine Nachricht senden

POST : https://de.vavasms.com/api/v1/text/single

Einstellungen

Name Typ Beschreibung
username string die E-Mail Ihres Kontos
password string das Passwort für Ihr Konto
sender_id string Die Länge der alphanumerischen sender_id muss zwischen 3 und 11 Zeichen betragen (Beispiel: <code> CompanyName </ code>).
phone string Die Nummer(n) des Empfängers der Nachricht. Durch Komma getrennt, wenn Sie an mehrere Telefonnummern senden wollen
Beispiel für das Senden an einen Kontakt : 22509000001
Beispiel für das Senden an mehrere Kontakte: 22509000001,22509000002
message string Text der Nachricht, die gesendet wird.

Beispielhafte Abfrage
                                    
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://de.vavasms.com/api/v1/text/single",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number&message=your_message_here",
  CURLOPT_HTTPHEADER => array(
    "Accept: */*",
    "Content-Type: application/x-www-form-urlencoded",
    "Host: de.vavasms.com"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
                                    
                                

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number&message=your_message_here");
Request request = new Request.Builder()
  .url("https://de.vavasms.com/api/v1/text/single")
  .post(body)
  .addHeader("Content-Type", "application/x-www-form-urlencoded")
  .addHeader("Accept", "*/*")
  .addHeader("Host", "de.vavasms.com")
  .build();
Response response = client.newCall(request).execute();
                                    

var settings = {
  "async": true,
  "crossDomain": true,
  "url": "https://de.vavasms.com/api/v1/text/single",
  "method": "POST",
  "headers": {
    "Content-Type": "application/x-www-form-urlencoded",
    "Accept": "*/*",
    "Host": "de.vavasms.com"
  },
  "data": {
    "username": "your_email",
    "password": "your_password",
    "sender_id": "your_sender_id",
    "phone": "your_receiver_phone_number",
    "message": "your_message_here"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});
                                    

var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/text/single',
  headers:
   { 'Host': 'de.vavasms.com',
     'Accept': '*/*',
     'Content-Type': 'application/x-www-form-urlencoded' },
  form:
   { username: 'your_email',
     password: 'your_password',
     sender_id: 'your_sender_id',
     phone: 'your_receiver_phone_number',
     message: 'your_message_here' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);
  console.log(body);
});

                                    

import http.client

conn = http.client.HTTPConnection("vavasms.com")

payload = "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number&message=your_message_here"

headers = {
    'Content-Type': "application/x-www-form-urlencoded",
    'Accept': "*/*",
    'Host': "vavasms.com"
}

conn.request("POST", "api,v1,text,single", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
                                    

Beispiel einer Erfolgsgeschichte
        
{
    "code": 0,
    "message": "OPERATION_SUCCES",
    "data": {
        "lot_id": "LOT-20190623-1217676",
        "description": "Message envoyé avec succès",
        "message_id": [
            "SM-20190623-1217879"
        ]
    }
}
        
    

Beispiel für einen Fehlerfall
{
    "code": "901",
    "status": "INVALID_CREDENTIALS",
    "description": "Identifiant de connexion incorrect",
}
{
    "code": "902",
    "status": "INVALID_SENDER_ID",
    "description": "Le sender_id n’existe pas",
}
{
    "code": "903",
    "status": "INVALID_PHONE_NUMBER",
    "description": "Le format du numéro de téléphone est invalide",
}


Überprüfen Sie den Status einer gesendeten Nachricht

POST : https://de.vavasms.com/api/v1/check/status

Einstellungen

Name Typ Beschreibung
username string die E-Mail Ihres Kontos
password string das Passwort für Ihr Konto
message_id string Die Mesage-Kennung Ex : RMA029VA222991919
lot_id string | wahlweise Die Chargenkennung Ex : RMA029VA222991919

Beispielhafte Abfrage

Beispiel einer Erfolgsgeschichte
        
{
    "code": 0,
    "message": "OPERATION_SUCCES",
    "data": [
        {
            "lot_id": "LOT-20190617-1445425",
            "message_id": "SM-20190617-1445914",
            "status": "sent",
            "description": "Envoyé"
        }
    ]
}
        
    

Beispiel für einen Fehlerfall
{
    "code": "901",
    "status": "INVALID_CREDENTIALS",
    "description": "Identifiant de connexion incorrect",
}
{
    "code": "709",
    "message": "EXECUTION_ERROR",
    "description": "Aucun envoi existe pour ce ID",
    "data": []
}

Empfangen einer Nachricht


Benachrichtigungs-URL

Der Benachrichtigungslink ist derjenige, der von der Plattform aufgerufen wird, um Sie über den Empfang einer SMS und deren Inhalt zu informieren. Diese URL muss für das Hosten von HTTP-Anforderungen vom Typ POST verfügbar sein.
Sie müssen Ihre Benachrichtigungsurl in Ihrem Backoffice konfigurieren

Einstellungen

Name Typ Beschreibung
message_id string die Nachrichtenkennung
form string Der Absender der SMS
content string den Inhalt der Nachricht
sms_date string das Datum des Eingangs der SMS

URL de Notification

POST : https://{Ihre_Benachrichtigung_url.com}

OTP-Code: Senden und Verifizieren


Envoyer un code OTP

POST : https://de.vavasms.com/api/v1/otp/send

Einstellungen

Name Typ Beschreibung
username string die E-Mail Ihres Kontos
password string das Passwort für Ihr Konto
sender_id string La longueur du sender_id alphanumérique doit être comprise
entre 3 et 11 caractères (exemple : CompanyName).
otp_length integer La longueur de l'OTP à generer. doit être comprise entre 4 et 9
par defaut : 4.
otp_expiry integer La durée de l'OTP à verifier en minute.
par défaut : 60
phone string Le numéro de destination du message qui reçoit le code OTP.
Exemple d'envoi à un contact : 22509000001
message string Texte du message qui sera envoyé. le message doit comporter la balise ##OTP##
Par defaut, le message est : Votre code OTP est : ##OTP##

Beispielhafte Abfrage
                                    
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://de.vavasms.com/api/v1/otp/send",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number",
  CURLOPT_HTTPHEADER => array(
    "Accept: */*",
    "Content-Type: application/x-www-form-urlencoded",
    "Host: de.vavasms.com"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
                                    
                                

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number");
Request request = new Request.Builder()
  .url("https://de.vavasms.com/api/v1/otp/send")
  .post(body)
  .addHeader("Content-Type", "application/x-www-form-urlencoded")
  .addHeader("Accept", "*/*")
  .addHeader("Host", "de.vavasms.com")
  .build();
Response response = client.newCall(request).execute();
                                    

var settings = {
  "async": true,
  "crossDomain": true,
  "url": "https://de.vavasms.com/api/v1/otp/send",
  "method": "POST",
  "headers": {
    "Content-Type": "application/x-www-form-urlencoded",
    "Accept": "*/*",
    "Host": "de.vavasms.com"
  },
  "data": {
    "username": "your_email",
    "password": "your_password",
    "sender_id": "your_sender_id",
    "phone": "your_receiver_phone_number"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});
                                    

var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/otp/send',
  headers:
   { 'Host': 'de.vavasms.com',
     'Accept': '*/*',
     'Content-Type': 'application/x-www-form-urlencoded' },
  form:
   { username: 'your_email',
     password: 'your_password',
     sender_id: 'your_sender_id',
     phone: 'your_receiver_phone_number' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);
  console.log(body);
});

                                    

var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/otp/send',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  form:
   { username: 'your_email',
     password: 'your_password',
     sender_id: 'your_sender_id',
     phone: 'your_receiver_phone_number' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
                                    
                                

Beispiel einer Erfolgsgeschichte
        
{
    "code": 0,
    "message": "OPERATION_SUCCES",
    "data": {
        "message_id": "OTP-20190621-2234509",
        "description": "OTP envoyé avec succès"
    }
}
        
    

Beispiel für einen Fehlerfall
{
    "code": "901",
    "status": "INVALID_CREDENTIALS",
    "description": "Identifiant de connexion incorrect",
}
{
    "code": "902",
    "status": "INVALID_SENDER_ID",
    "description": "Le sender_id n’existe pas",
}
{
    "code": "903",
    "status": "INVALID_PHONE_NUMBER",
    "description": "Le format du numéro de téléphone est invalide",
}


Verifier et valider un code OTP

POST : https://de.vavasms.com/api/v1/otp/verify

Einstellungen

Name Typ Beschreibung
username string die E-Mail Ihres Kontos
password string das Passwort für Ihr Konto
otp integer Le code OTP à verifier.
phone string Le numéro de téléphone qui a reçu le code OTP.
Exemple d'envoi à un contact : 22509000001

Beispielhafte Abfrage
                                    
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://de.vavasms.com/api/v1/otp/verify",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number&otp=otp_received",
  CURLOPT_HTTPHEADER => array(
    "Accept: */*",
    "Content-Type: application/x-www-form-urlencoded",
    "Host: de.vavasms.com"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
                                    
                                

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "username=your_email&password=your_password&sender_id=your_sender_id&phone=your_receiver_phone_number&otp=otp_received");
Request request = new Request.Builder()
  .url("https://de.vavasms.com/api/v1/otp/verify")
  .post(body)
  .addHeader("Content-Type", "application/x-www-form-urlencoded")
  .addHeader("Accept", "*/*")
  .addHeader("Host", "de.vavasms.com")
  .build();
Response response = client.newCall(request).execute();
                                    

var settings = {
  "async": true,
  "crossDomain": true,
  "url": "https://de.vavasms.com/api/v1/otp/verify",
  "method": "POST",
  "headers": {
    "Content-Type": "application/x-www-form-urlencoded",
    "Accept": "*/*",
    "Host": "de.vavasms.com"
  },
  "data": {
    "username": "your_email",
    "password": "your_password",
    "sender_id": "your_sender_id",
    "phone": "your_receiver_phone_number",
    "otp": "otp_received",
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});
                                    

var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/otp/verify',
  headers:
   { 'Host': 'de.vavasms.com',
     'Accept': '*/*',
     'Content-Type': 'application/x-www-form-urlencoded' },
  form:
   { username: 'your_email',
     password: 'your_password',
     sender_id: 'your_sender_id',
     otp: 'otp_received',
     phone: 'your_receiver_phone_number' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);
  console.log(body);
});

                                    

var request = require("request");

var options = { method: 'POST',
  url: 'https://de.vavasms.com/api/v1/otp/verify',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  form:
   { username: 'your_email',
     password: 'your_password',
     sender_id: 'your_sender_id',
     otp: 'otp_received',
     phone: 'your_receiver_phone_number' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
                                    
                                

Beispiel einer Erfolgsgeschichte
        
{
    "code": 0,
    "message": "OPERATION_SUCCES",
    "data": {
        "message_id": "OTP-20190621-2250698",
        "status": "success"
    }
}
        
    

Beispiel für einen Fehlerfall

{
    "code": "901",
    "status": "INVALID_CREDENTIALS",
    "description": "Identifiant de connexion incorrect",
}
{
    "code": "902",
    "status": "INVALID_SENDER_ID",
    "description": "Le sender_id n’existe pas",
}
        
{
    "code": 913,
    "message": "INVALID_OTP",
    "description": "vavasms.INVALID_OTP",
    "data": []
}