AI provider router · Revoye Desk for Windows & macOS
Turn the AI subscriptions you already pay for into an API — answered by Revoye Desk
Revoye Desk runs on your own Windows or Mac computer, signed in to the AI accounts you already use — ChatGPT, Claude, Gemini, DeepSeek, Qwen and Perplexity. Your code sends a prompt to one OpenAI-compatible endpoint, the Desk Agent answers it with one of your accounts, and the result comes back to you. No provider API keys, no per-token bill, and no browser extension required.
The whole public API in one Markdown file — endpoints, errors, retries and webhooks. Hand it to your AI coding agent.
Free to start. Your AI sign-ins stay on your own computer — Revoye never sees them.
No provider API keys
Revoye never holds a ChatGPT, Claude or Gemini credential. Your sign-ins stay in Revoye Desk, on your own computer.
Six providers, one endpoint
ChatGPT, Claude, Gemini, DeepSeek, Qwen and Perplexity — all answered by Revoye Desk, through the same API request shape.
Works with the OpenAI SDK
Change a base URL and an existing integration keeps working. Streaming is the one thing that does not — and we say so.
You are already paying for AI. You are just not getting much out of it.
You have a ChatGPT subscription. Maybe Claude as well, and Gemini, and a DeepSeek account you opened to compare. You use them every day. And the moment you want your own code to use them too, the same four problems appear — none of them about how good the models are.
A subscription and an API are two separate purchases
A monthly plan buys you a web interface. It does not buy you programmatic access. The moment your code needs an answer, you are on a metered bill with no relationship to the flat fee you are already paying.
Unattended work is where metered bills grow fastest
Overnight summaries, spreadsheet runs, content pipelines, scheduled research. The jobs nobody watches are the ones that run up a per-token bill — and the ones that least need an instant answer.
Every provider is its own integration
A different SDK, a different auth scheme, a different response shape, another key in another secret store. Trying a second model to compare quality becomes a day of work before it becomes a comparison.
Keys leak, and a leaked key spends your money
A provider key in a repository, a log line, or a client bundle is someone else’s usage on your card. The safest key is the one that was never issued.
All four have the same root: the access you already pay for is stuck inside a chat window. Revoye Desk turns it into something your code can call.
What Revoye is
Revoye is an AI provider router. It turns the AI chat subscriptions you already pay for — ChatGPT, Claude, Gemini, DeepSeek, Qwen or Perplexity — into an OpenAI-compatible API your own applications can call. The answers come from Revoye Desk, a desktop app for Windows and macOS that runs on your own computer with your AI accounts signed in: the Desk Agent takes each prompt, answers it with one of your accounts, and sends the result back. Revoye stores no provider credentials, because it never needs any — your sign-ins stay on your machine.
In plain terms
It is a router, not a model. Revoye generates nothing. It decides which of your AI accounts answers a given prompt, and Revoye Desk gets that answer back to your code.
It is a queue, not a proxy. A prompt becomes durable the moment Revoye accepts it. If your computer is asleep, the job waits for Revoye Desk. Nothing is dropped because a machine was offline.
It is your own infrastructure, operated for you. The accounts are yours and the computer is yours. Revoye supplies the endpoint, the queue and the routing; Revoye Desk supplies the answers.
It is straight about what it is not. Revoye is not faster than a real model API, it cannot stream, and nothing is answered while Revoye Desk is offline. What Revoye is not covers all three.
Revoye Desk: the desktop AI agent that answers your API
Revoye Desk is the app on your own computer that turns a prompt into an answer. Pair it with your Revoye account once, sign in to your AI accounts, and it takes the jobs your code sends — quietly, from the system tray.
Each of your AI accounts becomes one or more agents. When a prompt arrives, the Desk Agent answers it with one of them and sends the result back. More agents means more prompts answered at the same time.
Self Desk Agent
RecommendedSign in to your AI accounts inside Revoye Desk and its agents answer. Nothing else to install.
No browser extension. Add ChatGPT, Claude, Gemini, DeepSeek, Qwen or Perplexity inside Revoye Desk. Sign-in happens on the provider’s own page, so two-factor, passkeys and “Continue with Google” work as usual — and Revoye Desk never sees your password.
Agents you control. Create as many agents as you like, several per account for more answers at once. Test any agent with one click, switch agents on and off, or pause every job at once.
Runs on its own. Leave Revoye Desk on a spare computer and it answers API jobs all day, with nothing open on the screen. It tells you when a sign-in needs attention.
Shown as Direct inside Revoye Desk.
Browser Agent
Prefer the browser you already use? Let the Revoye extension answer with the AI accounts already signed in to Chrome, Edge or Brave.
Your existing sign-ins. Nothing to sign in to again — the accounts already open in your browser do the answering.
Switch any time. Only one mode is active at a time. Switching waits for running jobs to finish, and the other mode’s agents are kept for when you come back.
Shown as Relay inside Revoye Desk, and set up from there.
Windows and macOS, in your system tray
Updates itself between jobs, never during one
Never keeps your prompts or answers on the machine
Picks up queued work the moment it reconnects
How to set up Revoye Desk
About fifteen minutes from sign-up to your first answer, with nothing to install but Revoye Desk.
Create a free Revoye account
Sign up and verify your email at
revoye.com. Your account holds your devices, agents, API keys, routing rules and job history.Install Revoye Desk and pair it
Install Revoye Desk on the Windows or Mac computer that will answer. Create a pairing code in your dashboard and enter it in Revoye Desk — Home shows Online once it is connected.
Add your AI accounts and create agents
In the Self Desk Agent, sign in to ChatGPT, Claude, Gemini, DeepSeek, Qwen or Perplexity, then create agents. Test agent sends one question through and tells you how long the answer took. Prefer your browser’s own sign-ins? Choose the Browser Agent instead.
Create an API key and send a prompt
Create a scoped API key in the dashboard, point your application at
https://api.revoye.com/v1/completions, and send a prompt. Revoye Desk answers it — wait for the result, or take it by webhook. The quickstart has the exact request.
What happens to a single API prompt
- your app
- Revoye API
- your queue
- Revoye Desk
- a free agent
- one of your AI accounts
- Revoye Desk
- your app
One HTTP request from your application’s point of view. Typically 20 to 90 seconds, because the answer comes from the full chat product on your own account. If Revoye Desk is offline, the prompt waits in your queue until it is back.
You decide how prompts are spread across your accounts
Your accounts, your pace. Every rule here is set in the dashboard and applied by the router before a single prompt reaches a provider.
Round robin
Rotates between agents on each provider, then across providers
Suits The default. Even wear on everything
Least recently used
Always picks the agent that has been idle longest
Suits Spreading load across accounts
Priority
Prefers your highest-priority provider that has a free agent, and falls back
Suits “Use ChatGPT; if it is busy, DeepSeek”
Time window
Only uses providers whose configured hours include right now
Suits “Use Gemini overnight”
Hourly rate limits, at three levels. Set a cap per agent, per provider, and across everything at once. When one is reached, the router simply routes elsewhere — or, if you asked it not to wait, tells your application so explicitly rather than failing vaguely.
Turn anything off, from either end. Disable a provider or a single agent in the dashboard, or switch an agent off in Revoye Desk. Both are honoured; nothing is dispatched to something you have switched off.
Ask for a provider, or don’t. A request can name chatgpt and get ChatGPT or nothing, or name nothing at all and let your strategy decide. Asking for one provider and quietly getting another would be a bug, not a feature, so it never happens.
What you actually get
Your AI spend stops being two bills
A subscription is a flat monthly fee. A model API is metered — you pay per token, forever, and the bill grows with your usage whether or not the subscription you are already paying for went unused that month.
Revoye routes your programmatic prompts through the subscriptions you have already bought, and Revoye Desk answers them with your own accounts. There is no per-token charge on top, because there is no provider API call to meter.
The honest trade is set out under What Revoye is not: you are trading tokens-per-second for cost. If your workload is bursty, batch, background or overnight, that trade is very good. If it is a real-time chat UI with users waiting, it is not.
| Axis | Model API | Revoye |
|---|---|---|
| What you pay the provider | Subscription and metered usage | The subscription you already have |
| Cost per extra prompt | Per token | None |
| What limits your throughput | Your budget | How many agents you run |
| Provider credentials held by a third party | Your API key | None |
Throughput you scale with agents
Need more answers at once? Create more agents in Revoye Desk. Prompts are answered in parallel across them, so capacity grows with the agents you run — not with a budget.
One integration for six providers
One base URL, one bearer token, one request shape. Switching from ChatGPT to Claude is a string in a field, not a new SDK, a new auth scheme and a new response parser.
No key to leak
Revoye holds no provider credential, so there is no provider credential to steal from Revoye. Your Revoye key can be scoped down to write-only or read-only, rotated, and revoked from the dashboard without touching any provider account.
Work that survives being offline
Your queue is durable. Close the laptop mid-run and the job is still there when it wakes up. For anything overnight or unattended, this is the difference between a pipeline and a babysitting job.
It plugs into what you already wrote
Point an OpenAI SDK at Revoye by changing base_url. revoye/auto lets your routing policy pick the provider; revoye/chatgpt pins one. Your model picker keeps working, because /v1/models answers in the shape it expects.
One place to see everything
Every device, every provider, every agent and its live status, your queue depth, and the history of what ran, on which agent, and how long it took. Not six dashboards on six provider sites.
Who Revoye is for
Developers and indie builders
You are building a side project, a tool, or a product feature that calls a model, and the metered bill arrives before the first user does. You already pay for the chat products; Revoye lets the code you are writing use them. One endpoint, an OpenAI-compatible surface, webhooks, and a durable queue — so a prototype does not need a billing account to exist.
Automation and script writers
Batch jobs, content pipelines, data cleanup, scheduled research, a nightly summarisation run. These are exactly the workloads that do not care whether an answer takes forty seconds, and exactly the workloads whose metered cost is highest, because they run without anyone watching. Queue them, leave Revoye Desk running, and take the webhooks in the morning.
Anyone with a spare computer
Install Revoye Desk on a machine you are not using, sign in to your AI accounts with the Self Desk Agent, and it answers API jobs around the clock — no browser left open, nobody at the keyboard. Your subscriptions keep working while you sleep.
Researchers, writers and analysts
When the disagreement between models is the finding — how three systems summarise the same document, or whether an answer holds across providers — name a provider per request and send the identical prompt to each from a script. The comparison runs itself instead of across six tabs.
Application builders and integrators
You are putting an AI feature into someone else’s product, and the customer’s own AI subscription is the natural place for it to draw from. Revoye gives that customer a personal router they control: their accounts, their machine, their rate limits, their revocable key — and one integration on your side.
Small teams
Every member has their own subscriptions and their own machine, and a shared internal tool has nowhere to draw from without a company-wide metered account. Revoye gives each person a personal router and an API key of their own. Today, an account is a single owner: there are no shared workspaces, no seats and no team roles. If you need one billing account and five users under it, Revoye is not there yet.
For developers: one OpenAI-compatible API
One POST, a bearer token, and an answer. Here is the whole thing.
curl https://api.revoye.com/v1/completions \
-H "Authorization: Bearer $REVOYE_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"prompt": "Summarise the CAP theorem in three sentences.",
"provider": "chatgpt",
"wait": true
}'Response
{
"id": "job_01JAY7Q2K8XYZ",
"status": "succeeded",
"response": "The CAP theorem states that…",
"provider": "chatgpt",
"agent_id": "agt_01JAY7…",
"attempts": 1,
"queue_ms": 240,
"run_ms": 18432
}curl https://api.revoye.com/v1/completions \
-H "Authorization: Bearer $REVOYE_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Write release notes for the attached changelog.",
"wait": false,
"callback_url": "https://your-app.example.com/hooks/revoye"
}'Response
{ "id": "job_01JAY7Q2K8XYZ", "status": "queued", "created_at": "2026-08-18T09:14:02Z" }from openai import OpenAI
client = OpenAI(base_url="https://api.revoye.com/v1", api_key=REVOYE_KEY)
answer = client.chat.completions.create(
model="revoye/chatgpt", # or revoye/auto to let the router choose
messages=[{"role": "user", "content": "Summarise the CAP theorem."}],
)Read the full API reference →QuickstartErrorsOpenAPI specification
Integrating with an AI coding agent? Download the Revoye API integration skill — the whole public API in one Markdown file: authentication, every endpoint, the error table, retries, webhooks and a reusable client. Hand it to the agent and it has everything it needs in a single pass.
What Revoye is not
Every one of these is a consequence of the design, not a roadmap item we are embarrassed about. If one of them is a dealbreaker for your workload, better to find out here.
It is not faster than a model API
Each answer comes from the full chat product on your own account, so expect roughly 20 to 90 seconds for a prompt. You get more throughput by running more agents in Revoye Desk, not by waiting less. For a user-facing chat where somebody is watching a cursor blink, use a model API.
It cannot stream
You receive the finished answer, not a token-by-token stream. stream: true returns a 400 rather than pretending. Token usage comes back as null for the same reason: Revoye has no token counts, and inventing numbers would be worse than admitting there are none.
Revoye Desk needs your computer to be on
If no computer running Revoye Desk is online, nothing can be answered. Your prompts are not lost — they queue until Revoye Desk returns — but if you need answers at 3 a.m. from a laptop that sleeps at midnight, the answers arrive when the laptop does. A spare computer that stays on solves it.
It depends on services we do not control
Providers change their products. When one makes a significant change, answers from that provider can stop until Revoye Desk is updated — which it does by itself, in the background. Running agents on more than one provider is the honest mitigation.
It is one account, one owner
No teams, no shared workspaces, no roles, no seats. An API key belongs to a person. This is a deliberate V1 scope decision, not an oversight.
Where your credentials live
The short version: not with us. Revoye is built around that one commitment, and everything else follows from it.
Your AI sign-ins stay on your computer
Revoye has no ChatGPT password, no Claude session and no Gemini token. With the Self Desk Agent you sign in inside Revoye Desk, on the provider’s own page, and the session is kept securely on your machine; with the optional Browser Agent it stays in your browser. There is no provider credential in our database because nothing in Revoye ever needs one.
Only your paired computer receives work
Revoye Desk is paired to your account with a one-time code, and only a device you have paired — and not revoked — can receive your prompts. Revoke it from the dashboard and it is disconnected at once.
Revoye Desk keeps nothing it does not need
Revoye Desk never keeps your prompts or answers on the computer. Its activity list records whether each job worked and how long it took — never the text. Diagnostics you choose to send us leave your prompts, answers and sign-ins out too.
Your Revoye key is scoped, revocable, and shown once
API keys carry scopes: write-only for a key embedded in a client, read-only for a monitor. We store a hash, never the key, so no endpoint exists that could show it again. An API key can never perform an account action — it cannot create another key, revoke a device, or read your audit log. A leaked key cannot become account access.
Your accounts, at the pace you set
Revoye answers with accounts you are legitimately signed in to, at a pace you control: hourly limits per agent, per provider and across everything mean an unattended script cannot hammer one account. You remain responsible for using each account in line with its provider’s terms.
| Revoye stores | Revoye never stores |
|---|---|
| Your email and a password hash | Any provider password, cookie or session |
| A hash of each API key, plus its first characters so you can tell them apart | The API key itself |
| The devices you have paired, and your provider, agent and routing configuration | Any provider API key |
| Your API jobs: prompt, response, timings, and which agent ran them, under a retention policy | Your prompts and answers on your computer — Revoye Desk keeps none |
API prompts and responses are stored so your job history works, and they are deleted on a retention schedule you set yourself in Settings. If you need one gone sooner, delete the job.
Get started with Revoye Desk
Four steps to your first answer
Create your account — free, about a minute. Sign up
Install Revoye Desk — Windows or macOS. Pair it with the code from your dashboard.
Sign in to your AI accounts in Revoye Desk — and create your agents.
Create an API key and send your first prompt — the quickstart is four commands long.
Get Revoye Desk
The desktop AI agent that answers your API, from the system tray. Builds for Windows, macOS, and Linux, with the requirements and the setup steps on the download page.
Download Revoye DeskRevoye Desk runs on Windows and macOS today; Linux is not supported yet. Prefer to use the sign-ins already in your browser? Choose the Browser Agent inside Revoye Desk.
Revoye and Revoye Desk: frequently asked questions
What is Revoye?
Revoye is an AI provider router. It turns the AI chat subscriptions you already pay for — ChatGPT, Claude, Gemini, DeepSeek, Qwen and Perplexity — into an OpenAI-compatible API your own applications can call. The answers come from Revoye Desk, a desktop app on your own computer, so there is no provider API key and no per-token charge.
What is Revoye Desk?
Revoye Desk is the desktop app for Windows and macOS that answers your Revoye API. You pair it with your Revoye account, sign in to your AI accounts, and create agents. When a prompt arrives, the Desk Agent answers it with one of your accounts and sends the result back. It runs from the system tray, updates itself between jobs, and never keeps your prompts or answers on the computer.
Do I need a ChatGPT or Claude API key to use Revoye?
No. That is the point. Revoye Desk answers with the AI accounts you are already signed in to, so there is no provider API key anywhere in the system — not in your code, and not in our database.
Do I need the Revoye browser extension?
No. With the Self Desk Agent you sign in to your AI accounts inside Revoye Desk, and that is all Revoye needs to answer. The browser extension is optional: it is only used by the Browser Agent, for people who would rather answer with the accounts already signed in to Chrome, Edge or Brave.
What is the difference between the Self Desk Agent and the Browser Agent?
Both are modes of Revoye Desk, and only one is active at a time. The Self Desk Agent keeps everything inside Revoye Desk: you sign in to your AI accounts there, and it suits a computer that answers jobs on its own. The Browser Agent uses the optional Revoye extension and the accounts already signed in to your browser. Inside the app they are labelled Direct and Relay. Switching waits for running jobs to finish, and the other mode’s agents are kept.
Which AI providers does Revoye support?
ChatGPT, Claude, Gemini, DeepSeek, Qwen and Perplexity. All six are answered by Revoye Desk through the same API request shape, so switching between them is one field in your request — or let your routing policy choose.
How does Revoye reduce AI API costs?
By using access you have already bought. A model API bills per token on top of any subscription you hold. Revoye Desk answers your prompts with the subscriptions you already pay for, so there is no metered provider charge for a prompt Revoye routes. Throughput grows with the agents you run, not with a budget.
Can I use my existing OpenAI SDK code?
Yes — change the base URL and use revoye/chatgpt or revoye/auto as the model. Three things behave differently and are documented rather than hidden: messages are flattened into a single prompt, streaming is rejected, and usage is null.
How fast is Revoye, and can I stream responses?
Expect roughly 20 to 90 seconds per prompt, because each answer comes from the full chat product on your own account. You scale by running more agents in parallel, not by making one prompt faster. There is no streaming: you receive the finished answer, and stream: true returns a 400 rather than silently ignoring the flag. For a real-time interface, use a model API.
What happens if my computer is off?
Prompts queue. Nothing is lost — when Revoye Desk reconnects, it picks the queue up. If you asked not to wait and gave no webhook, you get an immediate NO_DEVICE_ONLINE instead, because there would be nobody to deliver the answer to. A spare computer that stays on keeps answers flowing around the clock.
What if an agent gets stuck?
Each attempt has a timeout. When it expires the job moves to the next eligible agent, and never back to one that already failed it. The whole job has its own deadline across all attempts, so a retry loop cannot run forever.
Where are my AI logins and my prompts stored?
Your AI logins stay on your own computer — inside Revoye Desk with the Self Desk Agent, or in your browser with the Browser Agent — and Revoye never stores them. Revoye Desk never keeps your prompts or answers on the machine. API prompts and responses are stored on the server so your job history works, and they are removed on a retention window you set yourself in Settings.
Does Revoye Desk work on Linux?
Not yet. Revoye Desk runs on Windows and macOS today, and the API needs a computer running Revoye Desk to answer. Linux is not supported yet.
Is Revoye affiliated with OpenAI, Anthropic, Google or any other provider?
No. Revoye is an independent tool that works with the AI accounts you are already signed in to. Provider names are used only to identify which service an agent connects to. You are responsible for using your own accounts in line with each provider’s terms.
Put the AI accounts you already pay for to work
Create a free account, install Revoye Desk, and give your code the AI subscriptions you already have. No provider API keys, no per-token bill, and your prompts are answered on your own computer under your own accounts.