Actualizar el valor de los metadatos del documento
Actualiza los metadatos de los documentos especificados. Cada documento se identifica mediante su ID y cada campo mediante su nombre. La actualización utiliza una combinación incremental: solo se modifican los campos enviados y los demás permanecen sin cambios. Enviar una cadena vacía `""` borra el valor del campo. Se pueden actualizar hasta 50 documentos por solicitud.
Método de solicitud
PUT
Endpoint
https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/update
Autenticación
Para obtener información sobre la autenticación, consulte Visión general de la API.
Solicitud
Ejemplo de solicitud
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": "Técnico", "priority": "P1" }
},
{
"doc_id": "doc_002",
"metadata": { "category": "Producto", "priority": "" }
}
]
}'
Encabezados de solicitud
| Campo | Tipo | Descripción |
|---|---|---|
| Authorization | Bearer ${API Key} | Autentíquese con Authorization: Bearer ${API Key}. Obtenga la API Key en la página de claves API. |
| Content-Type | application/json | Tipo de datos, establecido en application/json. |
Parámetros de solicitud
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| documents | Array<Object> | Sí | Una lista de documentos para actualizar, hasta 50 a la vez. |
| doc_id | String | Sí | ID del documento. |
| metadata | Object | No | "Nombre de campo → valor". Una cadena vacía borra el valor del campo y los campos no transmitidos permanecen sin cambios. El nombre del campo debe ser un campo definido dentro del alcance del documento. |
Nota: Un campo de tipo LIST solo acepta valores definidos en sus
options; de lo contrario, el elemento del documento falla confield 'x' contains value not in options. En la misma solicitud, la misma clave de metadatos bajo el mismodoc_idsolo se actualiza en su primera aparición; cada elemento posterior que contenga esa clave duplicada falla por completo conduplicate metadata key 'x' for doc_id 'y'; only the first value is applied. Eldoc_iddebe pertenecer al Agent asociado con la API Key actual; de lo contrario, se devuelvedoc not found.
Respuesta
Ejemplo de respuesta
{
"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"
}
]
}
Respuesta correcta
| Campo | Tipo | Descripción |
|---|---|---|
| success_count | Integer | Número de documentos actualizados exitosamente. |
| failure_count | Integer | Número de documentos que no se pudieron actualizar. |
| results | Array<Object> | Resultados documento por documento. |
| doc_id | String | ID del documento. |
| success | Boolean | Si la actualización se realizó correctamente. |
| error_message | String | Motivo del error, por ejemplo: doc not found (el documento no existe o no pertenece al Agent actual), field 'x' is not defined (el nombre del campo no está definido), field 'x' contains value not in options (el valor LIST no es una opción permitida) o duplicate metadata key 'x' for doc_id 'y'; only the first value is applied (campo duplicado en la solicitud; se aplica el primer valor). |
Respuesta de error
| Campo | Tipo | Descripción |
|---|---|---|
| code | Integer | Código de error. |
| message | String | Detalles del error. |
