Deployments API

Find concrete provider deployments by model, region, mode, price availability, and required capability.

List deployments

GET/v1/deploymentsAuthentication: Optional
cURL
curl "https://api.use-allm.com/v1/deployments?model=anthropic%2Fclaude-haiku-4.5&capability=tool_calling&region=eu&has_pricing=true" \
  -H "Authorization: Bearer $ALLM_API_KEY"
TypeScript
const result = await allm.deployments.list({
  model: "anthropic/claude-haiku-4.5",
  capability: "tool_calling",
  region: "eu",
});

for (const deployment of result.data) {
  console.log(deployment.id, deployment.rate_card);
}

Query parameters

q
string
Search provider model ID, canonical model, provider, mode, model name, or lab.
provider
string
openai, aws-bedrock, openrouter, and other provider slugs.
model
string
Exact canonical model ID.
region
string
global, eu, or a provider-specific region.
mode
string
Provider inference mode or API family.
capability
string
Requires capability status to be supported; conditional results are excluded.
has_pricing
boolean
Filter deployments based on whether normalized pricing is present.
limit
integer
Maximum number of records to return (1–500).Default: 100
offset
integer
Zero-based number of matching records to skip.Default: 0

Retrieve a deployment

GET/v1/deployments/{deploymentId}Authentication: Optional
deploymentId
stringrequired
Stable ALLM deployment identifier.
cURL
curl https://api.use-allm.com/v1/deployments/dep_openai_gpt_5_1_responses_global \
  -H "Authorization: Bearer $ALLM_API_KEY"

Deployment object

JSON · data
{
  "id": "dep_openai_gpt_5_1_responses_global",
  "model_id": "openai/gpt-5.1",
  "provider_id": "openai",
  "provider_model_id": "gpt-5.1",
  "api_surface": "responses",
  "mode": "responses",
  "region": "global",
  "status": "available",
  "lifecycle": {
    "status": "available",
    "announced_at": null,
    "deprecation": {
      "state": "unknown",
      "date": null,
      "precision": "unknown",
      "date_type": "unknown",
      "evidence": []
    },
    "end_of_life": {
      "state": "unknown",
      "date": null,
      "precision": "unknown",
      "date_type": "unknown",
      "evidence": []
    },
    "replacement_ids": [],
    "coverage": {
      "status": "partial",
      "last_checked_at": null,
      "source_count": 1,
      "source_ids": ["20000000-0000-0000-0000-000000000001"]
    },
    "last_changed_at": null
  },
  "context_tokens": 400000,
  "max_output_tokens": 128000,
  "capabilities": {
    "tool_calling": {
      "status": "supported",
      "verification_status": "official_declared"
    },
    "structured_output": {
      "status": "supported",
      "verification_status": "official_declared"
    }
  },
  "rate_card": {
    "currency": "USD",
    "unit": "million_tokens",
    "input_micro_usd": 1250000,
    "cached_input_micro_usd": 125000,
    "output_micro_usd": 10000000,
    "source_url": "https://developers.openai.com/api/docs/models/gpt-5.1",
    "observed_at": "2026-07-14T00:00:00Z"
  },
  "evidence_urls": [
    "https://developers.openai.com/api/docs/models/gpt-5.1"
  ]
}

Nullable fields

context_tokens, max_output_tokens, and rate_card may be null. Missing data does not mean unlimited capacity or zero cost.

Response metadata

Every successful response includes x-allm-catalog-release, x-request-id, and an ETag. Store the request ID in logs and the catalog release beside any persisted decision.