Api.Airforce
API REFERENCE

Model

Cantumkan setiap model yang tersedia di kunci API Anda, lengkap dengan tanda kemampuan, batas konteks, dan harga per token.

Semua yang diandalkan oleh bagian lain dari API dapat ditemukan dari satu call: model mana yang menerima images, tools, reasoning atau caching, context window-nya, dan harga per-token-nya. Query endpoint models dan filter berdasarkan capability flag di bawah daripada menanam daftar model secara hard-code di aplikasi Anda.

Perhatikan bahwa field created adalah waktu server saat ini dari pendaftaran, bukan tanggal rilis per-model, dan field status mencerminkan health secara live — ambil ulang daripada meng-cache-nya terlalu lama.

GET /v1/models

Mengembalikan daftar model yang dapat Anda gunakan saat ini. Permintaan yang diautentikasi mencakup model per pengguna yang Anda aktifkan di dasbor. Bentuknya mencerminkan OpenAI GET /v1/models dengan field kemampuan Airforce ekstra.

GEThttps://api.airforce/v1/models

Contoh

curl https://api.airforce/v1/models \
  -H "Authorization: Bearer sk-air-YOUR_API_KEY"

Bentuk respons

Amplop tingkat atas adalah { object: "list", data: Model[] }. Setiap Model memiliki kolom di bawah — kolom yang ditandai opsional dapat dihilangkan jika tidak diketahui.

ParameterTypeRequiredDescription
idstringOptionalPublic model identifier you pass as the "model" field on every other endpoint, e.g. "claude-sonnet-4.6" or "gpt-5.1-chat".
objectstringOptionalAlways "model".
createdintegerOptionalUnix timestamp at which this listing was generated (current server time) — not a stable per-model creation date.
owned_bystringOptionalVendor name: "openai", "anthropic", "google", "deepseek", …
catalog_idstringOptionalCanonical vendor identifier for the underlying model family (e.g. "anthropic/claude-sonnet-4-6"). Stable across Airforce ID changes.
context_lengthintegerOptionalTotal context window in tokens (input + output).
max_output_tokensintegerOptionalHard cap on a single response. Use this as the upper bound when picking max_tokens.
input_modalitiesarrayOptionalSubset of ["text", "image", "audio", "document", "video"] the model accepts as input.
output_modalitiesarrayOptionalSubset of ["text", "image", "audio", "video"] the model can produce.
supports_chatbooleanOptionalAvailable on /v1/chat/completions and /v1/messages.
supports_streamingbooleanOptionalHonors stream: true.
supports_visionbooleanOptionalAccepts image_url content blocks.
supports_toolsbooleanOptionalAccepts the tools / tool_choice parameters.
supports_reasoningbooleanOptionalHonors reasoning_effort / thinking / thinking_budget.
supports_documentsbooleanOptionalAccepts document content blocks (PDF, etc.).
supports_cachingbooleanOptionalHonors cache_control on Anthropic-style system prompts.
supports_audio_inputbooleanOptionalAccepts audio content blocks (multimodal STT-in-chat).
supports_video_inputbooleanOptionalAccepts video content blocks.
knowledge_cutoffstringOptionalVendor-published knowledge cutoff month, e.g. "2025-09".
statusstringOptionalLive health: "operational" | "degraded" | "partial_outage" | "major_outage" (legacy "stable" / "down" / "offline" may also appear).
pricepermilliontokensintegerOptionalInput cost in cents per 1M tokens. Output side has output_pricepermilliontokens.
cache_read_pricepermilliontokensintegerOptionalDiscounted rate for cache-hit input tokens (Anthropic-style caching).

Contoh tanggapan

{
  "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
  ]
}

Memfilter berdasarkan kemampuan

Pemfilteran kemampuan dilakukan di sisi klien menggunakan flag di bawah. Filter yang paling umum:

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/'));

Ada satu query parameter opsional di sisi server: GET /v1/models?channels=1 secara tambahan mengembalikan entri alias per channel (untuk client yang sadar routing); tanpa itu, alias tersebut dihilangkan.


Bidang harga

Semua *pricepermilliontokens kolomnya adalah sen bilangan bulat per 1.000.000 token. Bagi dengan 100 untuk USD per juta.

ParameterTypeRequiredDescription
pricepermilliontokensintegerOptionalInput tokens, cents per 1M.
output_pricepermilliontokensintegerOptionalOutput tokens, cents per 1M.
cache_write_5m_pricepermilliontokensintegerOptionalCache-write rate for 5-minute TTL caches (Anthropic).
cache_write_1h_pricepermilliontokensintegerOptionalCache-write rate for 1-hour TTL caches (Anthropic).
cache_read_pricepermilliontokensintegerOptionalCache-read rate (typically 10× cheaper than uncached input).

Status & penghentian model

ParameterTypeRequiredDescription
operationalstatusOptionalHealthy — recent calls are succeeding. The usual value for an available model.
degradedstatusOptionalCallable, but with elevated errors or latency.
partial_outagestatusOptionalA subset of upstream channels is failing.
major_outagestatusOptionalMost or all calls are currently failing.
stable / down / offlinestatusOptionalLegacy or admin-set values that may also appear.

Model yang di-hard-disable bukanlah sebuah nilai status — model tersebut dikecualikan sepenuhnya dari /v1/models (untuk setiap caller, termasuk admin) dan hanya dipanggil dengan nama persis melalui tooling admin.

Ingin tampilan yang dapat dijelajahi?

Itu / halaman model merender data yang sama dengan pengelompokan, pencarian, dan perbandingan harga.