# Time Slots

Available time slots for orders and bookings

## GET /api/v1/locations/{locationId}/time-slots/{date}

Get time slots for a location on a specific date

Generates available time slots for pickup/ordering at a location on a specific date.

Time slots are generated based on:
- The location's opening hours from the schedules system
- The location's configured time slot duration (e.g., 10 or 15 minutes)
- Any exceptions (holidays, special closures)
- When `menuLayoutIds` is given, the schedules of those menu layouts: a slot is kept only if
  every scheduled layout is open at both its start and its end

If the location is closed on the requested date (either by regular hours or exception),
an empty time slots array is returned.

**Note:** This endpoint requires API key authentication.

Query parameters:
- `menuLayoutIds` (string, optional) — Comma-separated menu layout ids (root layouts and nested groups) the cart was ordered from. Only slots inside the schedules of all of them are returned; ids that are not layout ids are ignored.

Path parameters:
- `locationId` (string, required) — Location ID
- `date` (string, required) — Date in YYYY-MM-DD format

Response 200 — Time slots retrieved successfully

```ts
{
  status?: "success"
  data?: {
    timeSlots: Array<{
        startsAt: string // date-time
        endsAt: string // date-time
        capacities?: { … } | null
      }>
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```
