Mettre à jour la valeur des métadonnées du document
Mettez à jour les métadonnées des documents indiqués. Chaque document est identifié par son ID et chaque champ par son nom. La mise à jour utilise une fusion incrémentielle : seuls les champs fournis sont modifiés, les autres restent inchangés. Une chaîne vide `""` efface la valeur du champ. Une requête peut mettre à jour jusqu'à 50 documents.
Méthode de requête
PUT
Endpoint
https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/update
Authentification
Pour plus d'informations sur l'authentification, consultez l'Aperçu de l'API.
Requête
Exemple de requête
curl -X PUT 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/update' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
"documents": [
{
"doc_id": "doc_001",
"metadata": { "category": "Technique", "priority": "P1" }
},
{
"doc_id": "doc_002",
"metadata": { "category": "Produit", "priority": "" }
}
]
}'
En-têtes de requête
| Champ | Type | Description |
|---|---|---|
| Authorization | Bearer ${API Key} | Authentifiez-vous avec Authorization: Bearer ${API Key}. Obtenez l'API Key depuis la page des clés API. |
| Content-Type | application/json | Type de données, défini sur application/json. |
Paramètres de requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
| documents | Array<Object> | Oui | Une liste de documents à mettre à jour, jusqu'à 50 à la fois. |
| doc_id | String | Oui | ID du document. |
| metadata | Object | Non | "Nom du champ → valeur". Une chaîne vide efface la valeur du champ et les champs non transmis restent inchangés. Le nom du champ doit être un champ défini dans la portée du document. |
Remarque : Un champ de type LIST accepte uniquement les valeurs définies dans ses
options. Sinon, l'élément de document échoue avecfield 'x' contains value not in options. Dans une même requête, une même clé de métadonnées sous le mêmedoc_idn'est mise à jour que lors de sa première occurrence ; chaque élément suivant contenant cette clé en double échoue entièrement avecduplicate metadata key 'x' for doc_id 'y'; only the first value is applied. Ledoc_iddoit appartenir à l'Agent associé à l'API Key actuelle ; sinon,doc not foundest renvoyé.
Réponse
Exemple de réponse
{
"success_count": 1,
"failure_count": 2,
"results": [
{
"doc_id": "doc_001",
"success": true
},
{
"doc_id": "doc_002",
"success": false,
"error_message": "field 'priority2' is not defined"
},
{
"doc_id": "doc_003",
"success": false,
"error_message": "doc not found"
}
]
}
Réponse réussie
| Champ | Type | Description |
|---|---|---|
| success_count | Integer | Nombre de documents mis à jour avec succès. |
| failure_count | Integer | Nombre de documents dont la mise à jour a échoué. |
| results | Array<Object> | Résultats document par document. |
| doc_id | String | ID du document. |
| success | Boolean | Indique si la mise à jour a réussi. |
| error_message | String | Raison de l'échec, par exemple : doc not found (le document n'existe pas ou n'appartient pas à l'Agent actuel), field 'x' is not defined (le nom du champ n'est pas défini), field 'x' contains value not in options (la valeur LIST n'est pas une option autorisée) ou duplicate metadata key 'x' for doc_id 'y'; only the first value is applied (champ en double dans la requête ; la première valeur est appliquée). |
Réponse d'erreur
| Champ | Type | Description |
|---|---|---|
| code | Integer | Code d'erreur. |
| message | String | Détails de l'erreur. |
