SMS
Utilisez cette API pour envoyer des SMS avec de nombreuses fonctions à un ou plusieurs destinataires à la fois.
Envoyer SMS
Envoyer un SMS à un ou plusieurs destinataires.
- Name
to
- Type
- string
- Description
Numéro du destinataire du SMS. Cela peut aussi être le nom d'un contact ou d'un groupe. Notre API accepte tous les formats courants tels que
0049171999999999
,49171999999999
,+49171999999999
. Plusieurs destinataires sont transmis séparés par des virgules. Idéalement, vous devriez entrer le numéro de téléphone au format international selon E.164.
- Name
text
- Type
- string
- Description
Texte du message SMS.
- Name
from
- Type
- string
- Optional
- Optional
- Description
Expéditeur du SMS. Celui-ci peut contenir un maximum de 11 caractères alphanumériques ou 16 caractères numériques.
- Name
delay
- Type
- timestamp
- Optional
- Optional
- Description
Date/heure pour l'envoi différé. En option, timestamp Unix ou un timestamp au format YYYY-MM-DD hh:mm:ss.
- Name
flash
- Type
- boolean
- Optional
- Optional
- Description
Envoyer le SMS en tant que Flash SMS. Ceux-ci sont affichés directement sur l'écran du destinataire. Sur la plupart des appareils, aucun expéditeur n'est affiché pour les Flash SMS, à l'exception de certains modèles plus anciens.
- Name
udh
- Type
- string
- Optional
- Optional
- Description
En-tête de données utilisateur (UDH) individuel du SMS. Si spécifié et que la variable text contient du code hex, le message est envoyé en tant que SMS binaire 8 bits. 050003CC0201 (message concaténé : numéro de référence 204, partie 1 de 2)
- Name
ttl
- Type
- integer
- Optional
- Optional
- Description
Spécifie la période de validité du SMS en minutes. La valeur par défaut est 2880, soit 48 heures. Veuillez noter que tous les réseaux ne permettent pas un paramètre différent.
- Name
label
- Type
- integer
- Optional
- Optional
- Description
Définir optionnellement un label séparé pour chaque SMS afin que vous puissiez l'assigner à vos statistiques. Max. 100 caractères, caractères autorisés : a-z, A-Z, 0-9, .-_@.
- Name
performance_tracking
- Type
- boolean
- Optional
- Optional
- Description
Activer le suivi des clics et des performances pour les URLs trouvées dans le texte SMS. Cela active également le raccourcisseur d'URL.
- Name
foreign_id
- Type
- string
- Optional
- Optional
- Description
Entrez votre propre ID pour ce message. Vous recevrez le foreign_id en retour pour les callbacks pour les rapports de statut etc. Max. 64 caractères, caractères autorisés : a-z, A-Z, 0-9, .-_@.
- Name
is_binary
- Type
- boolean
- Optional
- Optional
- Description
Si
true
, le SMS sera envoyé en tant que données binaires.
- Name
unicode
- Type
- string
- Deprecated
- Deprecated
- Description
Envoi en tant que SMS Unicode (caractères cyrilliques, arabes, etc.). Cela réduit la longueur du SMS à 70 caractères. Veuillez noter que notre Gateway reconnaît automatiquement l'encodage. Ce paramètre n'est donc pas nécessaire. Cependant, vous pouvez l'utiliser pour forcer un certain type d'envoi.
- Name
utf8
- Type
- string
- Deprecated
- Deprecated
- Description
Force la reconnaissance en tant que jeu de caractères UTF8 et écrase la reconnaissance automatique de l'API.
- Name
return_msg_id
- Type
- string
- Deprecated
- Deprecated
- Description
Si ce paramètre est défini, l'ID du SMS est affiché dans la deuxième ligne après le code de statut. N'a aucun effet si le paramètre json est défini à 1.
- Name
details
- Type
- string
- Deprecated
- Deprecated
- Description
Affiche de nombreux détails sur le SMS envoyé. Utile pour le débogage. N'a aucun effet si le paramètre json est défini à 1.
- Name
json
- Type
- string
- Deprecated
- Deprecated
- Description
La sortie est plus détaillée au format JSON. Veuillez utiliser
Accept: application/json
dans l'en-tête à la place.
- Name
no_reload
- Type
- string
- Deprecated
- Deprecated
- Description
Désactiver le verrou de rechargement. Ce bloc empêche l'envoi du même SMS (texte et destinataire identiques) dans les 180 secondes. Vous pouvez également désactiver ce bloc de manière permanente dans votre connexion sous Paramètres > SMS.
Requête
curl -X POST https://gateway.seven.io/api/sms \
-H "X-Api-Key: VOTRE_CLÉ_API" \
-H "Accept: application/json" \
-d "to=49176123456789" \
-d "from=AcmeInc" \
-d "text=bonjour monde"
Réponse
{
"success": "100",
"total_price": 0.075,
"balance": 593.994,
"debug": "false",
"sms_type": "direct",
"messages": [
{
"id": "77229318510",
"sender": "sender",
"recipient": "49123456789",
"text": "Hello World",
"encoding": "gsm",
"label": null,
"parts": 1,
"udh": null,
"is_binary": false,
"price": 0.075,
"success": true,
"error": null,
"error_text": null
},
{
"id": "77229318511",
// ....
}
]
}
Pièces jointes
Vous pouvez également envoyer des pièces jointes directement via API dans vos SMS. Pour ce faire, les fichiers respectifs doivent être transférés au paramètre files
en tant que tableau associatif.
Propriétés
- Name
name
- Type
- string
- Description
Nom du fichier. Celui-ci doit être inséré exactement comme placeholder dans le texte SMS. Ici ce serait [[document.pdf]]
- Name
contents
- Type
- string
- Description
Contenu du fichier encodé en base64.
Propriétés optionnelles
- Name
validity
- Type
- integer
- Description
Validité en jours. Le fichier est automatiquement supprimé après la période de validité. Par défaut : 3
- Name
password
- Type
- string
- Description
Mot de passe d'accès souhaité pour le fichier. Sans mot de passe, le fichier peut être consulté par toute personne avec le lien.
Requête
curl -X POST https://gateway.seven.io/api/sms \
-H "X-Api-Key: VOTRE_CLÉ_API" \
-H "Accept: application/json" \
-d "to=49176123456789" \
-d "from=AcmeInc" \
-d "text=Bonjour, voici le document : [[document.pdf]]" \
-d "files[0][name]=document.pdf" \
-d "files[0][contents]=iVBORw0KGgoAAAANSUhEUgAAAdoAAACWCAYAAAB5CUk..."
Codes de retour
Pour chaque SMS, vous recevrez un code de retour dans la réponse, qui fournit des informations détaillées sur l'envoi ou l'erreur lors de l'envoi du SMS.
- Name
100
- Description
Le SMS a été accepté par la passerelle et est en cours d'envoi.
- Name
101
- Description
L'envoi à au moins un destinataire a échoué.
- Name
201
- Description
Expéditeur invalide. Un maximum de 11 caractères alphanumériques ou 16 caractères numériques sont autorisés.
- Name
202
- Description
Le numéro du destinataire est invalide.
- Name
301
- Description
Paramètre
to
non défini.
- Name
305
- Description
Le paramètre
text
est invalide.
- Name
401
- Description
Le paramètre
text
est trop long.
- Name
402
- Description
Ce SMS a déjà été envoyé dans les dernières 180 secondes. Vous pouvez désactiver ce bloc dans vos paramètres de compte.
- Name
403
- Description
Limite maximale par jour atteinte pour ce numéro de destinataire.
- Name
500
- Description
Le compte a trop peu de crédit pour envoyer ce SMS.
- Name
600
- Description
Une erreur s'est produite lors de l'envoi.
- Name
802
- Description
Le
label
fourni est invalide.
- Name
900
- Description
L'authentification a échoué. Veuillez vérifier la clé API utilisée dans Authentification.
- Name
901
- Description
La vérification du hash de signature a échoué.
- Name
902
- Description
La clé API n'a pas de droits d'accès à ce point de terminaison.
- Name
903
- Description
L'IP depuis laquelle la requête a été exécutée n'est pas incluse dans la Liste des adresses IP autorisées.
Supprimer SMS
Supprimer un ou plusieurs messages SMS avant qu'ils n'aient été envoyés pour les empêcher d'être envoyés.
- Name
ids
- Type
- array
- Description
Une liste des SMS à supprimer. Entrez ici les 'id's respectifs des SMS à supprimer.
Requête
curl -X DELETE "https://gateway.seven.io/api/sms" \
-H "X-Api-Key: VOTRE_CLÉ_API" \
-H "Content-type: application/json" \
-d "{ \"ids\": [ 77150850625, 77150850626 ] }"
Réponse
{
"success": true,
"deleted": [
"77150850625",
"77150850626"
]
}
Legacy
Pour des raisons de compatibilité, les méthodes d'accès plus anciennes et plus basiques sont toujours prises en charge. Veuillez noter que les nouvelles fonctionnalités sont principalement publiées pour l'API actuelle. De plus, l'utilisation suivante peut entraîner des problèmes avec des requêtes plus importantes et des problèmes de sécurité.
Exemples
La requête suivante de l'URL suivante envoie un SMS avec le contenu mon premier message en tant que SMS avec l'expéditeur seven.io au numéro de téléphone 49160999999999 :
Requête
curl "https://gateway.seven.io/api/sms?p=VOTRE_CLÉ_API&to=49160999999999&text=mon%20premier%20message&from=seven.io&return_msg_id=1"
Réponse
100
123456789
Cette requête affiche de nombreux détails sur le message, chacun séparé par un saut de ligne :
Requête
curl "http://gateway.seven.io/api/sms?p=VOTRE_CLÉ_API&to=Groupe1&text=Test+SMS&from=SMS&flash=0&details=1"
Réponse
100
Comptabilisé: 0.075
Prix: 0.075
Crédit: 27.38
Texte: Test SMS
Type SMS: direct
Flash SMS: off
Encodage: ASCII
GSM0338: true
Debug: false