Restofy Docs
Horarios del negocio POST

Listar horarios

POST /api/schedules/list-schedules

Descripción

Retorna el catálogo de horarios reutilizables del restaurante.

Detalles

* Devuelve la lista paginada de horarios reutilizables del restaurante. * Cada horario incluye sus turnos: día de la semana con rango de horas o día completo. * Admite búsqueda libre por nombre.

Permisos requeridos

admin.module

Request

Nombre Tipo Requerido Reglas
search string No
max:100

Paginación

defaultLimit 50
maxLimit 100
allowedSorts name
defaultSort name
defaultDir asc
withTotal true

Ejemplo de request

curl -X POST https://restofy.pro/api/schedules/list-schedules \
  -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": {
        "schedules": [
            {
                "scheduleId": 5,
                "name": "Almuerzos",
                "description": "Turno del mediodía todos los días",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 1,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 2,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 3,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 4,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 5,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 6,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    },
                    {
                        "scheduleId": 5,
                        "dayOfWeek": 7,
                        "isAllDay": 0,
                        "timeStart": "12:00:00",
                        "timeEnd": "16:00:00"
                    }
                ]
            },
            {
                "scheduleId": 6,
                "name": "Cenas",
                "description": "Turno nocturno todos los días",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 1,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 2,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 3,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 4,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 5,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 6,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    },
                    {
                        "scheduleId": 6,
                        "dayOfWeek": 7,
                        "isAllDay": 0,
                        "timeStart": "18:00:00",
                        "timeEnd": "23:30:00"
                    }
                ]
            },
            {
                "scheduleId": 4,
                "name": "Desayunos",
                "description": "Turno de mañana todos los días",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 1,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 2,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 3,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 4,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 5,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 6,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    },
                    {
                        "scheduleId": 4,
                        "dayOfWeek": 7,
                        "isAllDay": 0,
                        "timeStart": "07:00:00",
                        "timeEnd": "12:00:00"
                    }
                ]
            },
            {
                "scheduleId": 3,
                "name": "Fines de Semana",
                "description": "Sábado y domingo",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 3,
                        "dayOfWeek": 6,
                        "isAllDay": 0,
                        "timeStart": "10:00:00",
                        "timeEnd": "23:00:00"
                    },
                    {
                        "scheduleId": 3,
                        "dayOfWeek": 7,
                        "isAllDay": 0,
                        "timeStart": "10:00:00",
                        "timeEnd": "23:00:00"
                    }
                ]
            },
            {
                "scheduleId": 7,
                "name": "Happy Hour",
                "description": "Viernes y sábado tarde",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 7,
                        "dayOfWeek": 5,
                        "isAllDay": 0,
                        "timeStart": "17:00:00",
                        "timeEnd": "20:00:00"
                    },
                    {
                        "scheduleId": 7,
                        "dayOfWeek": 6,
                        "isAllDay": 0,
                        "timeStart": "17:00:00",
                        "timeEnd": "20:00:00"
                    }
                ]
            },
            {
                "scheduleId": 2,
                "name": "Lunes a Viernes",
                "description": "Solo días hábiles de la semana",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 2,
                        "dayOfWeek": 1,
                        "isAllDay": 0,
                        "timeStart": "08:00:00",
                        "timeEnd": "22:00:00"
                    },
                    {
                        "scheduleId": 2,
                        "dayOfWeek": 2,
                        "isAllDay": 0,
                        "timeStart": "08:00:00",
                        "timeEnd": "22:00:00"
                    },
                    {
                        "scheduleId": 2,
                        "dayOfWeek": 3,
                        "isAllDay": 0,
                        "timeStart": "08:00:00",
                        "timeEnd": "22:00:00"
                    },
                    {
                        "scheduleId": 2,
                        "dayOfWeek": 4,
                        "isAllDay": 0,
                        "timeStart": "08:00:00",
                        "timeEnd": "22:00:00"
                    },
                    {
                        "scheduleId": 2,
                        "dayOfWeek": 5,
                        "isAllDay": 0,
                        "timeStart": "08:00:00",
                        "timeEnd": "22:00:00"
                    }
                ]
            },
            {
                "scheduleId": 1,
                "name": "Toda la semana",
                "description": "Horario sin restricción de día",
                "dateStart": null,
                "dateEnd": null,
                "isActive": 1,
                "isAvailable": 1,
                "periods": [
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 1,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 2,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 3,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 4,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 5,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 6,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    },
                    {
                        "scheduleId": 1,
                        "dayOfWeek": 7,
                        "isAllDay": 1,
                        "timeStart": null,
                        "timeEnd": null
                    }
                ]
            }
        ],
        "pagination": {
            "page": 1,
            "limit": 50,
            "total": 7,
            "totalPages": 1,
            "hasNext": false,
            "hasPrev": false
        }
    }
}