Mettre à jour un Skill privé d'Agent
Mettre à jour un Skill privé d'Agent
Cette interface permet de mettre à jour le Skill privé de l'Agent auquel appartient l'API Key du LoopAgent courant. L'ID du Skill est transmis via le champ de formulaire multipart skill_id et n'apparaît pas dans le chemin de l'URL.
- Seul le LoopAgent est pris en charge, et seuls les Skills privés de l'Agent auquel appartient l'Agent API Key courant peuvent être mis à jour.
- La recherche de la cible est restreinte par
skill_id + projectId + botId; un Skill n'appartenant pas à l'Agent courant sera rejeté. - Le format de fichier est identique à celui de l'interface de création : seuls les formats
.skillet.zipsont acceptés, l'archive ne dépassant pas 20 MiB. - La mise à jour n'enregistre que la version du contenu du Skill, mais ne monte pas automatiquement le Skill, n'enregistre pas de version brouillon de l'Agent et ne publie pas de version de production de l'Agent.
Méthode de requête
POST
Adresse d'appel
https://api.${endpoint}/v1/agent/skill/update
Vérification de l'appel
Utilisez l'Agent Key du LoopAgent cible, cette Key devant avoir le droit de gestion des versions activé. Consultez Présentation de l'API pour les instructions d'authentification.
Requête
Exemple de requête
curl -X POST 'https://api.${endpoint}/v1/agent/skill/update' \
-H 'Authorization: Bearer ${API Key}' \
-F 'skill_id=skill-xxxx' \
-F 'file=@/path/to/refund-policy-v2.skill'
curl -X POST 'https://api.${endpoint}/v1/agent/skill/update' \
-H 'Authorization: Bearer ${API Key}' \
-F 'skill_id=skill-xxxx' \
-F 'file=@/path/to/refund-policy-v2.skill'
Ce bloc de code dans la fenêtre flottante
En-têtes de requête
| Champ | Type | Description |
|---|---|---|
| Authorization | Bearer ${API Key} | Authentification avec l'API Key du LoopAgent cible, cette Key devant avoir le droit de gestion des versions activé. |
| Content-Type | multipart/form-data | Téléverse le fichier du package de compétences sous forme de formulaire. |
Paramètres de requête (Form Data)
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
skill_id |
String | Oui | ID du Skill privé de l'Agent à mettre à jour. |
file |
File | Oui | Package de compétences .skill ou .zip. |
category_id |
String | Non | ID de catégorie après mise à jour ; peut être omis, auquel cas la catégorie d'origine est conservée. |
Le serveur compare le fichier et les métadonnées actuels du Skill cible ; en cas de correspondance parfaite, il renvoie directement la version courante, sans écriture dans le stockage d'objets ni dans MongoDB, et l'appelant n'a pas besoin de transmettre d'en-tête de requête d'idempotence.
Réponse
Exemple de réponse
{
"code": 0,
"message": "OK",
"data": {
"skill_id": "skill-xxxx",
"name": "refund_policy",
"version": "1.0.2"
}
}
{
"code": 0,
"message": "OK",
"data": {
"skill_id": "skill-xxxx",
"name": "refund_policy",
"version": "1.0.2"
}
}
Ce bloc de code dans la fenêtre flottante
Réponse en cas de succès
| Champ | Type | Description |
|---|---|---|
| skill_id | String | ID du Skill mis à jour, inchangé. |
| name | String | Nom du Skill. |
| version | String | Numéro de version du Skill après mise à jour. |
Réponse en cas d'échec
| Champ | Type | Description |
|---|---|---|
| code | Integer | Code d'erreur. |
| message | String | Détail de l'erreur. |
Codes de statut
| Code de statut | Description |
|---|---|
| 200 | Succès |
| 400 | Erreur de paramètre |
| 401 | Non autorisé |
| 403 | Droits insuffisants |
| 429 | Requêtes trop fréquentes |
| 500 | Erreur serveur |
