Restofy Docs
Reservas del comensal POST

Zonas del restaurante para reservar

POST /api/diner-reservations/list-areas

Descripción

Devuelve las zonas donde el cliente puede reservar, con sus días disponibles.

Detalles

Recibe la dirección pública del restaurante y devuelve las zonas que aceptan reservas, con su descripción, el rango de personas por grupo y el depósito que piden, si piden. Cada zona trae los días en que se puede reservar, ya calculados contra su horario y su anticipación. Suma las ocasiones especiales que el cliente puede marcar al reservar.

Permisos requeridos

public

Request

Nombre Tipo Requerido Reglas
slug string Sí
min:1 max:63

Respuesta

Campos que devuelve dentro de data. Nada fuera de esta lista sale en la respuesta.

Campo Tipo Descripción
areas array Zonas donde se puede reservar
areas[].uuid string Identificador de la zona
areas[].name string Nombre de la zona
areas[].description string Admite vacío Descripción de la zona
areas[].minPartySize int Mínimo de personas por reserva
areas[].maxPartySize int Máximo de personas por reserva
areas[].advance object Admite vacío Depósito que pide la zona; vacío si no pide
areas[].advance.chargeType string Cómo se cobra: por reserva o por persona
areas[].advance.amountCents int Monto del depósito, en centavos
areas[].advance.holdMinutes int Minutos de plazo para pagarlo
areas[].advance.terms string Admite vacío Condiciones del depósito
areas[].days array Días en que se puede reservar
areas[].days[].date string Día en la zona horaria del restaurante (AAAA-MM-DD)
areas[].days[].iso datetime Mediodía de ese día, para mostrarlo
areas[].days[].isToday bool Si es hoy
areas[].days[].isTomorrow bool Si es mañana
occasions array Ocasiones especiales que se pueden marcar
occasions[].id int Identificador de la ocasión
occasions[].name string Nombre de la ocasión
occasions[].icon string Admite vacío Ícono de la ocasión

Ejemplo de request

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

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

Ejemplo de respuesta

Actualizado: 2026-10-09T02:12:12Z
HTTP 200

Request

{
    "slug": "restofy_test_dinerreservation_2238_1791511161_tenant"
}

Response

{
    "success": true,
    "message": "Operación realizada correctamente",
    "data": {
        "areas": [
            {
                "uuid": "0be2132e-c385-11f1-a755-a2f78ac020f7",
                "name": "Reservas a26e9e",
                "description": null,
                "minPartySize": 2,
                "maxPartySize": 6,
                "advance": null,
                "days": [
                    {
                        "date": "2026-10-09",
                        "iso": "2026-10-09T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": true
                    },
                    {
                        "date": "2026-10-10",
                        "iso": "2026-10-10T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-11",
                        "iso": "2026-10-11T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-12",
                        "iso": "2026-10-12T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-13",
                        "iso": "2026-10-13T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-14",
                        "iso": "2026-10-14T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-15",
                        "iso": "2026-10-15T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-16",
                        "iso": "2026-10-16T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-17",
                        "iso": "2026-10-17T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-18",
                        "iso": "2026-10-18T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-19",
                        "iso": "2026-10-19T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-20",
                        "iso": "2026-10-20T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-21",
                        "iso": "2026-10-21T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-22",
                        "iso": "2026-10-22T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-23",
                        "iso": "2026-10-23T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-24",
                        "iso": "2026-10-24T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-25",
                        "iso": "2026-10-25T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-26",
                        "iso": "2026-10-26T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-27",
                        "iso": "2026-10-27T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-28",
                        "iso": "2026-10-28T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-29",
                        "iso": "2026-10-29T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-30",
                        "iso": "2026-10-30T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-10-31",
                        "iso": "2026-10-31T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-01",
                        "iso": "2026-11-01T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-02",
                        "iso": "2026-11-02T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-03",
                        "iso": "2026-11-03T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-04",
                        "iso": "2026-11-04T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-05",
                        "iso": "2026-11-05T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-06",
                        "iso": "2026-11-06T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    },
                    {
                        "date": "2026-11-07",
                        "iso": "2026-11-07T17:00:00.000Z",
                        "isToday": false,
                        "isTomorrow": false
                    }
                ]
            }
        ],
        "occasions": [
            {
                "id": 1,
                "name": "Cumpleaños",
                "icon": "fa-solid fa-cake-candles"
            },
            {
                "id": 2,
                "name": "Aniversario",
                "icon": "fa-solid fa-champagne-glasses"
            },
            {
                "id": 3,
                "name": "Pedida de Mano",
                "icon": "fa-solid fa-ring"
            },
            {
                "id": 4,
                "name": "Graduación",
                "icon": "fa-solid fa-graduation-cap"
            },
            {
                "id": 5,
                "name": "Despedida",
                "icon": "fa-solid fa-hand-peace"
            }
        ]
    }
}