Docs

Free Plan

Everything the Draven AI API gives you at no cost: which models you can call for free, the daily limits that apply, and when it's worth moving to a paid plan.

Nothing to enable. Any API key works with the free models below — you just call /v1/chat/completions (or /v1/audio/speech for the free TTS voice) with a :free model id. Get a key from dravenai.lat under Developers → API; see Generating an API Key.

What's included for free

The Free plan covers two things, and only these two — there is no free tier for image generation, embeddings, rerank, or the web search tool. Those are billed products with no :free variant, and always require wallet balance.

Both are available to any valid API key, on any plan — there's nothing to activate. You just call /v1/chat/completions or /v1/audio/speech with a :free model id.

Free chat models

Capabilities vary a lot between them — check vision and thinking before picking one for a multimodal or reasoning task. This table is pulled live from /v1/models (cached for your browser session), so it's always current — including the credit rate and the tokens/minute limit for each one.

Loading live catalog from /v1/models

How the daily credit pool works

Every account — not every API key — gets 10,000 credits/day, on a rolling 24-hour window. Creating more keys never gives you more credits; all of them draw from the same pool. Only :free models touch this pool: any model with paid: true skips it entirely and bills your wallet at its real per-token price instead.

Each free model charges its own rate per 1,000 units of usage, and that unit is different depending on the endpoint:

Because the rate varies by model, the same 10,000 credits/day buys a very different daily budget depending on which chat model you use (grouped by rate, live from /v1/models):

These budgets assume you spend the whole pool on one model. In practice the pool is shared: mixing a cheap-rate model and an expensive-rate model on the same day draws down the same 10,000 credits, so using one reduces what's left for the other. A single request's max_tokens is also silently capped to whatever remains of your daily budget at that model's rate, so one oversized request can't blow through the daily limit in one shot.

Daily and per-minute limits

These apply per user, not per API key.

LimitValueApplies to
Requests per IP10 in-flight, at the same timeEvery endpoint, free/guest plans (Pro and admin are exempt — Pro has its own per-account concurrency limit instead, see the Pro plan docs) — this is concurrency, not a per-minute count: it's about how many requests from that IP are open right now, not how many happened in the last 60 seconds
Requests per account10 / minuteFree models only
Credits10,000 / dayFree chat models + the free TTS voice, one shared pool
Tokens / minute, per model12,000Every free chat model (12 currently), input + output combined — see the per-model table above
Shared daily quota50 / dayFree-plan accounts only — a separate account-level cap on top of credits, see below
Accounts on the Free plan have an additional 50 requests/day cap on top of the credit pool — this is a per-account quota, separate from credits, and it's the first thing to run out for low-credit-rate models. Paid models never touch this limit at all. Pro-plan accounts have their own, much larger version of this same shared pool — see the Pro plan docs for details.

Paid models are a separate, unlimited pool

Any model without a :free suffix (paid: true in the catalog) skips the credit system and the 50/day quota entirely. There's no daily request cap on paid models — you're billed per token at the model's real price until your wallet balance runs out. This also means image generation, embeddings, rerank, and web search are always paid: none of them have a free tier or a :free id, and all of them require a positive wallet balance regardless of plan.

When Free is enough

When to move to a paid plan

Errors you'll run into on the Free plan

All errors from /v1/* use the same envelope as the OpenAI API (error.message, error.type, error.param, error.code). The ones most specific to free-model usage:

StatusTypeWhen it happens
401authentication_errorMissing, malformed, or invalid API key.
400invalid_request_errorMissing model/messages, unsupported input/output modality for the chosen model, or estimated input already exceeds the model's context window.
404not_found_errorThe free model id doesn't exist or was typed wrong — check it against /v1/models.
429rate_limit_errorAny of the five limits above was hit — see the exact messages below.
503api_errorThe model is temporarily unavailable on our side.
502api_errorThe upstream provider returned an error or an empty response.

429 messages, by limit

429 Too Many Requests — daily credits
{
  "error": {
    "message": "You have reached your daily credit limit (10,000 credits/day — this model costs 600 credits per 1k tokens, input + output combined).",
    "type": "rate_limit_error",
    "param": null,
    "code": null
  }
}

All 429s carry a Retry-After header (seconds) telling you when to try again, and are safe to retry after that window — back off exponentially rather than hammering the endpoint. 502/503 are also safe to retry; 400/401/404 won't succeed on retry without fixing the request itself. See Errors for the full error reference and Rate Limits for how each limit is enforced.