Envoi par lots

Cette requête est utilisée pour envoyer des SMS en temps réel ou en différé.

URL

POST https://api.smspartner.fr/v1/send

Paramètres obligatoires

Nom
Valeur

SMSList

phoneNumber → Numéro de téléphone du destinataire, la limite d'envoi sur une seule requête est de 500 numéros. Il doit être :

  • au format national (06xxxxxxxx) ou international (+336xxxxxxxx), pour un numéro français ;

  • au format international (+496xxxxxxxx), pour un numéro hors France.

message → Contenu du SMS. 160 caractères maximum par SMS (au delà, il vous sera décompté un SMS supplémentaire par tranche de 153 caractères).

Saut d'une ligne → :br: Attention, le saut de ligne compte pour deux caractères.

Symbole € → :euro:

Paramètres optionnels

Nom
Valeur

sender

Nom d’émetteur du message. Si l’émetteur est laissé vide, vos SMS seront acheminés avec un shortcode opérateur en guise d’expéditeur (exemple : 36xxx).

tag

Chaine de caractères de 20 caractères maximum sans espace(s) et en minuscule(s)

scheduledDeliveryDate

dd/mm/YYYY (envoi différé)

time

Format : 0-24 (l'heure de l'envoi)

minute

Format : 0-55 (intervalle 5min)

isStopSms

1 pour ajouter la mention STOP à la fin du SMS (obligatoire et automatique pour des SMS commerciaux).

isUnicode

Si 1: Active le mode Unicode, le nombre de caractères maximum par SMS sera de 70.

Important : le SMS unicode doit être activé sur votre compte par un administrateur pour que les envois soient disponibles. Merci de prendre contact avec le service technique pour l’activation de cette fonctionnalité.

> Voir liste complète des émoticônes / emojis

sandbox

1 pour le mode Bac à Sable

Aucun SMS ne sera envoyé, et il n’y aura aucun débit sur votre compte. Ces SMS seront supprimés de vos listes d’envois automatiquement tous les jours.

_format

json ou xml

Requêtes

<?php
        // Prepare data for POST request
        $fields = array(
            'apiKey'=> 'YOUR API KEY',
            'sender' => 'mycompany',
            'scheduledDeliveryDate'=> '21/10/2014',
            'time'=> 9,
            'minute'=> 0,
            'SMSList'=> array(
                array(
                    'phoneNumber'=> '06xxxxxxx1',
                    'message'=> 'msg 0'
                ),
                array(
                    'phoneNumber'=> '06xxxxxxx2',
                    'message'=> 'msg 1'
                )
 
            )
        );
 
 
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL,'https://api.smspartner.fr/v1/bulk-send');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_TIMEOUT, 10);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS,json_encode($fields));
 
        $result = curl_exec($curl);
        curl_close($curl);
 
        // Process your response here
        echo $result;
?>

Réponse

{
    "success": true,
    "code": 200,
    "message_id": "xxxxxx",
    "currency": "EUR",
    "cost": 0.076,
    "nbSMS": 2,
    "SMSResponse_List": [
        {
            "success": true,
            "code": 200,
            "nbSms": 1,
            "cost": 0.038,
            "phoneNumber": "+336xxxxxxx1"
        },
        {
            "success": true,
            "code": 200,
            "nbSms": 1,
            "cost": 0.038,
            "phoneNumber": "+336xxxxxxx2"
        }
    ]
}

Erreurs

{
    "success": false,
    "code":9,
    "error": [{
        "elementId": "children[message].data",
        "message": "Le message est requis"
    }, {
        "elementId": "children[phoneNumber].data",
        "message": "Ce numero de telephone n'est pas valide (922264)"
    }, {
        "elementId": "children[sender].data",
        "message": "L'emetteur ne peut pas etre plus long que 11 caracteres"
    }, {
        "elementId": "children[scheduledDeliveryDate].data",
        "message": "La date (21/11/2014 \u00e0 :) est anterieure a la date actuelle."
    }, {
        "elementId": "children[minute].data",
        "message": "La minute est requise"
    }, {
        "elementId": "children[time].data",
        "message": "L'heure est requise"
    }]
}

Code erreurs

Code de réponse
Réponse

1

La Clé API est requise

2

Le numéro de téléphone est requis

9

Au moins une contrainte n’a pas été respectée lors de l’envoi : - L’émetteur ne peut pas être plus long que 11 caractères. - Numéro de téléphone non valide. - Si scheduledDeliveryDate est défini : La date (dd/mm/yyyy) est antérieure à la date actuelle. La minute est requise. L’heure est requise.

10

Clé API incorrecte

11

Manque de crédits

Dernière mise à jour