---
title: "Get Training Progress Route"
method: GET
path: "/api/v1/train/{run_id}/progress"
tags: ["training"]
---

# Get Training Progress Route

`GET /api/v1/train/{run_id}/progress`

## Request

- Base URL: `https://api.trajectory.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.trajectory.ai/api/v1/train/{run_id}/progress`
- Auth: none declared

## Path parameters

- `run_id` string, required

## Response `200`

Successful Response

- TrainingProgressResponse
  - `training_run_id` string, required: Training run whose progress is returned.
  - `status` 'pending' | 'running' | 'cancel_signaled' | 'cancelling' | 'succeeded' | 'failed' | 'cancelled', required
  - `failure` AsyncFailure
    - `type` string, required: Stable category used for exception mapping.
    - `code` string, required: Stable programmatic reason for the asynchronous failure.
    - `message` string, required: Human-readable explanation for this failure occurrence.
    - `context` object: Machine-readable values specific to this failure code.
  - `completed_steps` integer, required: Training steps of the run that have recorded a trainer metric.
  - `total_steps` integer, nullable: Steps the run's config budgets, or null when it set no budget.

---

[API](https://skmtc.dev/trajectory/apis/trajectory-api.md) - [All operations](https://skmtc.dev/trajectory/apis/trajectory-api/llms.txt) - [OpenAPI document](https://skmtc.dev/trajectory/apis/trajectory-api/revisions/5b5a8ae4b4a4?raw)
