Discover the route first. Price it from the dated source.

Account-visible model IDs and the public pricing snapshot answer different questions. Keep both with the acceptance record.

List model IDs visible to the account

Authenticated discovery

curl https://aiwave.live/v1/models \
  -H "Authorization: Bearer $AIWAVE_API_KEY"

Read the public rate snapshot

No authentication required

curl https://aiwave.live/api/v1/pricing

Example pricing row

USD per 1M text tokens

{
  "id": "glm-5",
  "provider": "GLM",
  "input_usd_per_1m_tokens": 1.55,
  "cache_hit_usd_per_1m_tokens": 0.40000075,
  "output_usd_per_1m_tokens": 4.960000000000001,
  "effective_date": "2026-08-27"
}

Keep these fields together

FieldWhy it matters
idExact model value used by the route
providerSupplier family, not a billing guarantee
input / cache / output rateSeparate text-token meters
effective_dateDate attached to the row
checked / pricing_versionSnapshot freshness and change detection
Text-token units do not describe every modality.

Image and realtime audio routes can use route-specific billable units. Check the model directory and account ledger before interpreting a non-text row.