Restofy Docs
Reservas POST

Listar reservas

POST /api/reservations/list-reservations

Descripción

Listado paginado de reservas filtrado por alcance temporal.

Detalles

* Filtra las reservas por su horario respecto al día actual del restaurante: today (entre 00:00 y 23:59 de hoy), upcoming (a partir de mañana 00:00) o history (anterior a hoy 00:00). * El límite del día se calcula en la zona horaria del restaurante. * La búsqueda libre opera sobre las notas, el nombre del contacto y su teléfono.

Permisos requeridos

reservations.module

Request

Nombre Tipo Requerido Reglas
scope string
enum:today,upcoming,history
search string No
max:100

Paginación

defaultLimit 50
maxLimit 100
defaultDir asc
withTotal true
allowedSorts [reservedAt, guestCount, status]

Ejemplo de request

curl -X POST https://app.restofy.co/api/reservations/list-reservations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -d '{
    "scope": "string"
}'

Los valores son demo: reemplázalos por datos reales del negocio.

Ejemplo de respuesta

Actualizado: 2026-07-15T13:20:48Z
HTTP 200

Request

{
    "scope": "today"
}

Response

{
    "success": true,
    "message": "Operación realizada correctamente",
    "data": {
        "reservations": [
            {
                "reservationId": 1,
                "reservationUuid": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbb01",
                "partyId": 1,
                "partyName": "Cliente Crédito",
                "partyPhone": "3000000099",
                "reservationAreaId": 1,
                "assignedTableId": 1,
                "guestCount": 2,
                "reservedAt": "2026-07-15T19:00:00.000Z",
                "durationMinutes": 90,
                "status": "confirmed",
                "notes": "Reserva HOY",
                "prepaidAccountId": null,
                "advanceAmountCents": null,
                "isAvailable": 1
            }
        ],
        "pagination": {
            "page": 1,
            "limit": 50,
            "total": 1,
            "totalPages": 1,
            "hasNext": false,
            "hasPrev": false
        }
    }
}