---
title: "List Models"
method: GET
path: "/models"
tags: ["Models"]
---

# List Models

`GET /models`

## Request

- Base URL: `https://api.hedra.com/v3`
- URL: `https://api.hedra.com/v3/models`
- Auth: none required

## Query parameters

- `modality` 'image' | 'video' | 'audio' | 'text': The kind of output a model produces — the axis `?modality=` filters on.

## Response `200`

Successful Response

- ModelListResponse
  - `data` ModelSummary[], required: This page of items.
    - `id` string, required: The model's public id — the value POST /v3/models/{model} takes.
    - `modality` 'image' | 'video' | 'audio' | 'text', required: The kind of output a model produces — the axis `?modality=` filters on.
    - `name` string, nullable: Human-readable name.
    - `description` string, nullable: One-line summary of what the model does.
    - `price_description` string: Short USD pricing summary for this model. Exact cost depends on input.
    - `logo_url` string, nullable: URL of the provider's logo.
    - `context_length` integer, nullable: A chat model's context window in tokens; null for other models.
    - `max_output_tokens` integer, nullable: The largest `max_tokens` a chat model accepts; null for other models.
  - `next_cursor` string, nullable, required: Opaque cursor for the next page, or null when this response completes the list. Always present. Endpoints that serve the whole collection at once always return null.

## Other responses

- `400`: Invalid or failed-validation request.
- `403`: Insufficient scope or plan.
- `404`: Resource not found.
- `429`: Rate limit exceeded.
- `500`: Internal error.

## Changes

- **2026-10-16** `06692d16e78a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hedra-labs/apis/hedra-api/changes/models/get.md)

---

[API](https://skmtc.dev/hedra-labs/apis/hedra-api.md) - [All operations](https://skmtc.dev/hedra-labs/apis/hedra-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hedra-labs/apis/hedra-api/revisions/6ef35a11cefe?raw)
