> ## Documentation Index
> Fetch the complete documentation index at: https://developer.clopos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Stations

> Retrieve all preparation and service stations

## Purpose

Allows you to check printer, reminder, and status information by retrieving all stations in your POS and kitchen flows in a single call.

## HTTP Request

```http theme={null}
GET https://integrations.clopos.com/open-api/v2/stations
```

<Warning>
  This endpoint requires authentication. Include your JWT in the `x-token` header. See [Authentication](/authentication) for how to obtain a token and [Errors](/errors) for error responses.
</Warning>

## Query Parameters

<ParamField query="status" type="integer">
  Filter by station status (`1` = active, `0` = inactive).
</ParamField>

<ParamField query="can_print" type="boolean">
  Filter stations that can redirect to a printer.
</ParamField>

<ParamField query="page" type="integer" default="1">
  Page number for pagination.
</ParamField>

<ParamField query="limit" type="integer" default="50">
  Number of stations to return (1-200).
</ParamField>

## Request Example

<CodeGroup>
  ```bash curl theme={null}
  curl -X GET "https://integrations.clopos.com/open-api/v2/stations?status=1" \
    -H "x-token: oauth_example_token" \
  ```

  ```javascript javascript theme={null}
  const response = await fetch('https://integrations.clopos.com/open-api/v2/stations?status=1', {
    headers: {
      'x-token': 'oauth_example_token',
    }
  });

  const stations = await response.json();
  ```

  ```python python theme={null}
  import requests

  url = "https://integrations.clopos.com/open-api/v2/stations"
  headers = {
      "x-token": "oauth_example_token",
  }
  params = {
      "status": 1,
      "limit": 50
  }

  response = requests.get(url, headers=headers, params=params)
  stations = response.json()
  ```
</CodeGroup>

## Response

### 200 OK — List of stations

```json theme={null}
{
  "success": true,
  "data": [
    {
      "id": 1,
      "name": "Kitchen",
      "status": 1,
      "type": 1,
      "printable": 1,
      "created_at": "2026-01-13T14:08:49.000000Z",
      "updated_at": "2026-01-13T14:08:49.000000Z"
    },
    {
      "id": 2,
      "name": "Bar",
      "status": 1,
      "type": 0,
      "printable": 1,
      "created_at": "2026-01-13T14:08:49.000000Z",
      "updated_at": "2026-01-13T14:08:49.000000Z"
    },
    {
      "id": 3,
      "name": "Tandir",
      "status": 1,
      "type": 0,
      "printable": 0,
      "created_at": "2026-01-13T14:36:51.000000Z",
      "updated_at": "2026-01-13T14:36:51.000000Z"
    }
  ],
  "total": 3
}
```

### 401 Unauthorized — Authorization missing

```json theme={null}
{
  "success": false,
  "error": "unauthorized",
  "message": "Missing authentication headers"
}
```

## Field Reference

### Station object

| Field        | Type    | Description                                          |
| ------------ | ------- | ---------------------------------------------------- |
| `id`         | integer | Station identifier.                                  |
| `name`       | string  | Station name.                                        |
| `status`     | integer | `1` = active, `0` = inactive.                        |
| `type`       | integer | Station type. `1` = kitchen, `0` = other.            |
| `printable`  | integer | `1` if the station can print tickets, `0` otherwise. |
| `created_at` | string  | Creation timestamp (ISO 8601).                       |
| `updated_at` | string  | Last update timestamp (ISO 8601).                    |

## Notes

* Stations with `printable=0` are designed only for screen notifications or digital preparation processes.
* The active/inactive status of stations affects product routing on the POS side; inactive stations are not assigned to new orders.
* Adjust pagination parameters (`page`, `limit`) for performance in large restaurant chains; it is generally not necessary for a single branch.
