---
title: "Get a specific cycler by id"
method: GET
path: "/cyclers/{cycler_id}"
tags: ["Cyclers"]
---

# Get a specific cycler by id

`GET /cyclers/{cycler_id}`

## Request

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

Retrieve a specific cycler by its ID, scoped to the selected org.

## Path parameters

- `cycler_id` string, uuid, required

## Response `200`

Successful Response

- Cycler: Model representing a cycler as returned by the API.
  - `name` string, required: Name of the cycler
  - `manufacturer` string, nullable: Manufacturer (make) of the cycler (e.g. Arbin, Maccor)
  - `model` string, nullable: Model (type) of the cycler (e.g. LBT-5V, Series 4000)
  - `version` string, nullable: Hardware/product version of the cycler. Distinct from firmware_version, which changes without the hardware changing.
  - `serial_number` string, nullable: Manufacturer serial number of the cycler
  - `firmware_version` string, nullable: Firmware revision currently installed on the cycler
  - `hostname` string, nullable: DNS name of the cycler control host on the lab network. Null for an instrument reachable only by IP.
  - `ip_address` string, ipvanyaddress, nullable: IP address of the cycler control host (IPv4 or IPv6)
  - `port` integer, nullable: TCP port the cycler control software listens on (1-65535)
  - `last_calibrated_at` string, date-time, nullable: When the cycler was last calibrated. Null means never calibrated or not tracked — which reads as unknown, not as overdue.
  - `calibration_interval_days` integer, nullable: Maximum time allowed between calibrations, in days. Null means the cycler is not on a calibration schedule.
  - `notes` string, nullable: Free-text notes about the cycler
  - `site_id` string, required: Foreign key to the parent site
  - `project_id` string, required: Project that owns this cycler
  - `id` string, required: Unique identifier for the cycler
  - `organization_id` string, required: Organization this cycler belongs to.
  - `created_by` string, nullable: User ID of the user who created this cycler
  - `created_by_email` string, nullable: Email of the user who created this cycler
  - `created_at` string, date-time, required: Timestamp when the cycler was created
  - `updated_at` string, date-time, required: Timestamp when the cycler was last updated
  - `calibration_due_at` string, date-time, nullable: When calibration next falls due: last_calibrated_at plus calibration_interval_days. Read-only — a generated database column, so it can never disagree with the two fields it derives from. Null when either is unset (the cycler is not on a schedule, or has never been calibrated).
  - `channel_ids` object[], nullable: List of channel IDs belonging to this cycler

## Other responses

- `422`: Validation Error

## Changes

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

[Operation history](https://skmtc.dev/ionworks/apis/ionworks-api/changes/cyclers/:cycler_id/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)
