---
title: "List Agent Deployments"
method: GET
path: "/api/v1/agents/{agent_id}/deployments"
tags: ["agents"]
---

# List Agent Deployments

`GET /api/v1/agents/{agent_id}/deployments`

## Path parameters

- `agent_id` string, required

## Query parameters

- `limit` integer
- `cursor` string, nullable
- `status` string, nullable

## Response `200`

Successful Response

- PaginatedResponseDeployment
  - `items` Deployment[], required
    - `deployment_id` string, required — Deployment row id.
    - `agent_id` string, nullable — Owning agent; null for unassigned legacy deployments.
    - `model_slug` string, required — Human-readable slug this deployment serves under.
    - `model_slug_id` string, required — Id of the slug this deployment serves under.
    - `status` 'PENDING' | 'MERGING' | 'DEPLOYING' | 'DEPLOYED' | 'FAILED', required — Spanner deployment row status.
    - `role` 'production' | 'test', required
    - `is_active` boolean, required — True when this deployment currently answers for the slug.
    - `provider` 'baseten' | 'tinker'
    - `checkpoint_id` string, required — Trajectory checkpoint selected when the deployment was created.
    - `model_endpoint_id` string, nullable — Model Endpoint serving this deployment.
    - `model_id` string, nullable — Merged model backing this deployment; null until the merge lands.
    - `playground_endpoint_url` string, nullable — Per-deployment URL a test checkpoint is reachable at.
    - `base_model_slug` string, required — Base model of the source checkpoint.
    - `checkpoint_step` integer, required — Training step of the source checkpoint.
    - `output_speed` 'normal' | 'turbo' — Which GPU tier a deployment runs on: H100 (normal) or B200 (turbo).
    - `expected_concurrency` 'low' | 'medium' | 'high' — Traffic level a deployment is sized for; picks its replica count.
    - `merge_xid` string, nullable — XID of the krun job that is merging the checkpoint weights.
    - `deploy_xid` string, nullable — XID of the krun job that is deploying the merged model.
    - `created_by` string, nullable — Email of the user who requested this deployment.
    - `completed_at` string, date-time, nullable — When the deployment first became DEPLOYED; unlike updated_at, later promote/demote transitions never overwrite this.
    - `created_at` string, date-time, required — When the deployment was requested.
    - `updated_at` string, date-time, nullable — Last lifecycle transition; null until the row first moves.
    - `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.
  - `next_cursor` string, nullable
  - `has_more` boolean, required

## Changes

- **2026-09-28** `8331f8435ce8` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/trajectory/apis/trajectory-api/changes/api/v1/agents/:agent_id/deployments/get.md)

---

[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/8331f8435ce8?raw)
