Aller au contenu

Utiliser l'API et les webhooks en toute sécurité.

SmartChat protège chaque connexion à tes programmes et apps IA, pour que les données de tes contacts WhatsApp n'arrivent que là où tu l'autorises.

Réglages dans SmartChat, Intégrations, API : trois clés avec un nom, seuls le début et les quatre derniers caractères visibles, date de création, dernière utilisation et droits

SmartChat n'enregistre jamais ta clé en clair.

Tu vois la clé API complète une seule fois, juste après sa création. SmartChat n'en enregistre qu'une valeur de contrôle, à partir de laquelle on ne peut pas retrouver la clé.

  1. 1

    C'est toi qui décides de ce qu'elle peut faire

    Chaque clé reçoit un nom et le droit Lecture seule ou Lecture et écriture. Elle ne pourra jamais faire plus.

    Fenêtre Créer une nouvelle clé dans SmartChat : champ Nom et choix entre Lecture seule et Lecture et écriture
  2. 2

    Tu la copies une seule fois

    Ensuite, SmartChat n'affiche plus que le début et les quatre derniers caractères. À chaque requête, SmartChat compare la clé avec la valeur de contrôle enregistrée.

    Authorization: Bearer DEIN_API_SCHLUESSEL
  3. 3

    Tu la bloques en un clic

    Si tu régénères ou supprimes une clé, l'ancienne cesse aussitôt de fonctionner. SmartChat refuse toute nouvelle requête faite avec elle.

    # Réponse 401 "key": "apikey_widerrufen"

Tu connectes des apps d'IA uniquement avec ton accord.

Tu connectes une app d'IA à SmartChat via MCP . Tu te connectes avec ton compte SmartChat et tu confirmes les droits, sans avoir à copier de clé.

Paramètres dans SmartChat, Intégrations, MCP : adresse du serveur MCP avec bouton Copier et trois étapes jusqu'à la confirmation des droits
  • Seuls les admins connectent

    Les collaborateurs ne peuvent pas connecter d'app d'IA à ton compte. Chaque connexion vaut pour un seul compte.

  • Rôle vérifié à chaque requête

    Si un admin devient collaborateur ou quitte ton équipe, sa connexion prend fin à la requête suivante.

  • Les accès volés ne servent à rien

    Si quelqu'un utilise une deuxième fois un accès déjà utilisé, SmartChat coupe toute la connexion.

Les requêtes répétées ne sont pas envoyées en double.

Beaucoup de programmes répètent une requête quand la réponse tarde trop. Si ton programme envoie une Idempotency-Key, SmartChat n'exécute la requête qu'une fois et renvoie la même réponse à chaque répétition.

Première demandeRépétitionContenu différent
curl -X POST https://api.smartchat.marketing/v1/messages \ -H "Authorization: Bearer TA_CLE_API" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: rappel-rdv-4711" \ -d '{"contact_id": "ID_CONTACT", "text": "À demain 10 h !"}' # Réponse 201 : le message part { "ok": true, "message_id": "…" }
# La même requête avec la même clé, par exemple après un délai dépassé # Réponse : exactement la réponse de la première requête Idempotent-Replayed: true { "ok": true, "message_id": "…" } # Le message n'est pas envoyé une deuxième fois.
# La même clé, mais un autre texte # Réponse 422 { "error": { "key": "idempotency_key_mismatch", "message": "This Idempotency-Key was already used for a different request." } }

Tes webhooks sont protégés.

Un programme ne démarre tes automatisations que via une adresse secrète, ton site web par une clé à part. Les messages de SmartChat vers ton système portent une signature.

  • Automatisation Rappel de paiement dans SmartChat avec le déclencheur Webhook appelé, une condition et le message WhatsApp

    Une adresse secrète par automatisation

    Seul celui qui connaît l'adresse déclenche ton automatisation. Elle appartient à une seule automatisation de ton compte.

  • <script src="…"></script> <script> smartchatTrigger({ "email": "{{email}}" }); </script>

    Une clé à part pour ton site web

    L'adresse secrète n'apparaît jamais sur ton site web. Si un navigateur l'appelle quand même, SmartChat refuse.

  • 1er appel → L'automatisation s'exécute. 2e appel, même événement → Cet événement a déjà été traité.

    Chaque événement une seule fois

    Si un programme renvoie le même événement peu après, SmartChat reconnaît la répétition et n'envoie rien en double.

  • X-SmartChat-Event: contact.created X-SmartChat-Timestamp: 1792400000 X-SmartChat-Signature: v1=…

    Messages signés vers ton système

    Chaque message de SmartChat porte un horodatage et une signature. Ton système vérifie ainsi qu'il vient vraiment de SmartChat.

  • https://… autorisé http://… refusé

    Uniquement vers des adresses sûres

    SmartChat envoie uniquement vers des adresses https sur Internet public et ne suit aucune redirection. Si ton système n'est pas joignable, SmartChat réessaie plus tard.

Questions fréquentes sur l'API et les webhooks.

SmartChat peut-il me réafficher ma clé API ?

Non. SmartChat n'affiche la clé complète que juste après sa création et n'enregistre ensuite qu'une valeur de contrôle. La liste n'affiche que le début et les quatre derniers caractères. Si une clé est perdue, tu en génères une nouvelle.

Que se passe-t-il si une clé API tombe entre de mauvaises mains ?

Tu la régénères ou la supprimes dans les réglages, sous Intégrations. Dès ce moment, SmartChat refuse toute requête avec l'ancienne clé. Pour chaque clé, tu vois aussi quand elle a été utilisée pour la dernière fois.

Que peut faire une clé API ?

Exactement ce que tu choisis à la création : lecture seule ou lecture et écriture. Si un programme demande quelque chose pour lequel la clé n'a pas le droit, SmartChat refuse la requête.

Qui peut créer des clés API et connecter des apps IA ?

Seuls les admins de ton compte. Les collaborateurs ne peuvent ni créer de clé ni connecter d'app d'IA. Qui perd son rôle d'admin perd aussi, à la requête suivante, les apps d'IA qu'il a connectées. Plus d'infos sous Équipe.

Un programme peut-il envoyer à n'importe quel numéro via l'API ?

Non. Même via l'API, les newsletters ne partent qu'après la confirmation. Quiconque s'est désinscrit avec STOP ne reçoit plus rien, peu importe le programme d'où vient la requête.

Qu'est-ce qu'une Idempotency-Key ?

Un texte libre que ton programme envoie dans l'en-tête d'une requête, par exemple le numéro d'une réservation. Si la même requête arrive une nouvelle fois avec la même clé, SmartChat ne l'exécute pas à nouveau et renvoie la première réponse.

Que se passe-t-il si mon programme utilise la même clé pour une autre requête ?

SmartChat refuse la deuxième requête, car la clé appartient déjà à une autre requête. Si la première requête est encore en cours, SmartChat demande à ton programme de réessayer dans un instant.

Comment mon système vérifie-t-il qu'une notification vient vraiment de SmartChat ?

Quand tu crées un abonnement webhook, tu reçois un secret. Avec lui, ton système calcule lui-même la signature à partir de l'horodatage et du contenu, et la compare à l'en-tête X-SmartChat-Signature. Si l'horodatage est trop ancien, tu rejettes la notification.

Que se passe-t-il si mon système n'accepte pas une notification ?

SmartChat réessaie plus tard.

SmartChat enregistre-t-il le contenu des notifications envoyées à mon système ?

Non. SmartChat retient seulement quelle notification est encore en attente et ne lit le contenu qu'au moment de l'envoi. Si un contact a été supprimé entre-temps, plus rien ne part à son sujet. Avant chaque envoi, SmartChat vérifie aussi que l'abonnement est actif et que la clé est encore valable.

Que faire si l'adresse webhook d'une automatisation tombe entre de mauvaises mains ?

Tu ouvres l'automatisation et tu génères une nouvelle adresse. L'ancienne ne fonctionne plus ensuite. Saisis la nouvelle adresse dans tous les programmes qui envoient des événements à SmartChat. Le code sur ton site web reste le même.

Où trouver la documentation technique de l'API ?

Dans le démarrage rapide de l'API. Tout ce que tu peux faire avec l'API se trouve sous API.

Connecte tes programmes en toute sécurité à SmartChat.

Saisis ton site web. SmartChat AI construit ton système de marketing WhatsApp en 60 secondes, gratuitement. Tu crées ensuite ta première clé API dans les paramètres.