---
title: "List cyclers for a site"
method: GET
path: "/sites/{site_id}/cyclers"
tags: ["Sites", "Cyclers"]
---

# List cyclers for a site

`GET /sites/{site_id}/cyclers`

## Request

- Base URL: `https://api.ionworks.com`
- URL: `https://api.ionworks.com/sites/{site_id}/cyclers`
- Auth: none declared

List cyclers for a site with pagination and filtering.

Filters follow each field's policy in ``_CYCLER_FILTERS``: text fields take
``ilike.%value%``, ``project_id`` is exact-only, date fields take
``gte.value``/``lte.value``, ``created_at_gt``/``_lt`` bound a range, and
``calibration_due_at_lt`` finds cyclers due before a date. ``q`` is the
search box's free-text param and composes with all of them.

## Path parameters

- `site_id` string, uuid, required

## Query parameters

- `limit` integer
- `offset` integer
- `q` string, nullable: Free-text search on cycler name plus prefix full-text match, matching the global search. Composes with the column filters.
- `id_text` string, nullable
- `project_id` string, nullable
- `name` string, nullable
- `manufacturer` string, nullable
- `model` string, nullable
- `version` string, nullable
- `serial_number` string, nullable
- `firmware_version` string, nullable
- `hostname` string, nullable
- `created_by_email` string, nullable
- `created_at` string, nullable
- `created_at_gt` string, nullable
- `created_at_lt` string, nullable
- `updated_at` string, nullable
- `updated_at_gt` string, nullable
- `updated_at_lt` string, nullable
- `calibration_due_at` string, nullable
- `calibration_due_at_gt` string, nullable
- `calibration_due_at_lt` string, nullable
- `order_by` 'name' | 'manufacturer' | 'model' | 'version' | 'serial_number' | 'firmware_version' | 'hostname' | 'last_calibrated_at' | 'calibration_due_at' | 'created_at' | 'updated_at'
- `order` 'asc' | 'desc'

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-30** `ea3d377fec1a`: 1 breaking
  - for the `path` request parameter `site_id`, the format changed from no format to `uuid`

[Operation history](https://skmtc.dev/ionworks/apis/ionworks-api/changes/sites/:site_id/cyclers/get.md)

---

[API](https://skmtc.dev/ionworks/apis/ionworks-api.md) - [All operations](https://skmtc.dev/ionworks/apis/ionworks-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ionworks/apis/ionworks-api/revisions/abebbbc5f60a?raw)
