Modellen
Vermeld elk model dat beschikbaar is op uw API-sleutel, compleet met capaciteitsvlaggen, contextlimieten en prijzen per token.
Alles waar de rest van de API van afhangt is via één call te ontdekken: welke modellen images, tools, reasoning of caching accepteren, hun context window en hun prijs per token. Bevraag het models-endpoint en filter op de capability-flags hieronder in plaats van modellijsten hard te coderen in je app.
Let op dat het created-veld de huidige servertijd van de listing is, niet een release-datum per model, en dat het status-veld de live health weergeeft — haal het opnieuw op in plaats van het lang te cachen.
GET /v1/models
Retourneert de lijst met modellen die u nu kunt gebruiken. Geauthenticeerde verzoeken omvatten alle modellen per gebruiker die u in het dashboard heeft ingeschakeld. De vorm weerspiegelt die van OpenAI GET /v1/models met extra Airforce-capaciteitsvelden.
https://api.airforce/v1/modelsVoorbeeld
curl https://api.airforce/v1/models \
-H "Authorization: Bearer sk-air-YOUR_API_KEY"Reactie vorm
De envelop op het hoogste niveau is { object: "list", data: Model[] }. Elk Model heeft de onderstaande velden: velden die als optioneel zijn gemarkeerd, kunnen worden weggelaten als ze onbekend zijn.
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Optional | Public model identifier you pass as the "model" field on every other endpoint, e.g. "claude-sonnet-4.6" or "gpt-5.1-chat". |
| object | string | Optional | Always "model". |
| created | integer | Optional | Unix timestamp at which this listing was generated (current server time) — not a stable per-model creation date. |
| owned_by | string | Optional | Vendor name: "openai", "anthropic", "google", "deepseek", … |
| catalog_id | string | Optional | Canonical vendor identifier for the underlying model family (e.g. "anthropic/claude-sonnet-4-6"). Stable across Airforce ID changes. |
| context_length | integer | Optional | Total context window in tokens (input + output). |
| max_output_tokens | integer | Optional | Hard cap on a single response. Use this as the upper bound when picking max_tokens. |
| input_modalities | array | Optional | Subset of ["text", "image", "audio", "document", "video"] the model accepts as input. |
| output_modalities | array | Optional | Subset of ["text", "image", "audio", "video"] the model can produce. |
| supports_chat | boolean | Optional | Available on /v1/chat/completions and /v1/messages. |
| supports_streaming | boolean | Optional | Honors stream: true. |
| supports_vision | boolean | Optional | Accepts image_url content blocks. |
| supports_tools | boolean | Optional | Accepts the tools / tool_choice parameters. |
| supports_reasoning | boolean | Optional | Honors reasoning_effort / thinking / thinking_budget. |
| supports_documents | boolean | Optional | Accepts document content blocks (PDF, etc.). |
| supports_caching | boolean | Optional | Honors cache_control on Anthropic-style system prompts. |
| supports_audio_input | boolean | Optional | Accepts audio content blocks (multimodal STT-in-chat). |
| supports_video_input | boolean | Optional | Accepts video content blocks. |
| knowledge_cutoff | string | Optional | Vendor-published knowledge cutoff month, e.g. "2025-09". |
| status | string | Optional | Live health: "operational" | "degraded" | "partial_outage" | "major_outage" (legacy "stable" / "down" / "offline" may also appear). |
| pricepermilliontokens | integer | Optional | Input cost in cents per 1M tokens. Output side has output_pricepermilliontokens. |
| cache_read_pricepermilliontokens | integer | Optional | Discounted rate for cache-hit input tokens (Anthropic-style caching). |
Voorbeeld reactie
{
"object": "list",
"data": [
{
"id": "claude-sonnet-4.6",
"object": "model",
"created": 1740000000,
"owned_by": "anthropic",
"catalog_id": "anthropic/claude-sonnet-4-6",
"context_length": 200000,
"max_output_tokens": 64000,
"input_modalities": ["text", "image", "document"],
"output_modalities": ["text"],
"supports_chat": true,
"supports_streaming": true,
"supports_vision": true,
"supports_tools": true,
"supports_reasoning": true,
"supports_documents": true,
"supports_caching": true,
"knowledge_cutoff": "2025-08",
"status": "operational",
"pricepermilliontokens": 300,
"output_pricepermilliontokens": 1500,
"cache_read_pricepermilliontokens": 30
}
// … more models
]
}Filteren op mogelijkheden
Filteren op mogelijkheden gebeurt aan de clientzijde met de onderstaande flags. De meest voorkomende filters:
const res = await fetch('https://api.airforce/v1/models', {
headers: { Authorization: `Bearer ${API_KEY}` },
});
const { data } = await res.json();
// Vision-capable chat models
const visionModels = data.filter(m => m.supports_chat && m.supports_vision);
// Cheapest reasoning model with at least 100k context
const reasoning = data
.filter(m => m.supports_reasoning && (m.context_length ?? 0) >= 100_000)
.sort((a, b) => (a.pricepermilliontokens ?? 0) - (b.pricepermilliontokens ?? 0))[0];
// All models from one vendor, by canonical catalog family
const allClaude = data.filter(m => m.catalog_id?.startsWith('anthropic/'));Er bestaat één optionele server-side query-parameter: GET /v1/models?channels=1 geeft daarnaast per-channel alias-entries terug (voor routing-aware clients); zonder die parameter worden die aliassen weggelaten.
Prijsvelden
Alle *pricepermilliontokens velden zijn gehele centen per 1 000 000 tokens. Deel door 100 voor USD per miljoen.
| Parameter | Type | Required | Description |
|---|---|---|---|
| pricepermilliontokens | integer | Optional | Input tokens, cents per 1M. |
| output_pricepermilliontokens | integer | Optional | Output tokens, cents per 1M. |
| cache_write_5m_pricepermilliontokens | integer | Optional | Cache-write rate for 5-minute TTL caches (Anthropic). |
| cache_write_1h_pricepermilliontokens | integer | Optional | Cache-write rate for 1-hour TTL caches (Anthropic). |
| cache_read_pricepermilliontokens | integer | Optional | Cache-read rate (typically 10× cheaper than uncached input). |
Modelstatus en beëindiging
| Parameter | Type | Required | Description |
|---|---|---|---|
| operational | status | Optional | Healthy — recent calls are succeeding. The usual value for an available model. |
| degraded | status | Optional | Callable, but with elevated errors or latency. |
| partial_outage | status | Optional | A subset of upstream channels is failing. |
| major_outage | status | Optional | Most or all calls are currently failing. |
| stable / down / offline | status | Optional | Legacy or admin-set values that may also appear. |
Hard-disabled modellen zijn geen statuswaarde — ze worden volledig uitgesloten van /v1/models (voor elke caller, inclusief admins) en worden alleen op exacte naam aangeroepen via admin-tooling.
Wilt u een bladerbare weergave?
De /modellen pagina geeft dezelfde gegevens weer met groeperings-, zoek- en prijsvergelijkingen.