Appelez n’importe quelle API pendant une conversation
Gratuit 7 jours, sans carte bancaire
Quelqu’un demande où en est sa commande, ou en combien de temps le café arrive à son code postal. L’étape Requête HTTP (ManyChat l’appelle External Request) interroge votre système ou n’importe quelle API en plein chat et place la réponse dans le message suivant.
- API officielle de Meta, sans mot de passe, rien à installer
- Contacts illimités dans tous les forfaits
- L’IA répond dans la langue de votre client
- À partir de 29 $ par mois
De sa réponse à votre API, et retour
Quatre moments dans une même conversation, le flow Délai de livraison du déclencheur à la réponse.
- 01
La personne vous dit ce qu’il vous faut
Une question placée plus tôt dans le flow le demande : un code postal, un numéro de commande, un e-mail. La réponse est enregistrée comme variable.
Tout ce que vous savez de la personne peut y entrer : ses réponses, son e-mail, un champ enregistré
- 02
La requête part
L’étape insère les variables, encodées comme il faut selon l’endroit où elles arrivent, et appelle l’adresse depuis notre serveur.
GET, POST, PUT, PATCH ou DELETE ; un délai maximal de 3, 5, 8 ou 10 secondes
- 03
La réponse est prête à l’emploi
Nommez la réponse une fois, et chaque champ renvoyé devient une variable pour les étapes suivantes ; Enregistrer sur le contact en pose un sur la personne pour les prochaines exécutions.
Jusqu’à 20 valeurs enregistrées ; la réponse est lue jusqu’à 512 Ko
- 04
Le flow prend une sortie
Une bonne réponse prend Succès et le message suivant peut dire Lyon 01. Une erreur ou un délai dépassé prend Échec : personne ne reste à attendre.
Échec : une personne, un nouvel essai, ou un autre message
Chaque réglage, avec les mots du panneau
Les libellés que vous verrez dans le panneau de l’étape, ce que fait chacun, et la limite derrière.
La requête
Tout ce que demande la documentation d’une API, dans les champs qu’elle utilise.
- MéthodeCinq méthodes
GET lit quelque chose (une commande, une réservation), POST le crée (un lead dans votre CRM), PUT le remplace, PATCH en modifie une partie et DELETE le supprime.
Une requête GET n’a pas de body ; envoyez les valeurs en Paramètres de requête.
- AdresseN’importe quelle adresse https ou http
Collez l’adresse de la documentation de l’API et glissez une variable n’importe où dedans, comme le numéro de commande dans /orders/{{order_number}}.
Jusqu’à 2 000 caractères.
- Paramètres de requêteDes valeurs dans l’adresse
Chaque ligne est ajoutée à l’adresse sous la forme clé=valeur, encodée pour vous ; désactivez une ligne avec Envoyer cette ligne sans la supprimer.
Jusqu’à 20 paramètres.
- HeadersHeaders
Les lignes supplémentaires que demande l’API, comme la boutique ou la langue. Verrouillez toute ligne qui contient une clé et elle est enregistrée chiffrée.
Jusqu’à 20 headers.
- BodyJSON, formulaire ou brut
JSON envoie les champs comme du texte, un nombre, vrai/faux ou du JSON, et un point dans une clé l’imbrique : customer.email est envoyé comme email dans customer. Formulaire envoie les champs comme le fait un formulaire web ; Brut est du JSON, du texte brut ou du XML écrit à la main.
Jusqu’à 40 champs JSON ; un body brut jusqu’à 20 000 caractères.
- Coller une commande cURLConstruisez-la depuis la documentation
Copiez l’exemple de la documentation de votre API et collez-le ici. Méthode, adresse, headers, auth et body se remplissent seuls.
Variables et clés
Ce qui change d’une personne à l’autre entre ; ce qui doit rester secret reste scellé.
- Insérer une variableQuatre groupes de variables
Contact (prénom, nom d’utilisateur, e-mail, téléphone), Cette conversation (son dernier message, son commentaire, la publication), Réponses et champs enregistrés, et Issues d’appels d’API, c’est-à-dire les champs renvoyés par une requête précédente.
Chacune est échappée selon l’endroit où elle arrive : encodée pour l’URL dans l’adresse, échappée en JSON dans un body JSON.
- AuthentificationSans authentification, Bearer, Basic ou une clé d’API
Un Bearer token, un nom d’utilisateur et un mot de passe, ou une clé d’API envoyée sous le nom que choisit l’API, dans un header ou dans les paramètres de requête.
- Secret : enregistré chiffré, jamais réaffichéLes secrets sont scellés
Les valeurs d’authentification et toute ligne marquée secrète sont scellées en AES-256-GCM à l’enregistrement, liées à votre compte, et ouvertes uniquement sur notre serveur. Personne ne les revoit, pas même dans l’historique des exécutions.
Une clé saisie n’importe où, même dans un cURL collé, devient secrète d’elle-même.
- BloquéeLes adresses privées sont refusées
Une adresse qui pointe vers un réseau privé, vers la boucle locale ou vers une plage de métadonnées cloud est refusée au moment de la connexion, redirections comprises.
3 redirections au plus ; vos identifiants ne sont jamais transmis à un autre site.
Utiliser la réponse
Nommez-la une fois, utilisez-la partout ensuite.
- Nom de la réponseChaque champ, par son nom
Nommez la réponse une fois, et chaque champ renvoyé peut entrer dans les messages, requêtes et Conditions qui suivent sous la forme {{name.path}}, comme {{order.items[0].name}}, ou {{name.$status}} pour le code de statut.
Deux étapes HTTP d’un même flow ne peuvent pas partager un nom.
- Enregistrer sur le contactSur la personne, pour les prochaines exécutions
À côté de chaque champ renvoyé : enregistrez-le comme son e-mail, son téléphone ou son nom, ou comme champ enregistré sur le contact (ce que Définir un champ fait aussi). Les étapes suivantes de ce flow disposent déjà de tous les champs.
Jusqu’à 20 valeurs enregistrées par étape.
- Code de statutLe statut, les headers, la réponse entière
Une valeur enregistrée peut être le code de statut, la réponse entière, un header, ou n’importe quel champ comme data.items[0].email.
La réponse est lue jusqu’à 512 Ko.
- Champs renvoyésChamps du dernier test
Appuyez sur Envoyer la requête de test et chaque champ de la réponse est listé avec sa valeur, prêt à être inséré avec le bouton des variables ou copié, comme {{ship.places[0].place name}}.
Quand ça échoue
Sous Plus d’options. Une API trébuche parfois ; la personne dans le chat ne s’en aperçoit jamais.
- SuccèsDeux sorties
Succès est une réponse 2xx ; Échec est une erreur, un délai dépassé ou pas de réponse. Réglez Compte comme un succès sur Toute réponse et une Condition peut vérifier le code de statut à la place.
Une sortie Échec à laquelle rien n’est relié termine l’exécution en échec, et le créateur vous prévient avant.
- Délai maximalVous choisissez combien de temps elle attend
Si l’API est plus lente que le délai, l’étape cesse d’attendre et prend Échec. Les gens sont en plein chat : plus c’est court, mieux c’est.
3, 5, 8 ou 10 secondes, 8 par défaut.
- Réessayer en cas d’erreurRéessayer sans débiter deux fois
Sur une erreur réseau ou un 5xx, elle réessaie un instant plus tard, une ou deux fois, en respectant Retry-After. Seules les méthodes qu’on peut envoyer deux fois sans risque réessaient (GET, PUT, DELETE), ou une requête qui porte une Idempotency-Key.
2 nouveaux essais au plus.
- En pause après des échecsUne adresse en échec se repose
Une adresse qui a échoué 5 fois de suite se met en pause une minute, puis est réessayée : une API en panne n’est jamais inondée.
5 appels simultanés au plus par compte.
Voyez la vraie réponse avant l’activation
Envoyer la requête de test fait le vrai appel depuis notre serveur avec des valeurs d’exemple, puis affiche la réponse, ses headers et exactement ce qui a été envoyé.
- Envoyer la requête de test
- Le vrai appel avec des valeurs d’exemple pour ses variables, et la sortie que prendrait le flow ; puis chaque champ renvoyé, listé.
- Ce qui a été envoyé
- La requête exactement telle qu’elle est partie, avec chaque secret masqué.
- Enregistrer sur le contact
- À côté de n’importe quel champ : son e-mail, son téléphone ou son nom, ou un champ enregistré, pour les prochaines exécutions.
69001Envoyer la requête de test
20023 msPrend le chemin Succès
Champs renvoyés
{{ship.$status}} 200{{ship.country}} France Enregistrer sur le contact{{ship.post code}} 69001 Enregistrer sur le contact{{ship.places[0].place name}} Lyon 01 Enregistrer sur le contact{{ship.places[0].state}} Rhône-Alpes Enregistrer sur le contact{{ship.places[0].latitude}} 45.7676 Enregistrer sur le contact
Insérez-les plus loin avec le bouton des variables. Copiez-en un pour le coller vous-même.
RéponseHeadersCe qui a été envoyé
Copiez-la depuis la documentation, elle se construit toute seule
Toute API se documente avec un exemple cURL. Collez-le, et méthode, adresse, headers, auth et body se remplissent ; la clé qu’il contient est scellée sur-le-champ.
- La construire
- Ctrl ou ⌘ + Entrée la construit ; tout ce qui n’a pas pu être lu est nommé.
- Puis ajoutez des variables
- Remplacez une valeur saisie par {{email}} ou {{name}} pour que chaque personne envoie la sienne.
Coller une commande cURL
curl -X POST https://crm.northwindcoffee.com/api/leads \ -H "Authorization: Bearer nw_live_8f2k…" \ -H "Content-Type: application/json" \ -d '{"name": "Lucía", "email": "lucia@example.com", "source": "instagram"}'La construire
Construite à partir de votre cURL. Vérifiez les champs ci-dessous.
https://crm.northwindcoffee.com/api/leads- Auth
- Bearer tokenEnregistré et masqué
- Body
- JSON ·
name{{name}} ·email{{email}} ·sourceinstagram
Une étape dans toute une conversation
Une requête HTTP se place n’importe où dans un flow, après une question qui recueille ce qu’il lui faut, avant une Condition qui lit sa réponse. Reliez aussi sa sortie Échec, pour prévenir l’équipe et passer la main à une personne.
Les chiffres à connaître
Tous les plafonds de l’étape, au même endroit.
| Quoi | La limite |
|---|---|
| Méthodes | GET, POST, PUT, PATCH, DELETE |
| Paramètres de requête et headers | Jusqu’à 20 de chaque |
| Body JSON | Jusqu’à 40 champs ; un body brut jusqu’à 20 000 caractères |
| Adresse | Jusqu’à 2 000 caractères, variables comprises |
| Délai maximal | 3, 5, 8 ou 10 secondes, 8 par défaut |
| Nouvelles tentatives | Jamais, une fois ou deux, sur une erreur réseau ou un 5xx |
| Valeurs enregistrées sur le contact | Jusqu’à 20 par étape |
| Réponse lue | Jusqu’à 512 Ko |
| Redirections suivies | Jusqu’à 3, chacune revérifiée |
| Appels simultanés | Jusqu’à 5 par compte |
| Après 5 échecs de suite | Cette adresse se met en pause une minute |
| Requêtes de test | Jusqu’à 30 par minute et par personne |
| Étapes dans un flow | Jusqu’à 60 |
| Forfait | À partir de Starter, avec le créateur de flows ; le pass DM 7 jours sur Mini et Lite |
Toutes les limites sont celles de CommentWatchDog, tirées du code de l’étape ; la ligne sur le forfait vient des tarifs.
Dites ce que vous voulez, l’IA le configure
Appuyez sur Le configurer avec l’IA et décrivez la tâche. Elle cherche une API officielle, lit sa documentation, teste la requête et remplit l’étape.
- Le configurer avec l’IA
- Comment fonctionne la création par IA, et ce qu’elle coûte en crédits IA.
- Services prêts à l’emploi
- Douze services gratuits dont elle part, pour les taux, la météo, les jours fériés, les codes postaux et plus : les services prêts à l’emploi.
La réponse d’une API, sans les pièges
L’External Request de ManyChat face à l’étape Requête HTTP, sur ce qui rend la réponse utilisable ou non. Plus de détails dans l’alternative à ManyChat.
Centre d’aide de ManyChat : « Make External Request » et « Dev Tools: Basics », consultés en octobre 2026. Les logos appartiennent à leurs propriétaires.
Vos questions : l’étape Requête HTTP
Ce qu’on nous demande avant de connecter une API.
Elle appelle l’API d’un autre système au milieu d’une conversation et utilise la réponse dans les étapes suivantes. Retrouvez le statut d’une commande à partir du numéro saisi, vérifiez un code postal, envoyez un nouveau lead à votre CRM ou demandez un niveau de stock, puis donnez le résultat dans le message suivant ou créez un embranchement dessus avec une Condition. Elle fonctionne sur Instagram et Facebook, avant ou après l’ouverture du chat.
Non. Collez un exemple cURL de la documentation de l’API, et méthode, adresse, headers, auth et body se remplissent seuls ; ou appuyez sur Le configurer avec l’IA et décrivez ce que vous voulez avec vos mots : elle trouve le service, lit sa documentation et teste la requête pour vous. Voir la création par IA.
Oui. Les valeurs d’authentification et toute ligne que vous marquez secrète sont chiffrées en AES-256-GCM à l’enregistrement, liées à votre compte et ouvertes uniquement sur notre serveur. Elles sont masquées dans l’écho du test, retirées des réponses stockées, jamais réaffichées et jamais montrées à l’IA. Une clé saisie n’importe où, même dans un cURL collé, devient secrète d’elle-même.
Donnez un nom à la réponse, par exemple order, et chaque champ renvoyé peut entrer dans les messages, requêtes et Conditions qui suivent sous la forme {{order.status}} ou {{order.items[0].name}}, ou {{order.$status}} pour le code de statut. Enregistrer sur le contact pose un champ sur la personne pour les prochaines exécutions : son e-mail, son téléphone ou son nom, ou un champ enregistré, jusqu’à 20 par étape.
L’étape attend jusqu’à votre délai maximal (3, 5, 8 ou 10 secondes, 8 par défaut), peut réessayer une ou deux fois sur une erreur réseau ou un 5xx, et sinon prend sa sortie Échec : vous pouvez alors passer la main à une personne ou envoyer un autre message. Une adresse qui échoue 5 fois de suite se met en pause une minute.
Oui, à tous ceux qui vous donnent une adresse d’API et une clé. Il n’y a pas d’intégrations natives, donc rien ne se connecte en un clic : l’étape Requête HTTP appelle l’API du service lui-même. Pour un CRM, utilisez un POST, placez le nom, l’e-mail ou les réponses du contact dans le body JSON sous forme de variables, et ajoutez sa clé sous Auth ; voir la collecte de leads en DM. L’étape ne fait qu’appeler vers l’extérieur : aucun de ces outils ne peut donc lancer un flow ni y envoyer des données.
Elle envoie une requête sortante, ce que beaucoup d’outils appellent un webhook ou une External Request. Les appels entrants vers un flow depuis un autre système ne sont pas pris en charge ; un flow se lance depuis un commentaire, un message, une story, un lien DM, une nouvelle conversation ou une publication partagée.
Elle est fournie avec le créateur de flows à partir de Starter, et sur Mini et Lite avec le pass DM 7 jours. Aucun supplément par requête ; seul Le configurer avec l’IA utilise des crédits IA.

