CRM (Clientes)
Gestiona la base de datos de clientes de tu restaurante.
Listar clientes
GET /developer/api/crm/customers
Scope: crm:read
Parámetros de query (opcionales)
| Parámetro | Tipo | Descripción |
|---|---|---|
q | string | Buscar por nombre, teléfono o email |
limit | number | Resultados a devolver (por defecto: 50, máximo: 200) |
Ejemplo
curl "https://mi-restaurante.siteat.app/developer/api/crm/customers?q=garcia&limit=10" \
-H "Authorization: Bearer sk_live_..."
Respuesta (200)
{
"success": true,
"data": {
"customers": [
{
"id": 15,
"tenant_id": 42,
"full_name": "María García",
"phone": "+34612345678",
"email": "maria@ejemplo.com",
"birthday": "1990-05-12",
"notes": "Cliente habitual, prefiere zona terraza",
"total_reservas": 12,
"ultima_visita": "2026-04-10",
"created_at": "2025-11-03T14:20:00Z"
}
],
"total": 1
}
}
Crear cliente
POST /developer/api/crm/customers
Scope: crm:write
Cuerpo de la petición (JSON)
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
full_name | string | ✅ | Nombre completo del cliente |
phone | string | — | Teléfono (formato internacional recomendado) |
email | string | — | |
birthday | string | — | Fecha de nacimiento (YYYY-MM-DD) |
notes | string | — | Notas internas sobre el cliente |
Ejemplo
curl -X POST "https://mi-restaurante.siteat.app/developer/api/crm/customers" \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"full_name": "Laura Fernández",
"phone": "+34677888999",
"email": "laura@ejemplo.com",
"birthday": "1985-08-22",
"notes": "VIP - amiga del chef"
}'
Respuesta (201)
{
"success": true,
"data": {
"id": 52,
"tenant_id": 42,
"full_name": "Laura Fernández",
"phone": "+34677888999",
"email": "laura@ejemplo.com",
"birthday": "1985-08-22",
"notes": "VIP - amiga del chef",
"created_at": "2026-04-15T14:30:00Z"
}
}
Obtener un cliente
GET /developer/api/crm/customers/{id}
Scope: crm:read
Respuesta (200)
{
"success": true,
"data": {
"id": 15,
"full_name": "María García",
"phone": "+34612345678",
"email": "maria@ejemplo.com",
"birthday": "1990-05-12",
"notes": "Cliente habitual, prefiere zona terraza",
"total_reservas": 12,
"ultima_visita": "2026-04-10",
"created_at": "2025-11-03T14:20:00Z"
}
}
Editar un cliente
PUT /developer/api/crm/customers/{id}
Scope: crm:write
Solo envía los campos que quieras modificar:
| Campo | Tipo | Descripción |
|---|---|---|
full_name | string | Nombre completo |
phone | string | Teléfono |
email | string | |
birthday | string | Fecha de nacimiento (YYYY-MM-DD) |
notes | string | Notas internas |
Ejemplo
curl -X PUT "https://mi-restaurante.siteat.app/developer/api/crm/customers/15" \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"notes": "VIP - alergia al marisco"
}'
Respuesta (200)
Devuelve el cliente actualizado con la misma estructura que el endpoint de obtener cliente.
Eliminar un cliente
DELETE /developer/api/crm/customers/{id}
Scope: crm:write
Respuesta (200)
{
"success": true,
"data": null,
"message": "Cliente eliminado correctamente"
}