---
title: "Get Validation Plot Data"
method: GET
path: "/pipelines/validations/{job_id}/plot_data"
tags: ["Pipeline"]
---

# Get Validation Plot Data

`GET /pipelines/validations/{job_id}/plot_data`

## Request

- Base URL: `https://api.ionworks.com`
- URL: `https://api.ionworks.com/pipelines/validations/{job_id}/plot_data`
- Auth: none declared

Return decimated trace data for a single validation or data-fit plot.

Reads the stored ``validation_plot_config`` from the job's metadata blob,
extracts the requested plot, filters to the given x-range, and downsamples
to at most ``max_points`` per trace. Supports semantic zoom: callers refetch
with ``x_min``/``x_max`` set to the current viewport on each zoom event.

``max_points`` is a per-trace ceiling, and a figure may hold several traces, so it
is reduced where the whole response would otherwise exceed the payload cap — see
``src.jobs.plot_data._payload_capped_budget``.

## Path parameters

- `job_id` string, uuid, required

## Query parameters

- `objective_name` string, required: Objective name within validation_plot_config
- `plot_index` integer: Index into the plots list for this objective
- `max_points` integer: Maximum points per trace
- `x_min` number, nullable: Lower x-range bound (inclusive)
- `x_max` number, nullable: Upper x-range bound (inclusive)

## Response `200`

Successful Response

- ValidationPlotDataResponse: Response from GET /pipelines/{validations|datafits}/{job_id}/plot_data. Contains decimated trace data for a single validation plot, filtered to the requested x-range and downsampled to at most ``max_points`` per trace.
  - `type` string, nullable
  - `traces` ValidationPlotTrace[], required
    - `name` string, required
    - `x` number[], required
    - `y` number[], required
  - `x_full_min` number, nullable
  - `x_full_max` number, nullable
  - `layout` object, required

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-30** `ea3d377fec1a`: 1 breaking
  - for the `path` request parameter `job_id`, the format changed from no format to `uuid`
- **2026-09-09** `48c041ad4800`: 1 info
  - added the optional property `type` to the response with the `200` status

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