keypool

Sign in Sign up

Multi-model API Key apply Center

One account applies for multi-model API Keys. The gateway connects to each provider through manually configured channels — all behind a single OpenAI-compatible endpoint with automatic multi-channel failover.

Sign up now Have an account? Sign in

Multi-model access

Admins manually add model providers (base URL + API Key) and set pricing per model ID; one Key works across all platforms.。

OpenAI compatible

/v1/chat/completions standard interface — existing OpenAI SDKs only need a base_url change.。

Usage & rate limits

Each API Key has its own quota, rate limit and expiry; call logs are fully auditable.。

How to apply API Key

1Sign upenter your email and password
2Create API KeyGenerate in the console with custom quotas.
3Start callingOpenAI compatible endpoint, change-and-go

Available models

Model idSource
Loading……
keypool · Multi-model API Key gateway · Powered by Cloudflare Workers

keypool

Account approval system · activated by an admin

Account pending approval

Current account:

Submitted — once an admin approves your account you can obtain API tokens.。

Refresh Sign out

keypool

Multi-model API Key gateway
Install App
Sign out

Console

Welcome back

Endpoint URL

Primary endpoint(OpenAI compatible):
…
Balance (USD)
Insufficient balance; please top up.
…
requests in the last 30 days
…
token (last 30 days)

Quick start

Replace $KEY just swap in the token above. Model ids are listed inthe Model page.

My tokens

These tokens belong only to you · keep them safe

New token

Token list

idnameTokenEnableusagerate limitExpiryCreate
Loading……

Model

currently routable models

Only models with available keys that are not marked offline are shown.;unavailable ones are removed automatically

Available models

Model idSource
Loading……

Model ranking

compare by real call data,pick the most suitable model

Real request stats across all users over the last 7 days. Latency and avg output are computed over successful requests.;the price is what you actually pay(includes discount)。click a column header to sort:low latency=fast, low price=cheap.

Model comparison

ModelSource Response latency ▲ Success rate Price $/1M in/out Avg output calls in the last 7 days
Loading……
Response latency:time to first byte(streaming is time-to-first-byte TTFT,non-streaming is one full round trip)。Price = USD price per 1M tokens(includes discount),Sorted by output price. More samples = more reliable.;Models without successful samples show latency as –。

Docs

OpenAI / Anthropic compatible · one SDK for everything

Endpoint & auth

Chat Completions endpoint:
Auth header:
Authorization: Bearer <Your tokens>

curl

OpenAI SDK

Anthropic compatible(Claude SDK)

The gateway also implements the Anthropic Messages API.,Claude Official SDK / Claude Code can connect directly.:
POST
auth:x-api-key: <Your tokens> or Authorization: Bearer <Your tokens>。base_url use the one above Base URL,model id and the OpenAI APIthe same SDK。
The request body is in Anthropic format.:messages + max_tokens(required)。the response also carries X-KeyPool-Provider / X-KeyPool-Model / X-KeyPool-Fallback Response headers(After failover the Model may differ from the request.)。

Model id

Model idSource
Loading……

POST /v1/chat/completions

Base URL(OpenAI baseURL use this one):
Request body(same as OpenAI;support stream:true SSE streaming):
The gateway, by default, when the selected model is unavailable,Auto failoverto a similar available model. To disable failover and force only the selected model,add "fallback": false(the model is unavailable and the request errors out directly.)。

Response headers

Response headersMeaning
X-KeyPool-Providerthe provider actually hit(e.g. gemini)
X-KeyPool-Modelthe model actually used id(may differ from the request after failover.)
X-KeyPool-Fallbackits presence means a failover happened.,the value is the model from the original request.

Other endpoints

GET /v1/models — Lists currently routable models.(Only models with available keys that are not marked unavailable are shown.):
GET
native passthrough(use each provider native protocol directly,The gateway only picks keys and bills.):
/gemini/*  ·  /mistral/*  ·  /openrouter/*
just append the upstream native path after the prefix.,e.g. /gemini/v1beta/models/...:generateContent。auth also uses Authorization: Bearer <Your tokens>。

Error code

Error responses follow the OpenAI-compatible structure.,the error message is in body.error.message:
Status codeMeaning / Handling
402insufficient balance — top up and retry
429rate-limited / quota exceeded — retry after backoff
4xxRequest error(Params / model id / Auth)
5xxupstream error — retry later

Billing

billed by token:Each call is billed separately for input / output tokens.,see the price the admin set inChannelsmodel pricing configured on the page. Requests are rejected when the balance runs out. See usage and transactionsthe Usage and Balance pages.

Overview

Key Pool health

Pool status

available
–
cooldown
–
disabled
–
Provideravailablecooldowndisabled
Loading……

Channel

Add model providers manually · price by model ID

Add channel

选择提供商后自动填入对应的 Base URL 格式与认证方式(Gemini 用 x-goog-api-key、Azure 用 api-key、Claude 用 x-api-key); Anthropic 自动做协议转换(Request/响应/streaming); Z.ai / Gemini 无需 /v1 前缀。
Loading……

Users

approval system · pending accounts on top

User list

EmailRoleStatusCreate
Loading……

Token

Global tokens · including admin-issued ones

issue token

Shown only once; copy and save it now.

Token list

idnameRoleattributionusageRPMexpiredEnableCreateActions
Loading……

Chat

Pick a model and chat · billed by token

Remaining balance – USD
Start chat…

Debug chat

Chat with a channel model · uses real billing routing

Debug replies are truncated at 256 tokens by default · billed at the model price
pick a model and chat…

usage

Last 30 days · your own calls

total requests
–
Success rate
–
total tokens
–

requests in the last 14 days success failed

by provider

ProviderRequestsuccessAvg latencytoken
Loading……

Recent requests

TimeProviderModelStatuslatencytoken
Loading……

Logs

Last 30 days · all calls

total requests
–
Success rate
–
total tokens
–

requests in the last 14 days success failed

by provider

ProviderRequestsuccessAvg latencytoken
Loading……

Top users · last 30 days

#UsersRequestSuccess ratetokenRecent
Loading……
Click a row to view only the logs of that user.。

Recent requests Page 1

TimeUsersProviderModelStatuslatencytoken
Loading……

Billing

Balance · Top-up · Transactions · Pricing · Payment gateway

payment gateway (EPay) Open merchant ↗

Signature: direct concatenation (params other than sign/sign_type sorted by ASCII name, joined as k=v&k2=v2,append the API Key and take MD5 lowercase). Top-ups are priced in USD; the gateway handles the exchange rate.。

Top up

Balance overview

Total balance USD
–
Users
–
paying users
–
EmailsubBalance USD
Loading……

Recent transactions Shows up to the most recent 100 entries.

TimeUsersTypeAmount USDBalance USDModeltokenNote
Loading……

Model pricing

Modelinput $/Mtokcache hit $/Mtokoutput $/Mtok
Loading……
model pricing is inChannelsare added and edited together with the model; shown here read-only. Prices are stored in micro-USD per Mtok. Input has two tiers: cache hits at「cache hit」price (empty = same as input price), cache misses atthe input price; output billed by「output」pricing. OpenAI cached_tokens, Anthropic cache_read, Gemini cachedContent are all recognized and billed by tier.。

Account

Change login email & username · change password

Account profile

To change email: enter the new address and send the code (delivered to the new mailbox), then save. Changing only the username needs no code. From next login use the new mailbox; tokens, usage and history are unaffected.

Change password

The code is emailed to your login address and is valid for 10 minutes. You can request a new one after 5 minutes.

System settings

Brand · Icons · Floating contacts · Footer social

Brand & icons

Logo transparent PNG recommended; Favicon 64×64 PNG above (each ≤ 512KB)。after uploading clickSave settings,takes effect site-wide after refresh (including login page and tab icon)。

Floating dock

Leave empty to hide the corresponding floating button.; If all three are empty, the whole floating dock hides automatically. The chat link opens in an iframe popup; use an embeddable chat service.。

Footer

Leave empty to use the default footer text (Site name · Multi-model API Key gateway · Powered by Cloudflare Workers)。

Follow us

Leave empty to hide the corresponding footer icon.; If all are empty, the whole Follow us bar hides automatically. Links open in new tabs.。

Email service (SMTP) Tutorial

Used for recharge invoices and password-change codes. QQ Mail requires an app password (not the login password); ports 465 (SSL) or 587 (STARTTLS). Leave blank to disable email.

Balance

your balance and transactions

Current balance

Balance USD
–

Top up

Top-up is being processed; the balance will update automatically once credited (you can clickRefresh)。
Loading……
Top-ups are priced in USD; the exchange rate is handled by the gateway. Payment methods not enabled in the admin panel are not shown.; The balance is credited automatically after a successful payment.。

Recent transactions

TimeTypeAmount USDBalance USDModeltokenNote
Loading……
keypool · Multi-model API Key gateway · Powered by Cloudflare Workers