SMS

Utilisez cette API pour envoyer des SMS avec de nombreuses fonctions à un ou plusieurs destinataires à la fois.

POST/api/sms

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

POST
/api/sms
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

POST
/api/sms
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.


DELETE/api/sms

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

DELETE
/api/sms
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

GET
/api/sms
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

GET
/api/sms
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