Quickstart
Sign up, get your tokens, and make your first governed LLM call. Five minutes end-to-end.
The fastest path from zero to a governed LLM call. Five minutes, free tier, no credit card.
1. Create an account
Two paths. Both end at the same place — a page with your
admin token (rg_adm_*) and your first
agent API key (rg_agt_*).
Option A · Have your agent do it
If you're using Claude Code, Cursor, Codex, or any agent runtime, the agent can drive the whole signup flow. Open rungate.dev/signup and copy the prompt from the recommended card into your agent. The agent will:
- Ask you for your email.
POST /auth/startfrom its own runtime (no browser CORS issues).- Tell you to click the magic link in your inbox.
- Wait for you to paste the two tokens back from the dashboard's
/auth/credentialspage. - Save them to
~/.rungate/config.toml(chmod 0600) and verify the setup with aGET /v1/mecall.
Option B · Plain email signup
Go to https://app.rungate.dev/auth, enter your email, click the magic link in the message we send you, pick an organization name. You'll land on a credentials page with both tokens. Copy them — the page warns you, accurately, that you can't see them again.
2. Make your first call
Point your OpenAI or Anthropic SDK at Rungate. The
base_url is https://app.rungate.dev/v1. The API key
is your rg_agt_* token.
OpenAI SDK (Python)
from openai import OpenAI
client = OpenAI(
base_url="https://app.rungate.dev/v1",
api_key="rg_agt_your_token_here",
)
response = client.chat.completions.create(
model="gpt-4",
messages=[{"role": "user", "content": "Hello, Rungate."}],
)
print(response.choices[0].message.content) Anthropic SDK (TypeScript)
import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
baseURL: 'https://app.rungate.dev/v1',
apiKey: 'rg_agt_your_token_here',
});
const response = await client.messages.create({
model: 'claude-sonnet-4',
max_tokens: 256,
messages: [{ role: 'user', content: 'Hello, Rungate.' }],
});
console.log(response.content); curl
curl -X POST https://app.rungate.dev/v1/chat/completions \
-H "Authorization: Bearer rg_agt_your_token_here" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4",
"messages": [{"role": "user", "content": "Hello, Rungate."}]
}' The response is the provider's native format, unchanged. Rungate just forwarded it.
3. See the run
Open the dashboard at app.rungate.dev/runs. You should see one run with one step (the call you just made), auto-grouped because you didn't pass an explicit run ID. Click in to see latency, cost, model, and the full request/response.
4. Group calls into a run (optional, recommended)
Pass an x-rungate-run-id header to group multiple
calls into one run. Same ID = same run. Budgets, policies, and the
audit trail apply to the run as a whole.
# OpenAI SDK
response = client.chat.completions.create(
model="gpt-4",
messages=[...],
extra_headers={
"x-rungate-run-id": "run_customer_refund_2026_04_26",
},
) See Runs for the full grouping semantics — auto-close timeout, manual completion, long-horizon workflows.
5. Add a budget
Create a policy with a budget cap and attach it to your agent.
Open the dashboard's Policies
page → New policy → set Max USD per run to
something low (e.g. $0.50) → save → assign it to your
agent.
Now run a multi-call workflow. When cumulative spend crosses the
cap, the next call gets 402 Payment Required with the
full context. Your agent stops without the human getting a surprise
bill.
You're done
From here, depending on what you want to build:
- Policies & budgets — model allowlists, tool blocklists, rate limits.
- Approval gates — pause runs for human review.
- Webhooks — get notified on run events.
- Self-host — run Rungate on your own infrastructure.