[!NOTE]
Cette documentation est une version à jour de la version PDF du 30 novembre 2023.
Pour chaque agent, vous avez la possibilité d'y ajouter une clé d'agent public. Cette clé d'agent public permet de gérer l'intégration de votre agent dans votre application. Cette clé d'API permet dans un premier temps la création de tokens pour vos utilisateurs lors du chargement de la page.
GET /v1/chat/conversation/public/message/tokenGénère un jeton d'accès pour une nouvelle conversation publique associée à un modèle spécifique.
[!IMPORTANT] Vous utilisez cette requête à l'ouverture du chat utilisateur.
Authorization (obligatoire) : La clé API publique permettant d'authentifier la requête (format: Bearer <API_KEY>).200 OK : Retourne le jeton d'accès généré pour la conversation publique.401 Unauthorized : Accès non autorisé si l'en-tête d'autorisation est manquant.404 Not FoundPayload d'exemple :
{
"token": "ae7e783c-7578-4a28-80fb-23c59f21d072"
}
GET /v1/chat/conversation/public/messages/:tokenRécupère les messages d'une conversation publique à l'aide d'un jeton de sécurité.
token (obligatoire) : Le jeton de sécurité permettant d'accéder à la conversation publique.200 OK : Retourne les messages de la conversation publique.403 Forbidden : Accès refusé si le jeton de sécurité n'est pas valide ou a été utilisé de manière suspecte.404 Not Found : La conversation associée au jeton n'a pas été trouvée.{
"messages": [
{
"id": "cluosj5hh0000ab6adugihwih",
"message": {
"role": "system",
"content": ""
},
"created": 1712450027141,
"model": "GPT4",
"conversation_id": "cluosj5hh0000ab6adugihwih",
"usage": {
"prompt_tokens": 0,
"total_tokens": 0,
"completion_tokens": 0
}
},
{
"id": "cluosrb2f0004a3ha8eut3hx0"
POST /v1/chat/conversation/public/messageEnvoie un message à une conversation publique.
Content-Type: application/jsonclient_token (obligatoire) : Le jeton client permettant d'authentifier la requête.messages (obligatoire) : Le contenu du message à envoyer.stream (optionnel) : Indique si la réponse doit être retournée en mode flux (stream).custom (optionnel) : Un objet permettant de personnaliser le comportement de l'API, vous pouvez en savoir plus sur les arguments dans la section Argument Custom.{
"client_token": "ae7e783c-7578-4a28-80fb-23c59f21d072",
"messages": [
{
"role": "user",
"content": "Que propose Devana ?"
}
],
"stream": true,
"custom": {
"disableAutomaticIdentity": true
}
}
200 OK : Le message a été envoyé avec succès à la conversation.403 Forbidden : Accès refusé si le jeton client n'est pas valide ou a été utilisé de manière suspecte.429 Too Many Requests : Trop de requêtes ont été effectuées en peu de temps.stream
Exemple
de
reponse
[DONE]
L'objet custom a comme arguments :
disableAutomaticIdentity (booléen, optionnel) :
false{
"disableAutomaticIdentity": true
}
La sécurité est primordiale dans cette API. Voici les mesures de sécurité mises en place :
Jetons de sécurité (tokens) : Les jetons de sécurité sont utilisés pour authentifier les requêtes et autoriser l'accès aux conversations publiques. Ils sont générés de manière unique et ont une durée de vie limitée. En cas d'utilisation suspecte ou de trop nombreuses requêtes en peu de temps, l'accès est refusé.
Clés API publiques : Les clés API publiques servent à générer des jetons d'accès aux conversations publiques associées à des modèles spécifiques. Seules les clés API valides et actives sont acceptées.
Authentification OAuth2 : Les conversations non publiques nécessitent une authentification OAuth2 pour y accéder. Seuls les utilisateurs authentifiés et autorisés peuvent accéder à ces conversations.
Limites de débit (rate limiting) : Des limites de débit sont appliquées pour prévenir les abus et les attaques par force brute. Si trop de requêtes sont effectuées en peu de temps, l'API retourne une erreur 429 (Too Many Requests).
Stockage sécurisé des données sensibles : Les données sensibles, comme les jetons de sécurité et les clés API, sont stockées de manière sécurisée et ne sont pas exposées dans les réponses de l'API.
Il est fortement recommandé aux utilisateurs de l'API de suivre les meilleures pratiques de sécurité, notamment :
En suivant ces consignes de sécurité, vous contribuerez à garantir l'intégrité et la confidentialité des données lors de l'utilisation de l'API Publique (Agents).