---
title: "List Fine Tuned Inventory"
method: GET
path: "/v1/fine-tuned-models"
tags: ["models"]
---

# List Fine Tuned Inventory

`GET /v1/fine-tuned-models`

## Request

- Base URL: `https://api.pioneer.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.pioneer.ai/v1/fine-tuned-models`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/pioneer/apis/brain-api/docs/v1/fine-tuned-models/get.ts> (a function with typed inputs; its response is checked against the schema)

List the request team's deployable model inventory with live traffic.

Args:
    auth: Authenticated caller; inventory is scoped to the team the
        request authenticated against -- the active team for a JWT, the
        key's bound team for an API key (LD16).
    cursor: Opaque cursor from a previous page.
    limit: Projects per page.

Returns:
    One page of projects with their variants and window traffic.

Raises:
    HTTPException: 400 when the cursor is malformed.

## Query parameters

- `cursor` string, nullable: Cursor from a previous page; omit for the first page.
- `limit` integer: Projects per page.

## Response `200`

Successful Response

- FineTunedInventoryResponse: A page of fine-tuned inventory joined with live traffic.
  - `projects` InventoryProject[], required: Accessible projects on this page.
    - `project_id` string, required: Project identifier.
    - `name` string, required: Project name.
    - `visibility` 'private' | 'team', required: Project visibility.
    - `current_model_id` string, nullable: Raw active_model_id pinned on the project, if any.
    - `base_models` InventoryBaseModelGroup[], required: Base-model groups, most recently trained first.
      - `base_model` string, required: HuggingFace identifier of the base model.
      - `variants` InventoryVariant[], required: Variants derived from this base model.
        - `kind` 'lora' | 'full' | 'base', required: Serving-leg kind of this variant.
        - `variant_id` string, required: Training-job UUID, or the catalog model id when kind is 'base'.
        - `training_job_id` string, nullable: Training job behind this variant; null for a base model.
        - `display_name` string, nullable: Customer-facing model name.
        - `version_number` string, nullable: Version within the training lineage; null for a base model.
        - `root_job_id` string, nullable: First job in this variant's version chain; null for v1 and base models.
        - `model_kind` 'lora' | 'full', nullable: Fine-tune kind the UI may label. Null when the persisted training type is unrecognised, so no claim is made.
        - `artifact_status` 'ready' | 'not_ready', required: Whether a servable artifact was recorded for this variant.
        - `is_deployable` boolean, required: Whether this variant may be promoted to serve.
        - `deployability_reason` string, nullable: Why the variant is not deployable; null when it is.
        - `is_current_model` boolean, required: Whether the project's active_model_id points at this variant.
        - `created_at` string, date-time, nullable: When training was created.
        - `completed_at` string, date-time, nullable: When training finished.
        - `traffic` VariantTraffic: Five-minute traffic counters for one variant.
          - `state` 'receiving' | 'inactive' | 'unknown', required: Whether the variant served traffic in the window.
          - `attempts` integer, required: Qualifying customer attempts in the window.
          - `successes` integer, required: Attempts that produced a usable response.
          - `failures` integer, required: Attempts that failed; counted separately from successes.
          - `last_seen_at` string, date-time, nullable: Timestamp of the most recent attempt, if any.
    - `variants_truncated` boolean: True when the project has more variants than one page returns; the most recent are kept.
  - `traffic_window_seconds` integer, required: Width of the aggregated traffic window, in seconds.
  - `traffic_status` 'available' | 'unavailable', required: 'unavailable' when the traffic read failed; rows then carry null traffic.
  - `next_cursor` string, nullable: Cursor for the next page; null on the last page.
  - `has_more` boolean, required: Whether more projects remain after this page.

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-24** `0e5e86e2bae5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pioneer/apis/brain-api/changes/v1/fine-tuned-models/get.md)

---

[API](https://skmtc.dev/pioneer/apis/brain-api.md) - [All operations](https://skmtc.dev/pioneer/apis/brain-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pioneer/apis/brain-api/revisions/0e5e86e2bae5?raw)
