API

Authentification

Lorsque vous effectuez des requêtes API, vous devez inclure votre clé API dans l'en-tête HTTP. Le format de l'en-tête doit ressembler à ceci :

X-TopMessage-Key: {API_KEY}
Gérez vos clés API

ici

Envoyer des message

Envoyez facilement un ou plusieurs messages à vos clients via leurs canaux préférés, tels que SMS et WhatsApp, à l'aide d'une API unique et unifiée. Commencez par un simple message texte en définissant la destination et le contenu, ou exploitez des fonctionnalités avancées pour améliorer votre stratégie de communication.

Exemples de cas d'utilisation

Voici quelques exemples de cas d'utilisation de l'API TopMessage :

  • SMS simple
  • SMS personnalisé
  • SMS avec lien raccourci
  • SMS de vérification
  • SMS avec modèle
  • WhatsApp avec modèle
  • Réponse libre WhatsApp
  • Message programmé
  • Messages en masse
Paramètres complets de la requête
NomTaperDescription
donnéesobjetContient les détails ci-dessous du message envoyé.
Objet de données
NomTaperDescription
fromstringNom d'affichage à partir duquel votre message sera envoyé.
tostring[]Le(s) numéro(s) de téléphone mobile du destinataire en format.
textstringLe texte de votre message à envoyer au(x) destinataire(s).
channelstringLe canal de communication par lequel votre message est envoyé.
Valeurs possibles: SMS et WHATSAPP
Par défaut: SMS
template_idstringIdentifiant unique de votre modèle envoyé.
parametersstring[]Ces valeurs sont utilisées pour remplacer les espaces réservés dans votre modèle de message, permettant de personnaliser le message pour chaque destinataire.
Par défaut: Vide
shorten_URLsbooleanIndique si les URL HTTPS dans le texte doivent être remplacées par des URL raccourcies.
Valeurs possibles: TRUE et FALSE
Par défaut: FALSE
request_idstringIdentifiant unique de la demande générée par vous pour suivre les requêtes.
Par défaut: NULL
schedulestringPrécise l'heure à laquelle le message doit être envoyé. L'heure doit être en UTC et suivre le format ISO-8601. L'heure planifiée ne peut pas être définie à plus d'un an dans le futur.
Par défaut: Maintenant
Paramètres complets de la réponse
Paramètres de réponse

La réponse inclut tous les paramètres de la requête, ainsi que les paramètres supplémentaires énumérés ci-dessous.

Objet de données
NomTaperDescription
account_idstringIdentifiant unique de votre compte.
idstringIdentifiant unique de votre message.
statusstringStatut initial de votre message.
Valeurs possibles: PENDING, FAILED, DELIVERED, SEEN
create_datestringHeure à laquelle le message a été initié.
update_datestringDate de la dernière mise à jour du statut de votre message.
segment_countintegerLe nombre de segments dans lesquels votre message a été divisé.
encodingstringEncodage de votre message.
Valeurs possibles: STANDARD et UNICODE
POST
https://api.topmessage.com/v1/messages
X-TopMessage-Key: {API_KEY}
Content-Type: application/json
Exemple de demande

Payload

cURL

Java

Python

{
    "data": {
        "from": "TopMessage",
        "to": [
            "48727516980",
            "48727516981"
        ],
        "parameters": {
            "48727516980": ["John"],
            "48727516981": ["Ann"]
        },
        "text": "Hi {first_name}! Just testing out this cool SMS feature.https://topmessage.com",
        "template_id": "c5ba629d-a321-4b0d-bf79-fc606fe72e82",
        "shorten_URLs": true,
        "request_id": "9190cda0-70d8-4127-ac8f-787c083efa1b",
        "schedule": "2024-12-01T00:00:01Z"
    }
}
curl -X POST "https://api.topmessage.com/v1/messages" -H "Content-Type: application/json" -H "X-TopMessage-Key: {API_KEY}" -d '{
    "data": {
        "from": "TopMessage",
        "to": [
            "48727516980",
            "48727516981"
        ],
        "parameters": {
            "48727516980": ["John"],
            "48727516981": ["Ann"]
        },
        "text": "Hi {first_name}! Just testing out this cool SMS feature.https://topmessage.com",
        "template_id": "c5ba629d-a321-4b0d-bf79-fc606fe72e82",
        "request_id": "9190cda0-70d8-4127-ac8f-787c083efa1b",
        "shorten_URLs": true,
        "schedule": "2024-12-01T00:00:01Z"
     }
  }'
String response = HttpClient.newHttpClient().send(
    HttpRequest.newBuilder()
        .uri(URI.create("https://api.topmessage.com/v1/messages"))
        .header("Content-Type", "application/json")
        .header("X-TopMessage-Key", "{API_KEY}")
        .POST(HttpRequest.BodyPublishers.ofString("""
            {
                "data": {
                    "from": "TopMessage",
                    "to": [
                        "48727516980",
                        "48727516981"
                    ],
                    "parameters": {
                        "48727516980": ["John"],
                        "48727516981": ["Ann"]
                    },
                    "text": "Hi {first_name}! Just testing out this cool SMS feature. https://topmessage.com",
                    "template_id": "c5ba629d-a321-4b0d-bf79-fc606fe72e82",
                    "request_id": "9190cda0-70d8-4127-ac8f-787c083efa1b",
                    "shorten_URLs": true,
                    "schedule": "2024-12-01T00:00:01Z"
                }
            }
            """))
        .build(),
    HttpResponse.BodyHandlers.ofString()
).body();
response = requests.post(
    "https://api.topmessage.com/v1/messages",
    headers={
        "Content-Type": "application/json",
        "X-TopMessage-Key": "{API_KEY}"
    },
    json={
       "data": {
            "from": "TopMessage",
            "to": ["48727516980", "48727516981"],
            "parameters": {
                "48727516980": ["John"],
                "48727516981": ["Ann"]
            },
            "text": "Hi {first_name}! Just testing out this cool SMS feature.https://topmessage.com",
            "template_id": "c5ba629d-a321-4b0d-bf79-fc606fe72e82",
            "request_id": "9190cda0-70d8-4127-ac8f-787c083efa1b",
            "shorten_URLs": true,
            "schedule": "2024-12-01T00:00:01Z"
        }
    }
)
Exemple de réponse
{
    "data": [
        {
            "id": "0f15fa5d-97ef-46d5-844a-f507f1c4c461",
            "account_id": "0d1f7f1c-27df-41bf-8bdc-5666608a4285",
            "template_id": "7c3f35bc-491e-4580-a8b8-602efae1ccd1",
            "status": "PENDING",
            "from": "TopMessage",
            "to": "48727516980",
            "text": "Hi {first_name}! Just testing out this cool SMS feature. https://topmessage.com",
            "parameters": [
                "John"
            ],
            "channel": "SMS",
            "segment_count": 1,
            "encoding": "STANDARD",
            "schedule": "2024-11-20T08:11:46Z",
            "create_date": "2024-11-25T06:58:22Z",
            "update_date": "2024-11-25T06:58:22Z"
        },
        {
            "id": "6fc214dc-4e51-4fce-bc0a-324a1d8a542b",
            "account_id": "0d1f7f1c-27df-41bf-8bdc-5666608a4285",
            "template_id": "7c3f35bc-491e-4580-a8b8-602efae1ccd1",
            "status": "PENDING",
            "from": "TopMessage",
            "to": "48727516981",
            "text": "Hi {first_name}! Just testing out this cool SMS feature.",
            "parameters": [
                "Ann"
            ],
            "channel": "SMS",
            "segment_count": 1,
            "encoding": "STANDARD",
            "schedule": "2024-11-20T08:11:46Z",
            "create_date": "2024-11-25T06:58:22Z",
            "update_date": "2024-11-25T06:58:22Z"
        }
    ]
}