API reference

Models

The model catalog and pricing.

The model catalog lists the models runs can use and the default that applies when a run does not name one. It needs no API key.

GET/v1/models
Returns the catalog for this installation.
Response
itemsarray
Supported models, sorted by ID.
default_modelstring
The model a run uses when it has no model field.
custom_models_allowedboolean
Whether runs may name a model that is not in items.
Each item
idstring
The value to pass as model, such as anthropic/claude-haiku-5.5.
namestring
Display name.
context_lengthinteger
Context window in tokens, when the provider publishes it.
pricingobject
Provider prices in US dollars per token, as decimal strings. prompt is input and completion is output.
supported_parametersstring[]
Request parameters the provider supports for this model, when published.
Terminal
curl $EPHEMERAL_URL/v1/models
JSON
{
  "items": [
    {
      "id": "anthropic/claude-haiku-5.5",
      "name": "Anthropic: Claude Haiku 5.5",
      "context_length": 1000000,
      "pricing": {
        "prompt": "0.0000001",
        "completion": "0.0000005",
        "input_cache_read": "0.00000001",
        "input_cache_write": "0.000000125",
        "input_cache_write_1h": "0.0000002",
        "overrides": [{ "min_prompt_tokens": 100000, "prompt": "0.0000005", "completion": "0.0000025" }]
      },
      "supported_parameters": ["max_tokens", "reasoning", "tool_choice", "tools"]
    }
  ],
  "default_model": "anthropic/claude-haiku-5.5",
  "custom_models_allowed": false
}

Hosted catalog

On the hosted service the catalog lists the models Ephemeral can bill safely. A model is listed when it has input and output token prices and no other charges that cannot be bounded in advance. Cached input and long-context price tiers (overrides) are fine: each call is authorized at the model's most expensive tier and charged what the provider reports. When the provider publishes the parameters a model supports, the list must include tools, because the agent works through tool calls. custom_models_allowed is false.

The catalog is cached for one minute. Prices are checked again before every model call, and each call is authorized against the run's budget at the current price. If a model stops qualifying, calls to it are refused and the run fails. See budgets and billing.

Hosted runs send text only. Image, audio and file inputs to the model are refused.

Self-hosted catalog

A self-hosted installation lists only its configured default model, and custom_models_allowed is true. Runs can name any model ID that your inference endpoint accepts. The catalog does not query or expose your inference credentials.

© 2026 EphemeralProduced by erni.works
esc

Nothing matches “”.