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

# List models

`GET /v1/models`

## Request

- Base URL: `https://modelglass-api.vercel.app`
- URL: `https://modelglass-api.vercel.app/v1/models`
- Auth: HTTP bearer

All tracked models with current pricing and technical profile. Free-tier keys see the active price only; Starter+ see full history.

## Query parameters

- `provider` string
- `unit` string
- `status` 'ga' | 'preview' | 'deprecated' | 'retired'
- `arch` string

## Response `200`

Matching models.

- object
  - `ok` true, required
  - `data` ModelEntry[], required
    - `model_id` string, required
    - `name` string, required
    - `join_status` 'joined' | 'pricing_only' | 'ontology_only'
    - `limitations` string[]
    - `knowledge` Knowledge: Technical identity and comparison facts (ontology). Modality-specific facts (video, audio, 3D) appear only on models of that modality.
      - `schema_version` integer
      - `model_id` string
      - `name` string
      - `creator` string
      - `context_window` integer
      - `architecture` object
        - `type` string
        - `notes` string
      - `training` object
        - `paradigms` string[]
        - `notes` string
      - `capability_profile` object[]
        - `dimension` string
        - `rating` 'strong' | 'moderate' | 'weak' | 'variable' | 'unknown'
        - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
      - `benchmarks` BenchmarkResult[]
        - `benchmark` string
        - `score` union
          - number
          - string
        - `config` string
        - `source` object
          - `url` string, uri
          - `type` 'paper' | 'independent' | 'leaderboard' | 'vendor'
          - `verified_at` string, date
        - `name` string
        - `value` number
        - `unit` string
        - `source_url` string, uri
        - `measured_at` string, date
        - `harness` string
        - `harness_version` string
        - `variant` string
        - `score_date` string
        - `baseline` number
        - `recorded_at` string, date
        - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
      - `benchmark_notes` string
      - `use_cases` string[]
      - `routing_guidance` string
      - `limitations` string[]
      - `avoid_use` object[]
        - `context` string
        - `description` string
        - `severity` string
        - `source_type` string
        - `source_url` string, uri
      - `citations` object[]
        - `title` string
        - `url` string, uri
        - `note` string
      - `origin` object
        - `lab` string
        - `country` string
        - `founded` union
          - string
          - integer
      - `license` object
        - `type` string
        - `commercial_use` boolean
        - `url` string
      - `ethical_notes` string[]
      - `training_data_notes` string
      - `background` string[]
      - `capability_confidence` 'high' | 'medium' | 'low'
      - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
      - `sub_modality` string
      - `api_availability` string
      - `features_and_differences` object
      - `generation_modes` string[]
      - `supported_resolutions` string[]
      - `fps_options` integer[]
      - `max_clip_duration` number
      - `native_audio` boolean
      - `watermark` boolean
      - `languages_supported` integer
      - `voice_count` integer
      - `voice_cloning` boolean
      - `ssml_support` boolean
      - `streaming` boolean
      - `max_polygons` integer
    - `offerings` Offering[], required
      - `schema_version` integer
      - `slug` string, required
      - `name` string, required
      - `provider` string, required: Provider slug.
      - `provider_model_id` string: The model name in the provider's own API.
      - `modality` string: Coarse modality group, e.g. `image`, `llm`, `video`, `tts`, `stt`, `music`, `3d-generation`. `model.modality` is the finer task type (e.g. `text-to-video`).
      - `quality_tier` 'fast' | 'standard' | 'premium'
      - `category` 'llm' | 'search-grounded'
      - `model` object, required
        - `id` string, required
        - `creator` string, required
        - `family` string
        - `modality` string, required
        - `status` 'ga' | 'preview' | 'deprecated' | 'retired', required
        - `released` string
        - `generation` 'current' | 'previous'
        - `derived_from` object[]
          - `model_id` string
          - `relationship` string
        - `input_types` string[]
        - `output_formats` string[]
        - `open_weights` boolean
      - `capabilities` object
      - `normalization` object
      - `closest_competitors` object[]
        - `slug` string, required
        - `step_distance` integer, required
        - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
      - `search_context_pricing` object
        - `low` Price
          - `amount` number, required
          - `currency` string, required
          - `unit` string, required: Billing unit. Current values: `per_image`, `per_megapixel`, `per_second`, `per_step`, `per_clip`, `per_1m_tokens_input`, `per_1m_tokens_output`, `per_1m_tokens`, `per_1k_tokens_input`, `per_1k_tokens_output`, `per_request`, `per_month`, `per_credit`, `per_1m_characters`, `per_minute`, `per_generation`, `per_1k_requests`, `per_1m_tokens_citation`, `per_1m_tokens_reasoning`, `per_1m_tokens_cache_read`, `per_1m_tokens_cache_write`, `per_gpu_second`. New units are added without a schema_version bump, so treat an unknown unit as 'not comparable' rather than an error. `per_1m_tokens_cache_read` and `per_1m_tokens_cache_write` are prompt-cache rates: real prices, never a model's headline price.
          - `region` string
          - `hardware` string
          - `effective_from` string, date, required
          - `effective_to` string, date: Absent while current.
          - `source` object, required
            - `url` string, uri, required
            - `verified_at` string, date, required
            - `method` 'manual' | 'automated', required
          - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
          - `recorded_at` string, date: Date Modelglass first recorded this row (set on correction replacement rows).
          - `corrected` object: Present when this row replaces a price Modelglass recorded wrongly for these dates. The wrong row itself is never served.
            - `at` string, date, required: When the wrong row was corrected.
            - `note` string, required: A fixed public sentence saying this row replaces a wrongly recorded price.
        - `medium` Price
          - `amount` number, required
          - `currency` string, required
          - `unit` string, required: Billing unit. Current values: `per_image`, `per_megapixel`, `per_second`, `per_step`, `per_clip`, `per_1m_tokens_input`, `per_1m_tokens_output`, `per_1m_tokens`, `per_1k_tokens_input`, `per_1k_tokens_output`, `per_request`, `per_month`, `per_credit`, `per_1m_characters`, `per_minute`, `per_generation`, `per_1k_requests`, `per_1m_tokens_citation`, `per_1m_tokens_reasoning`, `per_1m_tokens_cache_read`, `per_1m_tokens_cache_write`, `per_gpu_second`. New units are added without a schema_version bump, so treat an unknown unit as 'not comparable' rather than an error. `per_1m_tokens_cache_read` and `per_1m_tokens_cache_write` are prompt-cache rates: real prices, never a model's headline price.
          - `region` string
          - `hardware` string
          - `effective_from` string, date, required
          - `effective_to` string, date: Absent while current.
          - `source` object, required
            - `url` string, uri, required
            - `verified_at` string, date, required
            - `method` 'manual' | 'automated', required
          - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
          - `recorded_at` string, date: Date Modelglass first recorded this row (set on correction replacement rows).
          - `corrected` object: Present when this row replaces a price Modelglass recorded wrongly for these dates. The wrong row itself is never served.
            - `at` string, date, required: When the wrong row was corrected.
            - `note` string, required: A fixed public sentence saying this row replaces a wrongly recorded price.
        - `high` Price
          - `amount` number, required
          - `currency` string, required
          - `unit` string, required: Billing unit. Current values: `per_image`, `per_megapixel`, `per_second`, `per_step`, `per_clip`, `per_1m_tokens_input`, `per_1m_tokens_output`, `per_1m_tokens`, `per_1k_tokens_input`, `per_1k_tokens_output`, `per_request`, `per_month`, `per_credit`, `per_1m_characters`, `per_minute`, `per_generation`, `per_1k_requests`, `per_1m_tokens_citation`, `per_1m_tokens_reasoning`, `per_1m_tokens_cache_read`, `per_1m_tokens_cache_write`, `per_gpu_second`. New units are added without a schema_version bump, so treat an unknown unit as 'not comparable' rather than an error. `per_1m_tokens_cache_read` and `per_1m_tokens_cache_write` are prompt-cache rates: real prices, never a model's headline price.
          - `region` string
          - `hardware` string
          - `effective_from` string, date, required
          - `effective_to` string, date: Absent while current.
          - `source` object, required
            - `url` string, uri, required
            - `verified_at` string, date, required
            - `method` 'manual' | 'automated', required
          - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
          - `recorded_at` string, date: Date Modelglass first recorded this row (set on correction replacement rows).
          - `corrected` object: Present when this row replaces a price Modelglass recorded wrongly for these dates. The wrong row itself is never served.
            - `at` string, date, required: When the wrong row was corrected.
            - `note` string, required: A fixed public sentence saying this row replaces a wrongly recorded price.
      - `tiers` Tier[], required
        - `id` string, required
        - `label` string, required
        - `attributes` object
        - `pricing` Price[], required
          - `amount` number, required
          - `currency` string, required
          - `unit` string, required: Billing unit. Current values: `per_image`, `per_megapixel`, `per_second`, `per_step`, `per_clip`, `per_1m_tokens_input`, `per_1m_tokens_output`, `per_1m_tokens`, `per_1k_tokens_input`, `per_1k_tokens_output`, `per_request`, `per_month`, `per_credit`, `per_1m_characters`, `per_minute`, `per_generation`, `per_1k_requests`, `per_1m_tokens_citation`, `per_1m_tokens_reasoning`, `per_1m_tokens_cache_read`, `per_1m_tokens_cache_write`, `per_gpu_second`. New units are added without a schema_version bump, so treat an unknown unit as 'not comparable' rather than an error. `per_1m_tokens_cache_read` and `per_1m_tokens_cache_write` are prompt-cache rates: real prices, never a model's headline price.
          - `region` string
          - `hardware` string
          - `effective_from` string, date, required
          - `effective_to` string, date: Absent while current.
          - `source` object, required
            - `url` string, uri, required
            - `verified_at` string, date, required
            - `method` 'manual' | 'automated', required
          - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
          - `recorded_at` string, date: Date Modelglass first recorded this row (set on correction replacement rows).
          - `corrected` object: Present when this row replaces a price Modelglass recorded wrongly for these dates. The wrong row itself is never served.
            - `at` string, date, required: When the wrong row was corrected.
            - `note` string, required: A fixed public sentence saying this row replaces a wrongly recorded price.
      - `notes` string: Public commentary for a reader using this data (e.g. a sale price or regional caveat). May be absent.
  - `meta` ResponseMeta, required
    - `artifact_version` integer, required
    - `built_at` string, date-time, required
    - `count` integer: Item count when `data` is a collection.

## Other responses

- `401`: Missing, unknown, or revoked API key (UNAUTHORIZED / NOT_FOUND).
- `429`: Over the plan's daily rate limit (RATE_LIMITED).
- `500`: Unexpected server error (INTERNAL).

---

[API](https://skmtc.dev/modelglass/apis/modelglass-read-api.md) · [All operations](https://skmtc.dev/modelglass/apis/modelglass-read-api/llms.txt) · [OpenAPI document](https://skmtc.dev/modelglass/apis/modelglass-read-api/revisions/5948ffa60462?raw)
