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

# List model endpoints

`GET /models`

Returns model gateway endpoints configured in the workspace. Each model represents a proxy to an external LLM provider (OpenAI, Anthropic, etc.) with unified access control. Starting with API version 2026-04-28 the response is wrapped in `{data, meta}` and supports cursor pagination via the `cursor` and `limit` query parameters; older versions keep returning a bare array with all models.

## Query parameters

- `cursor` string
- `limit` integer
- `sort` 'createdAt:desc' | 'createdAt:asc' | 'name:asc' | 'name:desc'
- `q` string
- `anchor` 'end'

## Response `200`

successful operation

- ModelList — Cursor-paginated list of model gateway endpoints. Returned starting with API version 2026-04-28; older API versions return a bare array.
  - `data` Model[] — Page of models.
    - `events` CoreEvent[] — Events happening on a resource deployed on Blaxel
      - `canaryRevision` string — Canary revisionID link to the event
      - `message` string — Event message
      - `revision` string — RevisionID link to the event
      - `status` string — Event status
      - `time` string — Event time
      - `type` string — Event type
    - `metadata` Metadata, required — Owner fields for Persistence
      - `createdAt` string — The date and time when the resource was created
      - `updatedAt` string — The date and time when the resource was updated
      - `createdBy` string — The user or service account who created the resource
      - `updatedBy` string — The user or service account who updated the resource
      - `displayName` string — Human-readable name for display in the UI. Can contain spaces and special characters, max 63 characters.
      - `externalId` string — Caller-owned identifier for external lookups. Max 64 chars, alphanumeric + dash.
      - `labels` MetadataLabels — Key-value pairs for organizing and filtering resources. Labels can be used to categorize resources by environment, project, team, or any custom taxonomy.
      - `name` string, required — Unique identifier for the resource within the workspace. Must be lowercase alphanumeric with hyphens, max 49 characters. Immutable after creation.
      - `plan` string — Billing plan tier applied to this resource (inherited from workspace account)
      - `url` string — Auto-generated endpoint URL for accessing this resource (for agents, functions, models, sandboxes)
      - `workspace` string — Name of the workspace this resource belongs to (read-only, set automatically)
    - `spec` ModelSpec, required — Configuration for a model gateway endpoint including provider type, credentials, and access policies
      - `enabled` boolean — When false, the model endpoint is disabled and will not accept inference requests
      - `flavors` Flavor[] — Types of hardware available for deployments
        - `name` string — Flavor name (e.g. t4)
        - `type` 'cpu' | 'gpu' — Flavor type (e.g. cpu, gpu)
      - `integrationConnections` string[]
      - `policies` string[]
      - `runtime` ModelRuntime — Configuration identifying which external LLM provider and model this gateway endpoint proxies to
        - `endpointName` string — Provider-specific endpoint name (e.g., HuggingFace Inference Endpoints name)
        - `generation` 'mk3' | 'mk2' — Infrastructure generation. Empty (default) uses the classic deployment path. mk3 deploys through the model-gateway on microVM clusters.
        - `model` string — Model identifier at the provider (e.g., gpt-4.1, claude-sonnet-4-20250514, mistral-large-latest)
        - `organization` string — Organization or account identifier at the provider (required for some providers like OpenAI)
        - `type` 'hf_private_endpoint' | 'hf_public_endpoint' | 'huggingface' | 'public_model' | 'mcp' | 'openai' | 'anthropic' | 'gemini' | 'mistral' | 'deepseek' | 'cohere' | 'cerebras' | 'xai' | 'vertexai' | 'azure-openai-service' | 'azure-ai-inference' | 'azure-marketplace' | 'groq' — LLM provider type determining the API protocol and authentication method
      - `sandbox` boolean — When true, uses sandbox/test credentials from the integration connection
    - `status` 'DELETING' | 'TERMINATED' | 'FAILED' | 'DEACTIVATED' | 'DEACTIVATING' | 'UPLOADING' | 'BUILDING' | 'DEPLOYING' | 'DEPLOYED' | 'BUILT' — Deployment status of a resource deployed on Blaxel
  - `meta` PaginationMeta — Pagination metadata returned alongside a page of listing results. Always present on listing endpoints starting with API version 2026-04-28.
    - `hasMore` boolean — True when more pages are available beyond the current one.
    - `nextCursor` string — Opaque cursor to pass back as the `cursor` query param for the next page. Empty when there are no more pages.
    - `total` integer — Total number of items in the workspace, ignoring the current page's filters. Lets the UI render "page X of Y" without walking the cursor chain. Computed from the hash-only metadata.workspace GSI count, so search (`q`) does not narrow it.

## Other responses

- `401` — Unauthorized - Invalid or missing authentication credentials
- `403` — Forbidden - Insufficient permissions to list models
- `500` — Internal server error

---

[API](https://skmtc.net/blaxel/apis/blaxel-control-plane.md) · [All operations](https://skmtc.net/blaxel/apis/blaxel-control-plane/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/blaxel/blaxel-control-plane/versions/dfa264bc72ee/schema)
