Skip to content

Quickstart: Manual setup

Manual setup means pointing an app you already run at Gate: change its base URL to the gateway and authenticate with your Gate key. The exact edit is small but app-specific. It is sometimes just those two values, sometimes a short provider block or an extra header or two, so follow the per-app guide for the precise config. After that the app works exactly as before, with Gate’s security scanning, audit trail, caching, and cost tracking running underneath.

This is the path for apps like Claude Code, Codex, Hermes, and OpenClaw, and for your own code through an SDK or curl. If you would rather not edit config by hand, Gate Connect does the same wiring for you from a menu-bar app.

Before you start

You need:

  • A Gate account. Sign in to the dashboard to create one.
  • The app, SDK, or code you want to connect.
  • To pay through Gate, a funded balance (see step 3). Bringing your own provider keys needs no balance.

Step 1. Create a Gate key

In the dashboard, open API keys and create a key. Copy it somewhere safe — you see the full value only once. Gate keys start with sk-gw-.

Step 2. Point your client at Gate

Send your client’s requests to Gate’s base URL instead of straight to the provider:

https://gateway.constellationgate.ai

That one setting is the same for everyone. Clients expose it differently: SDKs take a base-URL option, and apps usually read it from an environment variable or a config file. Follow the guide for yours:

How you authenticate depends on how you pay, which is the next step.

Step 3. Authenticate and choose how you pay

You always send your Gate key, so Gate knows who you are and can apply your policies, audit, and limits. What else you send decides who pays the provider. Pick one.

Pay through Gate

Gate holds the provider credentials and charges a prepaid balance. Add credits first: open Billing, then Top up, in the dashboard. Pay-through requests need a funded balance to run. Send these headers:

HeaderValue
AuthorizationBearer <Gate key>
X-Gate-ProviderOptional. bedrock or openrouter. Omit to auto-route to the cheapest eligible provider.

Use your own keys

Keep your provider request unchanged — its authentication header, path, and body all stay as they are — and add two headers. Gate forwards the request to your upstream as-is, runs the full security and audit pipeline, and charges nothing to your balance, since your provider bills you directly.

Header to addValue
X-Gate-Api-Key<Gate key>
X-Gate-Upstream-Url<provider base URL>

Both request shapes work: send Anthropic-style requests to /v1/messages (with anthropic-version: 2023-06-01) or OpenAI-style requests to /v1/chat/completions. Gate replies in the same shape you sent.

Use the model id your upstream expects, not Gate’s catalog id — with your own keys, Gate forwards the model field as-is, so api.anthropic.com wants claude-haiku-4-5, not anthropic/claude-haiku-4-5. The same rule drives GET /v1/models: on a connection that carries X-Gate-Upstream-Url, Gate forwards the listing to your upstream and returns that host’s own model list, so tools that discover models through the gateway see exactly the ids the upstream accepts.

For runnable code, see the OpenAI SDK guide, with TypeScript, Python, and curl examples.

Step 4. Confirm it is working

Open the dashboard, then send a message or run a request the way you normally would. New requests appear on the Messages page within a few seconds, each with its model, cost, and security result. Open any one to see the full record: prompt, response, tokens, cost, and latency.

If nothing shows up, double-check the base URL and key in your app’s config, or see Error handling and debugging.

Next steps