---
title: "List planned measurements for a project"
method: GET
path: "/projects/{project_id}/planned_measurements"
tags: ["Planned Measurements"]
---

# List planned measurements for a project

`GET /projects/{project_id}/planned_measurements`

List a project's planned measurements.

``name`` supports Supabase filter operators (e.g. ``ilike.%formation%``
for a partial match, ``eq.Formation`` for an exact match).

``q`` is the search box's free-text query, which also matches the related
names the table shows; it composes with the column filters above.

## Path parameters

- `project_id` string, required

## Query parameters

- `status` 'requested' | 'scheduled' | 'in_progress' | 'completed' | 'cancelled' — Lifecycle state for a planned measurement.
- `channel_id` string, nullable
- `name` string, nullable
- `q` string, nullable — Free-text search on the plan name plus prefix full-text match on the protocol, cell spec, program, cycler and channel names the scheduler table displays, matching the global search.
- `limit` integer
- `offset` integer
- `order_by` 'planned_start_time' | 'planned_end_time' | 'created_at' | 'updated_at' | 'name' | 'status'
- `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)
