Suite | Team, Growth, Professional, Enterprise ou Enterprise Plus |
Dans cet article, nous allons voir les procédures permettant d’inclure et de configurer cette étape dans un agent IA pour la messagerie
Pour un aperçu de l’étape Effectuer un appel API et de ses règles de configuration, consultez Types d’étape d’agent IA : Effectuer un appel API.
Cet article contient les sections suivantes :
Ajout d’une étape Effectuer un appel API à votre agent IA
L’ajout d’une étape Effectuer un appel API à votre agent IA inclut plusieurs tâches distinctes.
Pour ajouter une étape Effectuer un appel API
- Dans le Centre d’administration, cliquez sur IA (
) dans la barre latérale, puis sélectionnez Agents IA > Agents IA.
- Cliquez sur Gérer les agents IA pour la messagerie.
- Cliquez sur l’agent IA à modifier.
- Cliquez sur l’onglet Réponses, puis créez une nouvelle réponse ou ouvrez une réponse existante
- Dans le créateur de bots, cliquez sur l’icône Ajouter une étape à l’endroit où vous voulez insérer l’étape (à la fin d’une branche ou entre deux étapes existantes).
- Dans le volet de configuration, cliquez sur Effectuer un appel API.
- Saisissez des informations descriptives pour cette étape
- Name : un nom pour l’appel qui permet à votre équipe de l’identifier facilement.
- Description (facultatif) : une courte description de l’action qu’effectue l’appel.
Ces informations ne sont pas visibles par les clients.
- Continuez avec la procédure décrite dans la section Ajout des détails de l’API.
Ajout des détails de l’API
Utilisez la section Détails de l’API pour configurer l’appel HTTP que vous voulez effectuer, notamment la méthode de la demande HTTP, l’emplacement de la source externe et des en-têtes supplémentaires si besoin est. Les étapes ci-dessous sont la suite de la procédure de la section précédente.
Pour ajouter les détails de l’API
- Dans le volet de configuration, cliquez sur Détails de l’API.
- Sélectionnez la méthode de la demande.
- GET récupère une ressource externe du service API. C’est la méthode le plus souvent utilisée.
- POST envoie des données pour créer une ressource dans un système externe. Si la ressource existe déjà, les données envoyées modifient la ressource.
- PUT envoie des données pour mettre à jour une ressource.
- PATCH envoie des données pour mettre à jour une ressource sur un site externe. Cette méthode sert à appliquer des modifications partielles à la ressource.
- DELETE supprime la ressource de l’emplacement externe.
- Saisissez une URL du point de terminaison.
L’URL du point de terminaison est l’emplacement de la ressource externe à laquelle vous vous connectez. L’URL de point de terminaison prend en charge le protocole
https://
. Vous pouvez inclure des variables dans le chemin de l’URL ou dans les valeurs de chaînes de la requête. Pour en savoir plus, consultez Transfert de variables dans un appel API. - (facultatif) Sélectionnez une connexion pour l’authentification de l’appel API.
Remarque – Vous devez créer une connexion avant de l’utiliser dans l’étape Effectuer un appel API.
- Si besoin est, saisissez la clé et la valeur pour un en-tête facultatif. Important : n’utilisez pas les en-têtes pour l’authentification. Utilisez plutôt les connexions API.
Les étapes Effectuer un appel API, qui incluent des en-têtes associés à l’authentification, comme
authorization
oux-api-key
, échouent automatiquement. En cas d’échec de l’étape Effectuer un appel API, la conversation suit la branche Échec de l’appel API de l’étape. - Cliquez sur Effectuer un appel API pour tester l’appel API.
Si des variables sont ajoutées à l’URL ou à son l’URL, vous pouvez inclure des données de test facultatives pour votre service externe afin de vérifier le bon fonctionnement de l’appel API. Notez que cela effectuera une demande HTTP vers l’URL de point de terminaison configurée.
Transfert de variables dans un appel API
Quand vous saisissez une URL du point de terminaison pour un appel API, vous pouvez inclure des variables dans le chemin de l’URL ou dans les valeurs de chaînes de la requête. Cela vous permet de transférer des données de la conversation à un système externe.
Par exemple, un agent IA pour la messagerie peut inviter un client à fournir un numéro de commande en utilisant l’étape Demander des détails. L’agent IA peut ensuite utiliser une étape Effectuer un appel API pour obtenir le statut de livraison de la commande auprès de votre magasin en ligne.
Vous ne pouvez pas utiliser de variables dans le domaine ou sous-domaine d’une URL du point de terminaison. Le tableau suivant inclut des exemples de valeurs d’URL du point de terminaison valides et non valides.
URL du point de terminaison valide | URL du point de terminaison non valide |
---|---|
https://myshopify.com/admin/api/orders/order_number.json Récupérez une commande en spécifiant l’ID de la commande sur Shopify. ![]() |
Les variables ne peuvent pas être ajoutées au domaine/sous-domaine. |
Récupérez un lieu via des recherches de mots-clés de l’API de lieux (Places) de Google. |
Les variables ne peuvent pas être ajoutées à la clé de la chaîne de requête. |
Si une variable est vide ou n’est pas valide, l’agent IA ignore cette variable pendant une conversation.
Enregistrement des variables de la réponse API
Après avoir configuré les détails et testé l’appel API, vous pouvez enregistrer les valeurs de la réponse JSON de l’appel API sous la forme de variables. Vous pouvez enregistrer un maximum de 12 variables dans une étape Effectuer un appel API. Seuls les 280 premiers caractères de la valeur d’une variable sont enregistrés.
Pour créer une variable à partir des données de réponse
- Dans le volet de configuration, cliquez sur Effectuer un appel API.
- Développez l’accordéon et identifiez les données provenant du système externe que vous voulez convertir en variable.
Conseil : cliquez sur l’onglet Corps de la réponse pour voir la réponse brute renvoyée par le système externe.
- Cliquez sur Enregistrer.
- Donnez un nom à la nouvelle variable.
Les noms de variables ne peuvent inclure que des lettres minuscules, des chiffres et des traits de soulignement.
Transfert de variables de tableau dans un appel API
{
"info": {
"count": 50,
"pages": 2,
"next": "https://mycompany.com/api/orders?page=2",
"prev": null
},
"results": [
{
"id": 1052,
"name": "Alexander Cummings",
“address”: “123 MyStreet”,
"Item": "belt",
"price": "15.00",
"image": "https://mycompany.com/api/orders/avatar/1.jpeg",
…
id
, name
, address
, item
, price
et image
s’affichent tous. Ces données sont généralement transférées à un carrousel, mais ce dernier ne peut pas afficher plus de 10 éléments.
lastname
et firstname
peuvent être enregistrés sous la forme de deux variables indépendantes.
"name":
{
"lastname": "Cummings”,
"firstname": “Alexander"
},
Vous ne pouvez pas modifier le tableau ou les valeurs du tableau au sein de la configuration du carrousel dans le Centre d’administration. Si vous avez besoin de modifier des données, vous devez supprimer le tableau dans le Centre d’administration et en créer un nouveau.
{{customer.order}}
est vide. Pour la fiche 1, la fiche est rendue avec un titre partiel de « Order number ». Pour la fiche 2, le titre est vide et la fiche 2 n’est donc pas rendue.
Card 1
Title: Order number {{customer.order}}
Description: Here's your order {{product.description}}
Card 2
Title: {{customer.order}}
Description: Here's your order {{product.description}}
Exemple
{
"info": {
"count": 5,
"pages": 1
},
"results": [
{
"createdAt": "July 10, 2023",
"name": "Connie Stokes",
"Shippingaddress": "123 Street, City, State",
"order": {
"Status": "Ordered",
"Image": "https://images.pexels.com/photos/1484808/pexels-photo-1484808.jpeg"
},
"Quantity": 1,
"Price": 45,
"Item": "Shirt",
"id": "1"
},
…
Cet exemple utilise Effectuer un appel API pour créer la variable de tableau, puis utilise un carrousel dynamique afin d’afficher les résultats pour un utilisateur final.
Pour créer le tableau
- Dans le volet de configuration, cliquez sur Effectuer un appel API.
- Saisissez commandes comme nom.
- Dans le volet de configuration, cliquez sur Détails de l’API.
- Cliquez sur le menu déroulant Méthode de la demande et sélectionnez GET.
- Saisissez l’URL pour l’URL du point de terminaison.
- Pour Authentification, sélectionnez votre méthode d’authentification.
Pour en savoir plus, consultez Création de connexions pour l’intégration avec des services externes.
- Cliquez sur Effectuer un appel API.
- Cliquez sur Enregistrer en regard de « results ».
- Dans le menu déroulant Value, sélectionnez Order, puis Image.
Utilisez le nom de la variable par défaut (image).
- Cliquez sur Add item et répétez l’étape ci-dessus pour créer des éléments pour Order Status et Élément.
Vous pouvez ajouter un maximum de 12 éléments (ou paires clé-valeur).
- Cliquez sur Enregistrer.
- Dans le créateur de bots, cliquez sur Ajouter une étape sous Appel API réussi et sélectionnez Ajouter un carrousel.
- Dans le volet Configuration, cliquez sur Convertir en message dynamique.
- Dans le menu déroulant Tableau, cliquez sur résultats. Il s’agit du tableau que vous avez créé plus haut.
- Pour le titre, cliquez sur le signe + et sélectionnez results.item.
Vous pouvez saisir un maximum de 128 caractères pour le titre et la description.
- Pour Lien du bouton, cliquez sur le signe + et sélectionnez results.image.
- Pour Texte du bouton, cliquez sur le signe + et sélectionnez results.status.
- Pour Lien vers l’image, cliquez sur le signe + et sélectionnez results.image.
- Cliquez sur Terminé.
Voici un exemple de carrousel dynamique :
À propos des branches de l’étape
L’étape Effectuer un appel API est une étape d’embranchement. Quand vous ajoutez cette étape, les réponses de l’agent IA sont divisées selon que l’exécution de la demande API a réussi ou non.
- L’API renvoie un code de réponse 400 ou 500.
- L’une des variables enregistrées manque ou a une valeur
null
.
L’agent IA suivra la branche de réussite dans tous les autres cas.
69 commentaire
Alex Duffey
We need the character limit to be lifted. 280 is very small. Please look at opening this in the future. We are trying to a return an accessory list of products for one of our products, but the 280 limit stops us from providing that full list.
We tried breaking it up into multiple variables, but the the system requires us to save each one for each new product, which then runs into the 50 mac variable limit.
Please either raise the character limit to at least 1000 or raise the variable limit to at least 200.
0
Jeffrey Porter
Is it possible to include the originating URL for the page on which the chat bot was accessed in an API call? Our use case is that we are installing the chat bot on a video player and each video has a distinct URL. I created a chat bot flow that creates a Zendesk ticket. We'd like to be able to include the URL for the page in the ticket so we know where to go look for a problem. Right now we'd have to ask the user for something and we're guaranteed to get vague answers.
0
Aktie Projeto
Como faço para apagar variáveis que coloquei para teste e agora estão ocupando espaço no meu bot?
0
Yiannis Lamprou
I am trying to get data from hubspot via Make API call.
I am using POST method and i get all fields i want and can turn them to variable.
However the fields ( variables) are coming as numbers. (e.g
"hs_pipeline_stage":"67655766",
)How can i say to ZD to display text according to the variable coming in?
Is there a way to create an array or so besides carousel?
0
이지훈
I have a similar question to 6336142945306
For example, I want to use users.json to allow end users to retrieve their information using an API.
If a user has a "custom_role_id" value, I can create a flow by saving that value as a variable.
However, if the flow is executed for a user who does not have a "custom_role_id" value, an API error is returned.
In conclusion, even null values should be saved as variables, and when the variable is referenced in the flow, a null value should be returned instead of an error.
Is this possible?
0
Nir Tzezana
Hi,
I have some data I want to add to the API request body, this is data that I already have when the chat window opened (no need to gather it from the user), how can I do that?
0
Fatima Sbeih
Has anyone managed to set this up with Stripe?
0
דורין אברבך
Hey, https://support.zendesk.com/hc/en-us/articles/4572971586586/comments/4614301298458 is there any updates?
about getting information from the user in order to use their input as parameters in API request
0
Javier DM
Este caso que comentas, está justamente mencionado al pie de este artículo, donde pone:
He visto este tipo de situaciones, cuando se quiere utilizar un
null
value como expresión boolean. Por eso la llamada puede ser exitosa (respuesta 200), pero el valor no corresponde a ninguna de las varlables que se han guardado para el flujo, por lo que el paso API fallará.Un ejemplo:
En este caso, cuando el valor sea
null
el paso API va a fallar, por mas que la llamada sea exitosa. Ya que la variable aquí guardada esorganization_id
ynull
no es un valor exista para ese atributo.Espero esta explicación te sea de utilidad. Si precisaras revisar tu caso en mas profundidad, te sugiero por favor dirigirte a support.zendesk.com/hc e iniciar una conversación con el bot para ponerte en contacto con nuestro equipo de soporte.
Saludos y que tengas buena semana!
0
María del Mar Beiras Neira
Buenas, he configurado la respuesta de Hacer una llamada a una API al revisar los Logs, veo que la respuesta fue “SUCCEEDED”, sin embargo entra por la rama de error de llamada API, entonces realmente no se que hacer para este caso, ya que no entiendo porque esta entrando por esa rama.
0
Se connecter pour laisser un commentaire.