Skip to content
SingularSingular

How models and routing work

Understand the live catalog, explicit and automatic model selection, provider health, and fallback behavior.

On this page

Discover models

Use the public model catalog for browsing and https://api.impossi.build/pricing.json for machine-readable retail IDs, positive rates, and context values.

bash
curl https://api.impossi.build/pricing.json

The pricing response is a timestamped snapshot:

json
{
  "as_of": "<ISO-8601 timestamp>",
  "models": [{
    "id": "provider/model",
    "name": "Display name",
    "promptPerMillionUsd": 1.0,
    "completionPerMillionUsd": 4.0,
    "maxContextTokens": 131072
  }]
}

Model availability changes. Never hardcode a copied catalog as permanent truth.

Pricing metadata cautions

  • Positive input/output rates are retail USD per one million tokens.
  • A missing or zero-looking value in the storefront feed must not automatically be interpreted as free; it may mean pricing is unavailable or on request.
  • Context values are useful when present, but model-specific behavior should still be tested.
  • Storefront modality, capability, BYOK, and latency fields may be fallback values and are not a protocol guarantee.

Explicit model selection

For repeatable behavior, send the exact catalog ID:

json
{
  "model": "provider/model",
  "messages": [{"role": "user", "content": "Hello"}]
}

The prefix is part of the Singular model ID. It is not necessarily a disclosure of the physical upstream that ultimately serves the request.

Automatic routing

Use model: "auto" when policy-based selection matters more than pinning one exact model. The runtime scores eligible candidates using configured policy, availability, health, pricing, and latency signals. Ordered fallback is narrower than general failure recovery: the explicit models list advances on rate-limit, service-unavailable, or context-length failures, not on every execution error.

The public response deliberately preserves the requested model value. It does not expose internal routing rationale to non-admin callers.

Authenticated /v1/models

The OpenAI-shaped models route exists, but non-admin product keys intentionally receive an opaque catalog containing only auto. That privacy boundary prevents public callers from using the admin registry as a provider-discovery channel. Use /pricing.json for the public retail model list.

Provider health and fallbacks

Provider health, cooldowns, key priority, and fallback order are gateway concerns. Applications should still use timeouts and bounded retries because a final error can mean the eligible upstream pool was exhausted or the request failed outside the retryable path.

Updated 2026-08-10. Live model availability, rates, account state, and payment rails remain request-time data.