The surface is narrow on purpose: two metered endpoints and model: "auto". Model identity is not exposed.
ModelBeatbeta

List the intelligence tiers

Lists the values `model` accepts, in the OpenAI `/v1/models` list shape, so a stock OpenAI SDK's `models.list()` works unchanged. Authenticated and rate-limited like every `/v1` path, but never metered — no balance hold is taken. During the private beta this is a tier list, not a model catalogue: it returns `modelbeat-advanced`, `modelbeat-standard` and `modelbeat-fast`, and never a model id. Tier names are ModelBeat's own abstraction over the pool, so listing them discloses no model identity (ADR-0070).

GET
/models

Lists the values model accepts, in the OpenAI /v1/models list shape, so a stock OpenAI SDK's models.list() works unchanged. Authenticated and rate-limited like every /v1 path, but never metered — no balance hold is taken.

During the private beta this is a tier list, not a model catalogue: it returns modelbeat-advanced, modelbeat-standard and modelbeat-fast, and never a model id. Tier names are ModelBeat's own abstraction over the pool, so listing them discloses no model identity (ADR-0070).

Authorization

bearerAuth
AuthorizationBearer <token>

A ModelBeat API key, prefixed mb_live_, sent as Authorization: Bearer <key>.

Keys are issued in the ModelBeat console and are scoped to one tenant. The example value used throughout this document (mb_live_EXAMPLE_NOT_A_REAL_KEY_00000000000000000000) is a placeholder and will not authenticate.

In: header

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/models"
{  "object": "list",  "data": [    {      "id": "auto",      "object": "model",      "created": 0,      "owned_by": "modelbeat",      "context_length": 0,      "max_completion_tokens": 0    }  ]}