clever

Every model. One API. One bill.

One API for text, images, speech and video. Pick a quality tier and we route across providers, so it keeps working when one is slow, busy, or gone.

Three tiers

Loading plans…

What this is

The model is an implementation detail

Name a tier and you get a quality level we can keep our promise on. You never had to pick a model, and you never have to keep up with what is new.

Built to stay up

We route every request across multiple providers. If one is slow, overloaded, or unavailable, the request goes elsewhere instead of failing.

You are never surprised by a bill

Past your allowance the answer is no, not a surprise invoice. A pack, or a larger plan, is how you go further. There is no metered overage and nothing bills you by surprise.

Your key, your account

Keys are tied to your account, so one account can never spend another one's allowance. Revoke a key at any time and it stops working straight away.

Pricing

One price, one monthly allowance, and everything included. Prices are per month in US dollars. There is no per-request charge on top, and no overage.

Loading…

Extra capacity

A pack is extra capacity for a fixed number of days. It never runs out early, is not transferable, has no cash value, and cannot be withdrawn.

Loading…

Documentation

One base URL, one key, and a tier instead of a model name.

Quickstart

curl https://api.clever.diy/v1/infer \
  -H "authorization: Bearer $CLEVER_TOKEN" \
  -H "content-type: application/json" \
  -d '{"tier":"balanced","messages":[{"role":"user","content":"Hello"}]}'

That is the whole shape: a tier, and messages. There is no model parameter, because naming a model is the promise this API exists to replace.

Authentication

An API key in Authorization: Bearer. Issue and revoke keys from your keys page. A signed-in browser session works too — the cookie is set at sign-in and the same endpoints accept it, which is how this site works.

Inference

RouteCapabilityNotes
POST /v1/infertextStreaming with "stream": true
POST /v1/decidedecisionsStructured output
POST /v1/images/generationsimagePriced per megapixel or per call
POST /v1/audio/speechaudioPriced per 1,000 characters
POST /v1/audio/transcriptionsaudioWhisper-compatible
POST /v1/videosvideoAsynchronous; poll for the result

What a response tells you

Every response carries which model served it and what is left of your monthly allowance, so you never have to guess.

HeaderMeans
x-clever-modelThe model that actually ran — a real id, not a tier name
x-clever-value-remaining-usdWhat is left of your monthly allowance

When something is refused

A refusal is a normal answer with a reason and, where it applies, a upgradeRequired flag.

CodeMeans
trial_expiredThe trial has ended. Add a plan.
spend_cap_exceededYou've reached today's limit. It resets daily.
value_limit_exceededThis month's allowance is used up. Resets monthly.
capability_not_in_planThat capability is not in your plan.
model_unavailable / tier_unavailableNothing able to serve it right now
upstream_errorEvery provider tried failed. Usually temporary.

What happens when you reach your limit

Each plan includes a monthly allowance. It is yours for the whole month, and it resets on the first of the month — not 24 hours after you signed up.

When a request would exceed it

The request is refused, not billed. You get a 429 and a reason you can read. Nothing is charged beyond what you have already used, and there is no overage on your next invoice.

Three ways forward, and none of them is waiting:

What we will never do

The other limit

There is also a requests-per-minute figure, to stop a runaway loop from taking the service down for everyone. It is not a spending limit and you are very unlikely to reach it. If you do, the error says so and asks you to slow down.

Status

Checks that ran just now, against our live endpoints.

CheckStateRound tripDetail

Sign in

Forgot your password? · Create an account

Create an account

Start working in about a minute. You get a 14-day trial, no card, and nothing to install.

We don't need a confirmed email to let you work — the confirmation link is there so nobody else can claim your address.

Already have one? Sign in

Reset your password

Enter the address you signed up with and we'll send a link to set a new one.

We send the same answer whether or not an account exists on that address. If it's on file, the email is already on its way.

Choose a new password

Pick something you haven't used before. At least 10 characters — a short phrase you can recall beats a mangled word.

Setting a new password signs out every device, including any session someone else might be holding. That is on purpose.

Email confirmation

Back to your dashboard

Your account

Where your allowance stands and what you've been using.

Signed in as —

Your allowance

What you've been using

TierRequests this month

Last requests

WhenTierValue

Plans

Extra capacity

Playground

A real request against your own allowance, streaming as it arrives. This is the same endpoint your key calls, so whatever it costs is charged to your plan.

API keys

Create a key for each place you use Clever — one for production, one for local development — so revoking a leaked key doesn't take everything down with it.

A key is shown once and cannot be read again. If you lose it, revoke it and create another; nobody, including us, can recover it. Your key is scoped to your account, so one account cannot spend another's allowance.

Back to your dashboard