Productos
Gestionar productos, catalogos y costos
| Metodo | Ruta | Descripcion |
|---|
GET | /organizations/{organization_id}/products | Listar productos |
POST | /organizations/{organization_id}/products | Crear producto |
GET | /organizations/{organization_id}/products/:id | Obtener producto |
PATCH | /organizations/{organization_id}/products/:id | Actualizar producto |
DELETE | /organizations/{organization_id}/products/:id | Eliminar producto |
PUT | /organizations/{organization_id}/products/replace | Reemplazar todos los productos |
GET | /organizations/{organization_id}/products/catalogs | Listar catalogos |
POST | /organizations/{organization_id}/products/catalogs | Crear catalogo |
PATCH | /organizations/{organization_id}/products/catalogs/:id | Actualizar catalogo |
DELETE | /organizations/{organization_id}/products/catalogs/:id | Eliminar catalogo |
GET | /organizations/{organization_id}/products/catalogs/:id/products | Productos de un catalogo |
PUT | /organizations/{organization_id}/products/catalogs/:id/products | Reemplazar productos de un catalogo |
GET | /organizations/{organization_id}/products/:id/cost | Obtener costo interno |
PUT | /organizations/{organization_id}/products/:id/cost | Actualizar costo interno |
DELETE | /organizations/{organization_id}/products/:id/cost | Eliminar costo interno |
curl -X POST "https://api.mirlo.com/v1/crm/organizations/{organization_id}/products" \
-H "X-API-Key: sk_live_tu_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Plan Enterprise",
"description": "Plan empresarial con agentes ilimitados",
"sku": "PLAN-ENT-001",
"category": "planes",
"price_amount": 4999,
"price_currency": "MXN",
"status": "active",
"media": [
{
"kind": "image",
"uri": "https://example.com/plan-enterprise.jpg",
"content_type": "image/jpeg",
"is_primary": true
}
]
}'
| Campo | Tipo | Requerido | Descripcion |
|---|
name | string | Si | Nombre del producto |
source | string | No | manual o integration |
external_product_id | string | No | ID del producto en sistema externo |
description | string | No | Descripcion del producto |
sku | string | No | SKU |
category | string | No | Categoria |
price_amount | number | No | Precio |
price_currency | string | No | Moneda (default: MXN) |
product_url | string | No | URL del producto |
status | string | No | Estado del producto |
metadata | object | No | Datos adicionales |
media | array | No | Archivos multimedia |
catalog_id | string | No | UUID del catalogo |
| Campo | Tipo | Requerido | Descripcion |
|---|
kind | string | Si | Tipo: image, video, etc. |
uri | string | Si | URL del archivo |
content_type | string | No | MIME type |
filename | string | No | Nombre del archivo |
size_bytes | number | No | Tamano en bytes |
position | number | No | Orden de visualizacion |
is_primary | boolean | No | Si es la imagen principal |
curl "https://api.mirlo.com/v1/crm/organizations/{organization_id}/products?search=plan&status=active&limit=20" \
-H "X-API-Key: sk_live_tu_api_key"
| Parametro | Tipo | Descripcion |
|---|
search | string | Busqueda por nombre |
source | string | Filtrar por origen |
status | string | Filtrar por estado |
limit | number | Max resultados (default: 100, max: 500) |
offset | number | Offset para paginacion |
curl -X POST "https://api.mirlo.com/v1/crm/organizations/{organization_id}/products/catalogs" \
-H "X-API-Key: sk_live_tu_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Catalogo Principal",
"description": "Productos disponibles para venta",
"is_default": true,
"status": "active"
}'
| Campo | Tipo | Requerido | Descripcion |
|---|
name | string | Si | Nombre del catalogo |
description | string | No | Descripcion |
is_default | boolean | No | Si es el catalogo por defecto |
status | string | No | Estado |
is_public | boolean | No | Publicar como pagina publica |
public_slug | string | No | Slug para la URL publica (ej: mi-tienda) |
public_config | object | No | Configuracion de la pagina publica |
curl -X PUT "https://api.mirlo.com/v1/crm/organizations/{organization_id}/products/catalogs/{catalog_id}/products" \
-H "X-API-Key: sk_live_tu_api_key" \
-H "Content-Type: application/json" \
-d '{
"product_ids": ["prod-uuid-1", "prod-uuid-2"]
}'
Los costos se gestionan separados del producto para no exponerlos en catalogos publicos ni agentes.
curl -X PUT "https://api.mirlo.com/v1/crm/organizations/{organization_id}/products/{product_id}/cost" \
-H "X-API-Key: sk_live_tu_api_key" \
-H "Content-Type: application/json" \
-d '{
"cost_amount": 2500,
"cost_currency": "MXN"
}'
| Campo | Tipo | Requerido | Descripcion |
|---|
cost_amount | number | Si | Costo del producto |
cost_currency | string | No | Moneda (default: MXN) |
updated_by | string | No | Quien actualizo |