Z.AI zai¶
Z.AI's platform API — note the /v4 paths. Routes are zai/<model> over openai-chat, paid by the deployment's own API key.
How we authenticate¶
There is no login flow here. Z.AI issues a long-lived API key in its own console; an operator stores it once in the Skarbiec vault, and at final use the gateway redeems the deployment's capability for this provider through the local entitlements router, reduces the stored document to the bare key, and sends it as Authorization: Bearer <key>. The key has no refresh path and no invented expiry — it works until Z.AI revokes it or an operator replaces it in the vault.
The two failure shapes point at two different repairs: a 503 credential_unauthorized means no capability, read grant or trust material produced a key at final use — repair the authorization chain (runbook); a 502 provider_failure with a provider_authentication: prefix means the key was produced and Z.AI rejected it — repair the provider account.
Models¶
No pinned rows: the catalog is discovered live from https://api.z.ai/api/paas/v4/models.
Discovery follows the shared provider transport contract;
public metadata comes from models.dev and is advisory only.
Plan usage¶
Z.AI publishes no free plan-usage report for API keys. The ledger records that absence as the provider's own answer, never as a zero (subscription).
Endpoints¶
| Chat | https://api.z.ai/api/paas/v4/chat/completions |
| Model discovery | https://api.z.ai/api/paas/v4/models |
| Auth header | Authorization: Bearer <key> |
| Trusted host | api.z.ai |
| Base URL override | BRAMA_PROVIDER_ZAI_BASE_URL, validated with the refusals in provider |