Listar ocasiones de comensales
POST /api/guest-occasions/list-guest-occasions
Descripción
Lista paginada de las ocasiones de visita, como cumpleaños, aniversario o negocios.
Detalles
Devuelve las ocasiones del negocio, incluidas las del sistema y las pausadas. Acepta búsqueda por nombre y orden por posición o nombre.
Permisos requeridos
admin.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| search | string | No |
max:100
|
Paginación
| defaultLimit | 50 |
| maxLimit | 100 |
| allowedSorts | sortOrder, name |
| defaultSort | sortOrder |
| defaultDir | asc |
| withTotal | true |
Ejemplo de request
curl -X POST https://restofy.pro/api/guest-occasions/list-guest-occasions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-H "X-Tenant-Key: <tenantKey>"
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-09-08T16:35:34Z
HTTP 200
Request
[]
Response
{
"success": true,
"message": "Operación realizada correctamente",
"data": {
"guestOccasions": [
{
"guestOccasionId": 1,
"name": "Cumpleaños",
"description": "Celebración de cumpleaños",
"iconFontAwesome": "fa-solid fa-cake-candles",
"sortOrder": 1,
"isSystem": 1,
"isActive": 1,
"isAvailable": 1
},
{
"guestOccasionId": 2,
"name": "Aniversario",
"description": "Celebración de aniversario",
"iconFontAwesome": "fa-solid fa-champagne-glasses",
"sortOrder": 2,
"isSystem": 1,
"isActive": 1,
"isAvailable": 1
},
{
"guestOccasionId": 3,
"name": "Pedida de Mano",
"description": "Pedida de matrimonio",
"iconFontAwesome": "fa-solid fa-ring",
"sortOrder": 3,
"isSystem": 1,
"isActive": 1,
"isAvailable": 1
},
{
"guestOccasionId": 4,
"name": "Graduación",
"description": "Celebración de graduación",
"iconFontAwesome": "fa-solid fa-graduation-cap",
"sortOrder": 4,
"isSystem": 1,
"isActive": 1,
"isAvailable": 1
},
{
"guestOccasionId": 5,
"name": "Despedida",
"description": "Despedida o reunión de adiós",
"iconFontAwesome": "fa-solid fa-hand-peace",
"sortOrder": 5,
"isSystem": 1,
"isActive": 1,
"isAvailable": 1
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 5,
"totalPages": 1,
"hasNext": false,
"hasPrev": false
}
}
}