faucet
Request access
Guides

Getting started

Create an organization, mint a key, and make your first call through the Faucet gateway.

Everything you need to go from nothing to a metered request. It takes about five minutes, and you will not install a Faucet SDK at any point in it.

Faucet is in closed alpha

There is no self-serve sign-up yet — organizations are created by hand. If you want an account, email keunwoopark.524@gmail.com with a line about what you are building. Step 1 below is what happens once you have one.

What Faucet is

One HTTPS endpoint that speaks the OpenAI wire format across every provider and the native Anthropic Messages format for Anthropic models. You send a request with a Faucet key, name a model as provider/model, and Faucet routes it, streams the response back, and records what it cost. Chat, embeddings, image generation and transcription all use the same key and host.

Three things follow from that:

  • Any OpenAI-compatible client already works. The Vercel AI SDK, the official OpenAI SDKs, LangChain, curl. Change the base URL and the key, nothing else.
  • Claude Code works against /v1/messages. Native tool, cache, thinking and content blocks pass through to Anthropic without an OpenAI translation layer.
  • Switching model or provider is a string change. No second integration, no second key, no second invoice.
Base URL   https://api.intfaucet.com/v1
Auth       Authorization: Bearer fct_live_…
Endpoints  /messages, /chat/completions, /embeddings, /images/generations,
           /images/edits, /audio/transcriptions, /models
Models     anthropic/claude-opus-5, openai/gpt-5.2, google/gemini-3.5-flash,
           upstage/solar-pro4, voyage/voyage-4, openai/gpt-image-2,
           google/gemini-3-pro-image,
           openai/gpt-4o-mini-transcribe, …

1. Get an organization

During the alpha we create it for you and send you a sign-in link to the console. The organization — not your user account — is what owns keys, credit and usage, so tell us what to name it after: your company or your product, rather than yourself.

You can invite teammates from Members. Roles decide who may mint and revoke keys, so an engineer who only needs to read usage does not need the ability to issue credentials.

Credit is prepaid. An organization with a zero balance is refused with a 402 rather than allowed to run up a bill, which is also what caps your exposure if a key ever leaks. Alpha organizations are funded with starting credit when we create them; the current balance and the last 30 days of usage are on the organization's overview. When it runs low, ask for more. Your code does not need that login to check: GET /v1/credits answers with the live figure, which is what a batch job at 03:00 can look at before it starts. A 402 names which of the three limits it hit in error.param — see Errors and limits.

2. Create an API key

API keys → Create key. Give it a name that says where it runs (production-web, staging-worker) and pick an environment:

EnvironmentPrefixUse
Livefct_live_…Production traffic
Testfct_test_…Local development and CI

The key is shown once. Only its SHA-256 is stored, so a lost key is reissued, never recovered — copy it straight into your secret manager and never into a repository. Revoking a key from the console takes effect across the whole gateway fleet within seconds.

Set it in your environment:

export FAUCET_API_KEY="fct_live_…"

Reselling Faucet?

If each of your subscribers needs their own key and allowance, you can mint and revoke those from your own backend rather than the console. See Management keys.

3. Make your first request

The fastest check that everything is wired up — key, credit, model:

curl https://api.intfaucet.com/v1/chat/completions \
  -H "Authorization: Bearer $FAUCET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-opus-5",
    "messages": [{ "role": "user", "content": "Say hello in five words." }]
  }'

That is the whole integration. From here:

Where to go when something is off

  • The console — keys, members, usage and prices. Your sign-in link comes with your organization. The organization overview shows the last 30 days of usage broken down by model, which is usually where a surprising bill or a mysterious 402 explains itself.
  • GET /v1/models — what your key can actually reach, which is the authoritative answer.
  • GET /v1/credits and GET /v1/key — the live credit your next request is judged against, and what the key in your hand is allowed.

Anything else — a model you want carried, a limit raised, a bug — goes to keunwoopark.524@gmail.com. During the alpha that address is the support channel.