Types d'envoi
Le même endpoint POST /send gère trois modes d’envoi. Le champ
sending_type bascule entre eux ; selon la valeur passée vous
fournissez soit scheduled_dates, soit recurring_schedule, soit
aucun des deux.
sending_type | Quand le SMS part | Champs supplémentaires requis |
|---|---|---|
immediate (défaut) | Maintenant — en quelques secondes | Aucun |
scheduled | À chaque entrée de scheduled_dates | scheduled_dates: [{date, time}, …] |
recurring | Suivant recurring_schedule | recurring_schedule: {start_date, end_date, frequency, interval, times} |
Si vous omettez sending_type, la passerelle utilise immediate par
défaut.
Immédiat
Section intitulée « Immédiat »Le cas le plus simple — envoyer maintenant, à un ou plusieurs destinataires.
{ "to": ["+243998857000"], "message": "Bonjour de Lisoloo !", "sender_id": "MYAPP", "sending_type": "immediate"}scheduled_dates et recurring_schedule ne doivent pas être présents
(la passerelle rejettera avec 1110 INVALID_FIELD_FORMAT si
immediate et scheduled_dates arrivent ensemble).
Voir le guide Envoyer un SMS instantané pour les patterns un-vers-plusieurs complets.
Planifié
Section intitulée « Planifié »Mettez le même message en file pour un ou plusieurs moments futurs.
Chaque entrée scheduled_dates devient une expédition séparée.
{ "to": ["+243998857000", "+243998857001"], "message": "Votre rendez-vous est demain à 09:00.", "sender_id": "MYAPP", "sending_type": "scheduled", "scheduled_dates": [ { "date": "2026-06-01", "time": "08:00" }, { "date": "2026-06-01", "time": "18:00" } ]}Chaque entrée scheduled_dates est sa propre expédition — l’exemple
ci-dessus génère 2 dates × 2 destinataires = 4 SMS, facturés en
conséquence. Le message_id retourné couvre l’ensemble du lot ; le
polling du statut reflète l’état agrégé.
Schéma — scheduled_date :
| Champ | Type | Description |
|---|---|---|
date | string | Date calendaire ISO 8601 (YYYY-MM-DD), dans le fuseau horaire marchand configuré. |
time | string | 24 heures HH:mm, même fuseau. |
Les paires (date, time) passées sont rejetées. La passerelle évalue
la paire dans le fuseau marchand configuré sur votre compte (défaut :
Africa/Kinshasa).
Voir le guide Planifier un SMS pour les cas limites d’heure d’été et comment annuler un envoi en file.
Récurrent
Section intitulée « Récurrent »Envoyez le même message à une cadence fixe entre start_date et
end_date. Utile pour les rappels quotidiens, résumés hebdomadaires,
notifications mensuelles.
{ "to": ["+243998857000"], "message": "Votre résumé hebdomadaire est prêt.", "sender_id": "MYAPP", "sending_type": "recurring", "recurring_schedule": { "start_date": "2026-06-01", "end_date": "2026-12-31", "frequency": "weekly", "interval": 1, "times": ["09:00", "18:00"] }}Schéma — recurring_schedule :
| Champ | Type | Description |
|---|---|---|
start_date | string | Premier jour éligible (YYYY-MM-DD). |
end_date | string | null | Dernier jour éligible (YYYY-MM-DD). Optionnel — laissez vide pour un planning à durée indéterminée. |
frequency | enum | daily, weekly, monthly ou yearly. |
interval | int | Tous les N unités de frequency. 1 = chaque jour/semaine/mois/année ; 2 = un sur deux ; minimum 1. |
times | array[string] | Une ou plusieurs heures d’envoi HH:mm par jour d’occurrence. |
Voir SMS récurrents pour les patterns d’utilisation.
Règles de validation
Section intitulée « Règles de validation »La passerelle applique les règles suivantes à la soumission :
sending_typedoit valoirimmediate,scheduledourecurring.sending_type: "scheduled"doit fournir unscheduled_datesnon-vide.sending_type: "recurring"doit fournirrecurring_schedule.todoit être non-vide et chaque entrée doit faire ≥ 8 caractères après suppression des espaces et tirets.messagedoit faire 1–1600 caractères.sender_idest optionnel, max 11 caractères.
Voir aussi
Section intitulée « Voir aussi »- Envoyer un SMS instantané
- Planifier un SMS
- SMS récurrents
- Limites de caractères — le comptage des segments affecte le coût