Zumik
Guides

Subscription credentials

Attach a Claude Code or ChatGPT Codex subscription so eligible traffic runs against its bundled allowance at cache-discounted rates.

If your team already pays for a Claude Code (Anthropic) or ChatGPT Codex (OpenAI) subscription, you can attach it to a Zumik project and serve matching traffic from the allowance you already bought - instead of paying metered API rates a second time. Eligible requests route to the subscription's backend at the provider's cache-discounted effective price.

This is part of the BYOK family: Zumik never stores the raw token. It is fingerprinted on the way in and discarded; only the fingerprint, the provider, and the plan label are retained so you can recognize which credential is configured.

Attach a subscription

cURL
curl https://api.zumik.ai/v2/subscription-credentials \
  -H "Authorization: Bearer $ZUMIK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "claude_code",
    "plan": "claude_max",
    "token": "<your-subscription-oauth-token>"
  }'

provider is one of:

ValueSubscriptionRoutes providerCached input discount
claude_codeClaude Code (Pro/Max)anthropic90%
codexChatGPT Codex (Plus/Pro)openai50%

How routing works

On every request, the Execution Broker resolves your model to a provider. If the project has an active subscription whose underlying provider matches, the request is served through that subscription instead of the metered managed-provider path. You can see which path served a request on the response:

  • On /v1 (OpenAI-compatible), the proprietary signal rides on headers so the body stays exactly OpenAI-shaped:

    Agent-Execution-Profile: subscription
    Agent-Subscription-Id: sub_01jy...
    Agent-Subscription-Discount-Pct: 90

    The discounted input fraction is also reflected in usage.prompt_tokens_details.cached_tokens, so reuse stays measurable with a vanilla OpenAI SDK.

  • On /v2 (native), the chosen profile is a first-class field:

    { "execution_profile": "subscription", "...": "..." }

List and revoke

# List the project's subscriptions (tokens are never returned, only fingerprints)
curl https://api.zumik.ai/v2/subscription-credentials \
  -H "Authorization: Bearer $ZUMIK_API_KEY"

# Revoke one - matching traffic immediately falls back to the metered path
curl -X DELETE https://api.zumik.ai/v2/subscription-credentials/sub_01jy... \
  -H "Authorization: Bearer $ZUMIK_API_KEY"

Every attach and revoke is written to the project audit log (subscription.credential.create, subscription.credential.revoke).

Notes and limits

  • A subscription only serves models that resolve to its underlying provider. A Claude Code subscription will not serve an OpenAI model, and vice versa.
  • Subscription allowances are governed by the provider's own fair-use terms. Zumik routes through the allowance; it does not raise or bypass the provider's limits.
  • Billing reflects the cache-discounted input rate for subscription-served requests, so the savings appear directly in your reuse credit (see Billing and budgets).

On this page