# Capacity Settings

Time slot capacity configuration and limits

## GET /api/v1/locations/{locationId}/capacity-settings

List all capacity settings for a location

Path parameters:
- `locationId` (string, required) — Location ID

Response 200 — Default Response

```ts
{
  status?: "success"
  data?: {
    capacitySettings?: Array<{
        id: number
        locationId: number
        orderCapacity: number | null
        itemCapacity: number | null
        name: string
        priority: number
        enabled: boolean
        timeStart: string | null
        timeEnd: string | null
        validFrom: string | null
        validTo: string | null
        validOnDays: unknown[]
        createdAt: string
        updatedAt: string
      }>
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## POST /api/v1/locations/{locationId}/capacity-settings

Create a new capacity setting

Path parameters:
- `locationId` (string, required) — Location ID

Request body:

```ts
{
  orderCapacity?: number | null
  itemCapacity?: number | null
  name: string
  priority?: number
  enabled?: boolean
  timeStart?: string | null
  timeEnd?: string | null
  validFrom?: string | null
  validTo?: string | null
  validOnDays: number[]
}
```

Response 201 — Default Response

```ts
{
  status?: "success"
  data?: {
    capacitySetting?: {
      id: number
      locationId: number
      orderCapacity: number | null
      itemCapacity: number | null
      name: string
      priority: number
      enabled: boolean
      timeStart: string | null
      timeEnd: string | null
      validFrom: string | null
      validTo: string | null
      validOnDays: number[]
      createdAt: string
      updatedAt: string
    }
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## GET /api/v1/locations/{locationId}/capacity-settings/{id}

Get a single capacity setting

Path parameters:
- `locationId` (string, required) — Location ID
- `id` (string, required) — Capacity setting ID

Response 200 — Default Response

```ts
{
  status?: "success"
  data?: {
    capacitySetting?: {
      id: number
      locationId: number
      orderCapacity: number | null
      itemCapacity: number | null
      name: string
      priority: number
      enabled: boolean
      timeStart: string | null
      timeEnd: string | null
      validFrom: string | null
      validTo: string | null
      validOnDays: number[]
      createdAt: string
      updatedAt: string
    }
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## PUT /api/v1/locations/{locationId}/capacity-settings/{id}

Update an existing capacity setting

Path parameters:
- `locationId` (string, required) — Location ID
- `id` (string, required) — Capacity setting ID

Request body:

```ts
{
  orderCapacity?: number | null
  itemCapacity?: number | null
  name?: string
  priority?: number
  enabled?: boolean
  timeStart?: string | null
  timeEnd?: string | null
  validFrom?: string | null
  validTo?: string | null
  validOnDays?: number[]
}
```

Response 200 — Default Response

```ts
{
  status?: "success"
  data?: {
    capacitySetting?: {
      id: number
      locationId: number
      orderCapacity: number | null
      itemCapacity: number | null
      name: string
      priority: number
      enabled: boolean
      timeStart: string | null
      timeEnd: string | null
      validFrom: string | null
      validTo: string | null
      validOnDays: number[]
      createdAt: string
      updatedAt: string
    }
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## DELETE /api/v1/locations/{locationId}/capacity-settings/{id}

Delete a capacity setting

Path parameters:
- `locationId` (string, required) — Location ID
- `id` (string, required) — Capacity setting ID

Response 200 — Default Response

```ts
{
  status?: "success"
  data?: {
    deleted?: boolean
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## PUT /api/v1/locations/{locationId}/capacity-settings/reorder

Reorder capacity settings (update priorities)

Path parameters:
- `locationId` (string, required) — Location ID

Request body:

```ts
{
  orderedIds: number[]
}
```

Response 200 — Default Response

```ts
{
  status?: "success"
  data?: {
    capacitySettings?: Array<{
        id: number
        locationId: number
        orderCapacity: number | null
        itemCapacity: number | null
        name: string
        priority: number
        enabled: boolean
        timeStart: string | null
        timeEnd: string | null
        validFrom: string | null
        validTo: string | null
        validOnDays: unknown[]
        createdAt: string
        updatedAt: string
      }>
  }
  meta?: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```
