Saltar al contenido principal

Colecciones

Las colecciones permiten agrupar productos de forma manual o automática (por reglas). Se usan para campañas, colecciones temáticas y destacados.

Listar colecciones

GET /api/v1/catalog/collections

Parámetros:

NombreTipoDescripción
cursorstringCursor de paginación
limitintItems por página (default 25, máx 100)
filter[status]stringactive, draft
sortstring-created_at, title, position

Respuesta 200:

{
"data": [
{
"id": "uuid",
"title": "Verano 2026",
"slug": "verano-2026",
"description": "Productos destacados de verano",
"status": "active",
"product_count": 18,
"created_at": "2026-04-08T12:00:00Z"
}
],
"meta": { "pagination": { "cursor": "eyJ...", "has_next": true } }
}

Crear colección

POST /api/v1/catalog/collections

{
"title": "Verano 2026",
"slug": "verano-2026",
"description": "Productos destacados de verano",
"status": "active",
"sort_order": "manual"
}
CampoRequeridoTipoDescripción
titlestringNombre de la colección
slugnostringURL-friendly (auto-generado si vacío)
descriptionnostringDescripción
statusnostringactive o draft
sort_ordernostringmanual o -created_at
seo_titlenostringTítulo para SEO
seo_descriptionnostringMeta descripción
image_media_idnouuidImagen de portada

Respuesta 201: objeto Collection completo.


Obtener colección

GET /api/v1/catalog/collections/:id

Devuelve la colección con sus metadatos e incluye product_count.


Actualizar colección

PUT /api/v1/catalog/collections/:id

Mismos campos que crear. Adicionalmente:

CampoTipoDescripción
positionintOrden de aparición

Eliminar colección

DELETE /api/v1/catalog/collections/:id

Respuesta 204 No Content


Productos en colección

Listar productos de una colección

GET /api/v1/catalog/collections/:id/products

Parámetros:

NombreTipoDescripción
cursorstringCursor de paginación
limitintItems por página (default 25)

Respuesta 200:

{
"data": [
{
"id": "uuid",
"title": "Polo Clásico",
"slug": "polo-clasico",
"price": 4900,
"position": 1
}
],
"meta": { "pagination": { "cursor": "eyJ...", "has_next": false } }
}

Agregar producto a colección

POST /api/v1/catalog/collections/:id/products

{
"product_id": "uuid",
"position": 1
}

Respuesta 201: objeto de relación producto-colección.

Eliminar producto de colección

DELETE /api/v1/catalog/collections/:id/products/:product_id

Respuesta 204 No Content