---
title: "List cyclers"
method: GET
path: "/cyclers"
tags: ["Cyclers"]
---

# List cyclers

`GET /cyclers`

List cyclers with pagination and filtering.

Filters follow each field's policy in ``_CYCLER_FILTERS``: text fields take
``ilike.%value%``, ``site_id``/``project_id`` are 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.

## 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
- `site_id` 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

---

[API](https://skmtc.dev/ionworks/apis/fastapi.md) · [All operations](https://skmtc.dev/ionworks/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ionworks/fastapi/revisions/7337a3cbdaf2/schema)
