Pantalla de cocina
POST
Listar comandas activas de cocina
POST /api/kds/list-station-jobs
Descripción
Devuelve el tablero de comandas en preparación, agrupadas por orden.
Detalles
Retorna las órdenes con productos pendientes de preparar, junto con cada producto, sus modificadores, notas y tiempo de servicio. Permite filtrar por estación de cocina e incluye la lista de estaciones con su carga de trabajos activos, además de las últimas comandas que quedaron listas y aún pueden recuperarse al tablero. Suma métricas del turno: comandas en cola, en preparación, listas, atrasadas, terminadas en el día y el tiempo promedio de preparación.
Permisos requeridos
kitchen.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| stationId | int | No |
min_value:1
|
| fromIso | datetime | No | — |
| sinceIso | datetime | No | — |
Paginación
| defaultLimit | 40 |
| maxLimit | 60 |
| defaultSort | firedAt |
| defaultDir | asc |
| withTotal | true |
| allowedSorts | [firedAt] |
Ejemplo de request
curl -X POST https://restofy.pro/api/kds/list-station-jobs \
-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
{
"stationId": 2
}
Response
{
"success": true,
"message": "Operación realizada correctamente",
"data": {
"orders": [
{
"orderId": 2,
"orderUuid": "6aa93f11-d8f0-44b0-a4f8-252d5ee6d738",
"orderCode": "63L-U96",
"dailyNumber": 1,
"guestCount": null,
"orderNotes": null,
"splitLabel": null,
"tableName": null,
"roomName": null,
"fulfillmentName": "Autoservicio",
"fulfillmentTypeCode": "fulfillment.counter",
"waiterName": "App Testing",
"openedByType": "human",
"openedAt": "2026-09-08T16:32:14.000Z",
"scheduledAt": null,
"firedAt": "2026-09-08T16:32:19.000Z"
}
],
"jobs": [
{
"jobId": 1,
"orderItemId": 3,
"orderId": 2,
"itemUuid": "81f1d5a7-6ee3-467d-977e-4bd50c50e4b0",
"stationId": 2,
"stationName": "Parrilla KDS 6aa038906832a",
"status": "fired",
"firedAt": "2026-09-08T16:32:19.000Z",
"preparingAt": null,
"readyAt": null,
"productName": "Cazuela de Mariscos",
"quantity": "1.0000",
"itemNotes": null,
"itemConsumptionMode": null,
"courseName": "Como plato fuerte",
"courseSortOrder": 3,
"courseIsPriority": 0,
"prepTimeMinutes": 20
}
],
"modifiers": [],
"stations": [
{
"stationId": 1,
"stationName": "Cocina Principal",
"isActive": 1,
"activeJobs": 0
},
{
"stationId": 2,
"stationName": "Parrilla KDS 6aa038906832a",
"isActive": 1,
"activeJobs": 1
}
],
"recentReady": [],
"stats": {
"queuedCount": 1,
"preparingCount": 0,
"readyCount": 0,
"lateCount": 0,
"finishedCount": 0,
"avgReadySeconds": null
},
"pagination": {
"page": 1,
"limit": 40,
"total": 1,
"totalPages": 1,
"hasNext": false,
"hasPrev": false
}
}
}