logo
Développement
Rechercher
Mode Webhook

Mode Webhook

L'Agent GPTBots prend actuellement en charge trois modes de réponse aux messages : blocking, streaming et webhook. Lorsque les développeurs utilisent le mode webhook pour recevoir les messages de réponse, les réponses IA ainsi que les réponses humaines seront soumises à l'URL webhook spécifiée.

Mode de réponse Types de messages pris en charge
blocking Réponses IA
streaming Réponses IA
webhook Réponses humaines, Réponses IA

Méthode de requête

POST

Endpoint

Veuillez configurer votre adresse de réception des messages sur la page Agent - Intégration - API - webhook.

Authentification

Consultez la section Présentation de l'API pour les instructions d'authentification.

Requête

Exemple de requête

curl -X POST 'YOUR_API_URL' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "create_time": 1679587005, "conversation_id": "657303a8a764d47094874bbe", "message_id": "65a4ccfC7ce58e728d5897e0", "output": [ { "from_component_branch": "1", "from_component_name": "Nom du composant", "content": { "text": "Bonjour, puis-je vous aider ?", "audio": [ { "audio": "http://gptbots.ai/example.mp3", "transcript": "Le contenu transcrit de l'audio" } ] } } ], "usage": { "tokens": { "total_tokens": 29, "prompt_tokens": 19, "prompt_tokens_details": { "audio_tokens": 0, "text_tokens":0 }, "completion_tokens": 10, "completion_tokens_details": { "reasoning_tokens": 0, "audio_tokens": 0, "text_tokens": 0 } }, "credits": { "total_credits":0.0, //invite + réponse "text_input_credits": 0.0, "text_output_credits": 0.0, "audio_input_credits": 0.0, "audio_output_credits": 0.0 } } }'
                      
                      curl -X POST 'YOUR_API_URL' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
    "create_time": 1679587005,
    "conversation_id": "657303a8a764d47094874bbe",
    "message_id": "65a4ccfC7ce58e728d5897e0",
    "output": [
        {
            "from_component_branch": "1",
            "from_component_name": "Nom du composant",
            "content": {
                "text": "Bonjour, puis-je vous aider ?",
                "audio": [
                    {
                        "audio": "http://gptbots.ai/example.mp3",
                        "transcript": "Le contenu transcrit de l'audio"
                    }
                ]
            }
        }
    ],
    "usage": {
        "tokens": {
           "total_tokens": 29,
            "prompt_tokens": 19,
            "prompt_tokens_details": 
                {  
                    "audio_tokens": 0,
                    "text_tokens":0
                },
            "completion_tokens": 10,
            "completion_tokens_details": 
                {
                    "reasoning_tokens": 0,
                    "audio_tokens": 0,
                    "text_tokens": 0
                }
        },
        "credits": {
            "total_credits":0.0,  //invite + réponse
            "text_input_credits": 0.0,
            "text_output_credits": 0.0,
            "audio_input_credits": 0.0,
            "audio_output_credits": 0.0
        }
    }
}'

                    
Ce bloc de code dans la fenêtre flottante

En-têtes de la requête

Champ Type Description
Authorization Bearer ou Basic ${token} Si l'authentification est activée, utilisez Authorization: Bearer OU Basic ${token} pour la vérification de l'appel. Optionnel si l'authentification est désactivée.
Content-Type application/json Type de données, à définir sur application/json.

Corps de la requête

Champ Type Description
conversation_id string Identifiant unique de la conversation.
message_id string Identifiant unique d'un message spécifique dans une conversation.
create_time long Horodatage de la génération du message.
output Tableau JSON Contenu de la réponse de l'Agent IA.
from_component_branch string Branche FlowAgent.
from_component_name string Nom du composant amont dans FlowAgent.
content object Contenu du message de réponse de l'Agent IA, comprend actuellement les types de messages text et audio.
usage object Consommation d'utilisation.
tokens Tableau JSON Nombre total de tokens consommés par l'Agent dans cette conversation.
total_tokens integer Nombre total de tokens consommés pour l'entrée + la sortie dans cette conversation.
prompt_tokens integer Nombre total de tokens consommés pour l'entrée dans cette conversation.
completion_tokens integer Nombre total de tokens consommés pour la sortie dans cette conversation.
prompt_tokens_details object Détail de la consommation de tokens pour l'entrée dans cette conversation.
completion_tokens_details object Détail de la consommation de tokens pour la sortie dans cette conversation.
credits object Nombre total de crédits consommés par l'Agent dans cette conversation.
text_input_credits double Crédits consommés pour les messages texte en entrée dans cette conversation.
text_output_credits double Crédits consommés pour les messages texte en sortie dans cette conversation.
audio_input_credits double Crédits consommés pour les messages audio en entrée dans cette conversation.
audio_output_credits double Crédits consommés pour les messages audio en sortie dans cette conversation.

Réponse

Exemple de réponse

{ "code": 200, "msg": "succès" }
                      
                      {
  "code": 200,
  "msg": "succès"
}

                    
Ce bloc de code dans la fenêtre flottante