Restofy Docs
Productos del menú POST

Actualizar varios productos de una vez

POST /api/products/update-products

Descripción

Modifica hasta 100 productos en una sola llamada, cambiando solo los datos indicados en cada uno.

Detalles

Cada producto del lote cambia únicamente los datos que se envían; el resto conserva su valor. Sirve para subir precios, pausar, mover de categoría o renombrar muchos productos juntos. Valida todo antes de guardar: si uno falla no se modifica ninguno y la respuesta indica la posición y el campo de cada error. Permite una prueba previa sin guardar.

Permisos requeridos

catalog.module

Request

Nombre Tipo Requerido Reglas
dryRun bool No
default:0
items array Sí —
items[].ref string No
max:60
items[].productUuid string Sí
min:36 max:36
items[].name string No
min:2 max:150
items[].productCategoryUuid string No
min:36 max:36
items[].unitId int No
min_value:1
items[].defaultCourseId int No
min_value:1
items[].internalName string No
max:150
items[].description string No
max:2000
items[].kitchenDefaultNotes string No
max:2000
items[].basePriceCents int No
min_value:0
items[].consumptionTaxCents int No
min_value:0
items[].prepTimeMinutes int No
min_value:0
items[].stockMin string No
decimal min_value:0
items[].iconFontAwesome string No
max:100
items[].color string No
min:7 max:7
items[].isActive int No
enum:0,1
items[].taxRuleIds string No
array_int

Respuesta

Campos que devuelve dentro de data. Nada fuera de esta lista sale en la respuesta.

Campo Tipo Descripción
dryRun bool Si fue una prueba que validó sin guardar nada
items array Productos del lote, en el mismo orden en que se enviaron
items[].index int Posición del producto en el lote, desde 0
items[].ref string Admite vacío Referencia propia que se envió con el producto
items[].productUuid string Admite vacío Identificador del producto; vacío en una prueba de alta

Ejemplo de request

curl -X POST https://restofy.pro/api/products/update-products \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -d '{
    "items": [
        {
            "productUuid": "string"
        }
    ]
}'

Los valores son demo: reemplázalos por datos reales del negocio.