Comercios
Actualizar Comercio
Actualizar los campos y metadatos de un comercio.
PATCH /api/commerces/:id
Actualiza los campos de un comercio.
Los metadatos se fusionan, no se reemplazan: las claves enviadas sobrescriben las del mismo nombre, las no enviadas se conservan, y enviar una clave con null la elimina. La fusión es recursiva (RFC 7386 JSON Merge Patch): los objetos anidados se fusionan nivel por nivel, así podés actualizar una clave dentro de un objeto anidado sin reenviar sus hermanas. Cualquier otro valor reemplaza al anterior por completo, incluidos los arrays, que nunca se fusionan elemento a elemento. Enviar metadata: null vacía la bolsa entera.
Auth: Requerida — permiso commerce:manage
Parámetros de Ruta
| Parámetro | Tipo | Descripción |
|---|---|---|
id | UUID | ID del comercio |
Cuerpo de la Solicitud
Todos los campos son opcionales:
| Campo | Tipo | Descripción |
|---|---|---|
name | string | Nombre del comercio |
tax_id | string | RUT / ID tributario (único por tenant) |
global_external_id | string | Identificador externo global |
is_active | boolean | Estado activo |
metadata | object | JSON arbitrario, fusionado recursivamente; null lo vacía |
Ejemplo
curl -X PATCH https://api.reten.ai/api/commerces/880e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer <token>" \
-H "x-tenant-id: <tenant-id>" \
-H "Content-Type: application/json" \
-d '{
"name": "Updated Store Name",
"metadata": { "region": "north", "priority": "high" }
}'const commerceId = "880e8400-e29b-41d4-a716-446655440000";
const response = await fetch(`https://api.reten.ai/api/commerces/${commerceId}`, {
method: "PATCH",
headers: {
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "Updated Store Name",
metadata: { region: "north", priority: "high" },
}),
});
const commerce = await response.json();import requests
commerce_id = "880e8400-e29b-41d4-a716-446655440000"
response = requests.patch(
f"https://api.reten.ai/api/commerces/{commerce_id}",
headers={
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
},
json={
"name": "Updated Store Name",
"metadata": {"region": "north", "priority": "high"},
},
)
commerce = response.json()Respuesta 200 OK
Devuelve el objeto del comercio actualizado.
Respuestas de Error
| Estado | Descripción |
|---|---|
404 | Comercio no encontrado |
409 | El RUT / ID tributario ya existe |