---
title: "List Capabilities"
method: GET
path: "/tools/models"
tags: ["accepts-api-key"]
---

# List Capabilities

`GET /tools/models`

## Request

- Base URL: `https://api.tellers.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tellers.ai/tools/models`
- Auth: none declared

Describe every `/tools/*` capability and the options each accepts.

## Headers

- `x-api-key` string, nullable
- `authorization` string, nullable

## Response `200`

Successful Response

- ToolsCapabilities: Every ``/tools/*`` capability, keyed by area. Grouped rather than returned as one flat list so a client can jump straight to the area it cares about — ``image`` to pick a model, ``search_me`` to see which search modes exist — instead of filtering.
  - `video` VideoCapability, required
    - `models` VideoModelCapability[], required
      - `id` string, required: Value to pass as `model`.
      - `tool_id` string, required: The agent tool backing this model. Join to `available_agent_tools` in GET /settings for its display name, description and pricing — kept there rather than duplicated here so there is one source of truth. Several models can share a tool.
      - `required` string[], required: Request fields this model cannot do without. Everything else in the request schema is optional.
      - `formats` string[], required: Aspect ratios acted on.
      - `resolutions` string[], required: Resolutions acted on. Empty = field ignored.
      - `supports_input_frame` boolean, required: Whether `input_frame` (start frame) is used.
      - `supports_output_frame` boolean, required: Whether `output_frame` (end frame) is used. Pair it with `input_frame`; some models reject an end frame on its own.
      - `supports_input_audio` boolean, required: Whether `input_audio` (audio reference) is used.
      - `supports_frame_timestamp` boolean, required: Whether a frame reference may pin a `timestamp_seconds` / `is_last_frame`. False means only a bare asset id is accepted.
      - `format_requires_resolution` boolean: This model only acts on `format` when `resolution` is also given; sent alone it would be ignored, so it is rejected.
      - `format_ignored_with_input_frame` boolean: This model takes its aspect ratio from `input_frame` whenever one is given; `format` sent alongside would be ignored, so the pair is rejected. Crop the frame to the shape you want instead.
      - `supports_audio_range` boolean, required: Whether `input_audio` may pin a time range. False means only a bare asset id is accepted.
      - `max_char` integer, nullable: Longest `prompt` accepted, in characters. None = unbounded.
  - `image` ImageCapability, required
    - `models` ImageModelCapability[], required
      - `id` string, required: Value to pass as `model`.
      - `tool_id` string, required: The agent tool backing this model. Join to `available_agent_tools` in GET /settings for its display name, description and pricing — kept there rather than duplicated here so there is one source of truth. Several models can share a tool.
      - `required` string[], required: Request fields this model cannot do without. Everything else in the request schema is optional.
      - `formats` string[], required: Aspect ratios acted on. Empty = field ignored.
      - `resolutions` string[], required: Resolutions acted on. Empty = field ignored.
      - `supports_input_frame` boolean, required: Whether `input_frame` (source image) is used.
      - `supports_frame_timestamp` boolean, required: Whether `input_frame` may pin a `timestamp_seconds` / `is_last_frame`. False means only a bare asset id is accepted.
      - `max_char` integer, nullable: Longest `prompt` accepted, in characters. None = unbounded.
  - `audio` AudioCapability, required
    - `models` AudioModelCapability[], required
      - `id` string, required: Value to pass as `model`.
      - `tool_id` string, required: The agent tool backing this model. Join to `available_agent_tools` in GET /settings for its display name, description and pricing — kept there rather than duplicated here so there is one source of truth. Several models can share a tool.
      - `required` string[], required: Request fields this model cannot do without. Everything else in the request schema is optional.
      - `min` number, required: Shortest `duration_seconds` accepted, in seconds.
      - `max` number, required: Longest `duration_seconds` accepted, in seconds.
      - `max_char` integer, nullable: Longest `prompt` accepted, in characters. None = unbounded.
  - `tts` TtsCapability, required
    - `models` SpeechModelCapability[], required
      - `id` string, required: Value to pass as `model`.
      - `tool_id` string, required: The agent tool backing this model. Join to `available_agent_tools` in GET /settings for its display name, description and pricing — kept there rather than duplicated here so there is one source of truth. Several models can share a tool.
      - `required` string[], required: Request fields this model cannot do without. Everything else in the request schema is optional.
      - `max_char` integer, nullable: Longest `prompt` accepted, in characters. None = unbounded.
  - `search_stock` SearchStockCapability, required
    - `required` string[], required
    - `types` string[], required: Values accepted for `type`.
    - `formats` string[], required: Values accepted for `format`.
    - `min_limit` integer, required
    - `max_limit` integer, required
  - `search_me` SearchMeCapability, required
    - `required` string[], required
    - `search_modes` string[], required: Values accepted for `search_mode`.
    - `file_types` string[], required: Values accepted for `file_type`.
    - `formats` string[], required: Values accepted for `format`.
    - `min_limit` integer, required
    - `max_limit` integer, required
    - `supports_folder` boolean
  - `search_voices` SearchVoicesCapability, required
    - `required` string[], required
    - `min_limit` integer, required
    - `max_limit` integer, required
    - `supports_language` boolean

## Other responses

- `422`: Validation Error

---

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