POST
https://api.octopush.com/v1/public/sms-campaign/sendEncodage : UTF-8
Authentification
Vos identifiants « api-key » et « api-login » doivent être ajoutés dans les headers.
Définition
Il s’agit du même service que l’envoi de SMS simple, mais vous pouvez indiquer une date d’envoi, au format ISO.
Dès que la date que vous avez spécifiée est dépassée, nous faisons partir vos SMS.
Paramètres particuliers
Name | Type | Description |
---|---|---|
text | string | Message texte (de 1 à 1224 caractères non unicodes). |
recipients | array | Liste d’objets Contact (array d’objets) :[ { "phone_number": "+111222233334444", "param1": "Alex" }, ..., { "phone_number": "+2222333334444555", "param1": "John", } ] |
type | string | Type de la campagne : [« sms_premium », »sms_low_cost »] |
sender | string | Expéditeur du message (si l’opérateur le permet), 3-11 caractères alphanumeriques et espace (a-zA-Z0-9 ). |
send_at | string | Date à laquelle vous voulez envoyer la campagne. Format: DateTime ISO8601 (par ex: « 2018-10-03T07:42:39-07:00 »).’ |
purpose | string | But de la campagne (transactionnel/alerte ou marketing) : [« alert », »wholesale »] |
with_replies | boolean | « True » pour recevoir les réponses de vos destinataires |
simulation_mode | boolean | (optionnel) Si ce champ est à “true”, votre requête sera simulée, et vous recevrez un faux résultat. Seulement quelques validations seront effectuées. |
request_id | string | (optionnel) Pour éviter d’envoyer la même demande plusieurs fois, configurez un ID de demande. Dans le cas où la duplication serait détectée, une erreur de validation sera renvoyée. |
auto_optimize_text | boolean | (optionnel) Si ce champ est transmis et qu’il a la valeur false, votre texte ne sera pas optimisé par le robot de Octopush (votre message pourrait contenir des caractères unicodes, ou des espaces inutiles qui pourraient augmenter le nombre de SMS nécessaires pour chacun de vos contacts). |
auto_remove_blacklisted_numbers | boolean | (optionnel) Si ce champ est transmis et qu’il a la valeur true, les numéros blacklistés seront automatiquement supprimés de votre liste de numéros. Ce service rajoute un coût de 0.01€ par requête. |
Exemple Curl
curl -X POST \ 'https://api.octopush.com/v1/public/sms-campaign/send' \ -H 'Content-Type: application/json' \ -H 'api-login: ******@email.org' \ -H 'api-key: ************' \ -H 'cache-control: no-cache' \ -d '{ "recipients": [ { "phone_number": "+336000123", "param1": "Alex" } ], "text": "Voici un SMS Premium avec mention STOP. STOP au 30101", "type": "sms_premium", "purpose": "wholesale", "sender": "Entreprise", "send_at": "2025-07-29T11:00:39-07:00" }'
Code à copier-coller
curl -X POST 'https://api.octopush.com/v1/public/sms-campaign/send' -H 'Content-Type: application/json' -H 'api-login: ******@email.org' -H 'api-key: ************' -H 'cache-control: no-cache' -d '{"recipients": [{"phone_number": "+336000123", "param1": "Alex"}], "text": "Voici un SMS Premium avec mention STOP. STOP au 30101", "type": "sms_premium", "purpose": "wholesale", "sender": "Entreprise", "send_at": "2025-07-29T11:00:39-07:00"}'
Retour Server JSON
Succès : 201 CREATED
{ "sms_ticket": "sms_5f3fbce61266e", "number_of_contacts": 1, "total_cost": 5.00502839 }
Échec : 400 BAD REQUEST
{ "code": 121, "message": "Mention STOP is missing." }
* Pour certains utilisateurs ovh, l’utilisation de curl_setopt($ch, CURLOPT_FRESH_CONNECT, true); dans leur séquence d’envoi en CUrl pourrait être utile.