Productos


Modificar producto

Debe incluir un token de acceso en el encabezado de 'Authorization' en todas las solicitudes.

Ratelimit

Cada 1 segundo

Cuerpo de la consulta

Identificá el producto con sku o externalId (uno de los dos) y enviá al menos uno de price, name o description.

skunumber

SKU del producto. Requerido salvo que envíes externalId.

Optional
externalIdstring

ID de integración (Fudo/Toteat) del producto, en children.integrations. Alternativa a sku — la plataforma se detecta automáticamente (productIdFudo, productCodeToteat o extId).

Optional
pricenumber

Nuevo precio del SKU (nivel child).

Optional
namestring

Nuevo nombre del producto (nivel producto, compartido por todos sus SKU).

Optional
descriptionstring

Nueva descripción del producto (nivel producto). Enviá "" para limpiarla.

Optional

Ejemplo.

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "sku": 50, "price": 2560, "name": "Hamburguesa clásica" }'

Identificando el producto por externalId de integración (sin sku), solo el nombre:

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "externalId": "777", "name": "Nuevo nombre" }'

Respuestas

Modificar stock de producto

Actualiza el stock por sucursal de un producto. Debe incluir un token de acceso en el encabezado de 'Authorization'.

Ratelimit

Cada 1 segundo

Cuerpo de la consulta

Objeto plano: identificá el producto con sku o externalId, la sucursal con subsidiaryId o subsidiaryExternalId, y enviá el nuevo qty.

skunumber

SKU del producto. Requerido salvo que envíes externalId.

Optional
externalIdstring

ID de integración (Fudo/Toteat) del producto (plataforma auto-detectada).

Optional
subsidiaryIdstring

ID interno de la sucursal. Requerido salvo que envíes subsidiaryExternalId.

Optional
subsidiaryExternalIdstring

extId de la sucursal (Fudo/Toteat); se resuelve al ID interno.

Optional
qtynumber

Nueva cantidad de stock en esa sucursal

Required

Ejemplo.

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product/stock'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "sku": 50, "subsidiaryId": "XXXXXXXXXXXXXXXXXXX", "qty": 6000 }'

Identificando por externalId de producto + externalId de sucursal:

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product/stock'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "externalId": "777", "subsidiaryExternalId": "1546626", "qty": 40 }'

Actualiza una sucursal por llamada (solo entradas ya existentes). La respuesta tiene el mismo formato que "Modificar producto" ({ success, message, data: {} }).

Modificar productos en lote

Actualiza varios productos (price/name/description) en una sola solicitud. Debe incluir un token de acceso en el encabezado de 'Authorization' en todas las solicitudes.

Los items inválidos o cuyo producto no exista no detienen la operación: se procesan los válidos y los descartados se informan en data.errors.

Ratelimit

Cada 1 segundo

Cuerpo de la consulta

productsarray

Arreglo de productos a actualizar (mínimo 1)

Required
skunumber

SKU del producto. Requerido salvo que envíes externalId.

Optional
externalIdstring

ID de integración (Fudo/Toteat) del producto, en children.integrations. Alternativa a sku — la plataforma se detecta automáticamente.

Optional
pricenumber

Nuevo precio del SKU (nivel child).

Optional
namestring

Nuevo nombre del producto (nivel producto).

Optional
descriptionstring

Nueva descripción del producto (nivel producto).

Optional

Cada item se identifica con sku o externalId (uno de los dos) y debe incluir al menos uno de price/name/description. Los items inválidos o cuyo producto no exista no abortan el batch: se reportan en data.errors con index, sku, externalId y el mensaje.

Ejemplo.

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product/batch'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "products": [{ "sku": 50, "price": 2560, "name": "Hamburguesa" }, { "externalId": "777", "description": "Nueva desc" }] }'

Respuestas

Modificar stock en lote

Actualiza el stock en una sola solicitud. Cada item del arreglo es plano (un producto + una sucursal + qty). Debe incluir un token de acceso en el encabezado de 'Authorization'.

Cuerpo de la consulta

productsarray

Arreglo de items planos a actualizar (mínimo 1)

Required
skunumber

SKU del producto. Requerido salvo que envíes externalId.

Optional
externalIdstring

ID de integración (Fudo/Toteat) del producto (plataforma auto-detectada).

Optional
subsidiaryIdstring

ID interno de la sucursal. Requerido salvo que envíes subsidiaryExternalId.

Optional
subsidiaryExternalIdstring

extId de la sucursal (Fudo/Toteat); se resuelve al ID interno.

Optional
qtynumber

Nueva cantidad de stock en esa sucursal

Required

Cada item identifica el producto con sku o externalId, la sucursal con subsidiaryId o subsidiaryExternalId, y qty es requerido. Para actualizar varias sucursales del mismo producto, mandá un item por sucursal (se agrupan por producto). Los items inválidos o cuyo producto no exista no abortan el batch: se reportan en data.errors con index, sku, externalId y el mensaje.

Ejemplo.

curl -v -X PUT
    --url 'https://api.public.lumarketo.cl/product/stock/batch'
    --header 'Authorization: Bearer <access_token>'
    --data '{ "products": [{ "sku": 50, "subsidiaryId": "XXXXXXXXXXXXXXXXXXX", "qty": 6000 }, { "externalId": "777", "subsidiaryExternalId": "1546626", "qty": 30 }] }'

La respuesta tiene el mismo formato que "Modificar productos en lote" ({ updated, total, errors }).

Productos por sucursal

Lista los productos disponibles en una sucursal. Requiere Bearer token.

Parámetros de consulta (query) — uno de los dos, + paginación opcional

subsidiaryIdstring

ID interno de la sucursal

Optional
externalIdstring

ID externo de la sucursal (extId); se resuelve al ID interno

Optional
pagenumber

Página a devolver (default 1)

Optional
limitnumber

Cantidad de items por página (default 20)

Optional
orderstring

Dirección del orden: asc | desc (default desc)

Optional
orderBystring

Campo por el cual ordenar (default CreatedDate)

Optional

Ejemplo.

curl -v -X GET
    --url 'https://api.public.lumarketo.cl/product/list?subsidiaryId=6403c1fbc961b1bdaaf7fd18&page=1&limit=20'
    --header 'Authorization: Bearer <access_token>'

data es un objeto paginado: { docs, totalDocs, limit, page, totalPages, hasNextPage, hasPrevPage }. docs es el arreglo de productos. Cada producto: { id, name, category, show, children: [{ sku, barcode, price, withDiscount, discount, show, stocks: [{ subsidiaryId, qty, show }], integrations: [{ subsidiaryId, productIdFudo, productCodeToteat, extId }] }] }.

Obtener producto

Obtiene un producto por su sku o por su externalId de integración (Fudo/Toteat, guardado en children.integrations). Requiere Bearer token.

Parámetros de consulta (query) — uno de los dos

skustring

SKU del producto

Optional
externalIdstring

ID de integración del producto (Fudo/Toteat). La plataforma se detecta automáticamente: busca en productIdFudo, productCodeToteat y extId.

Optional

Ejemplo.

curl -v -X GET
    --url 'https://api.public.lumarketo.cl/product?sku=931'
    --header 'Authorization: Bearer <access_token>'

Identificando por externalId de integración:

curl -v -X GET
    --url 'https://api.public.lumarketo.cl/product?externalId=777'
    --header 'Authorization: Bearer <access_token>'

data es un producto (mismo formato que "Productos por sucursal"), o null si no existe.