---
title: "Read analysis data as columnar JSON, at the caller's density"
method: GET
path: "/analyses/{analysis_id}/series"
tags: ["Analyses"]
---

# Read analysis data as columnar JSON, at the caller's density

`GET /analyses/{analysis_id}/series`

Return analysis columns as ``{name: [values]}``, windowed and decimated.

The counterpart to ``/download-url``: that hands the browser the whole parquet, which
is what "save this file" needs and what drawing it does not. Supports semantic zoom —
refetch with ``x_min``/``x_max`` and a width-derived ``max_points`` on each gesture.

## Path parameters

- `analysis_id` string, required

## Query parameters

- `x` string, required — Column plotted on x; also the axis binned on
- `columns` string, required — Comma-separated columns to return
- `max_points` integer, nullable — Width-derived row ceiling. Omit to return the window undecimated.
- `x_min` number, nullable — Lower x bound (inclusive)
- `x_max` number, nullable — Upper x bound (inclusive)

## 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)
