---
title: "one API for every model you pay for"
canonical_url: "https://superbot.gg/api"
summary: "every model on your account answers at one URL in the OpenAI or Anthropic format: your subscriptions, API keys and custom endpoints, one key."
---

> Markdown of https://superbot.gg/api. Site index: /llms.txt.

, so the nav paints whole. Browsers without it paint as before. -->

[skip to content](https://superbot.gg/api#main)

[![](https://superbot.gg/site/assets/brand/mark-duo-sm.svg)![](https://superbot.gg/site/assets/brand/mark-duo-sm-light.svg)superbot.gg](https://superbot.gg/)

[superbot.gg](https://superbot.gg/) / api

# One endpoint for every model on your account.

Your subscriptions, API keys and custom endpoints answer at one URL.
Call them in the OpenAI or Anthropic format.
Mint and manage scoped keys from the API itself.

[Get an API key](https://superbot.gg/account/api#keys) [Every route](https://superbot.gg/api#routes)

**OpenAI dialect**

```sh
OPENAI_BASE_URL=https://api.superbot.gg/v1
OPENAI_API_KEY=sbc_...
curl https://api.superbot.gg/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -H "content-type: application/json" -d '{"model":"superbot","stream": true,"messages":[{"role":"user","content":"hi"}]}'
```

**Anthropic dialect**

```sh
ANTHROPIC_BASE_URL=https://api.superbot.gg/v1
ANTHROPIC_API_KEY=sbc_...
curl https://api.superbot.gg/v1/messages -H "x-api-key: $ANTHROPIC_API_KEY" -H "anthropic-version: 2023-06-01" -H "content-type: application/json" -d '{"model":"superbot","max_tokens":256,"stream": true,"messages":[{"role":"user","content":"hi"}]}'
```

**curl**

```sh
curl -N https://api.superbot.gg/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -H "content-type: application/json" -d '{"model":"superbot","stream":true,"messages":[{"role":"user","content":"hi"}]}'
```

## Any model on your account

Connect a subscription, a provider API key or a custom endpoint once.
Every model it carries answers at this URL.
Name the model id and the call goes to the provider that holds it.

`GET /v1/models` lists every id your key can name.
Answers come back in the dialect you called, OpenAI or Anthropic.

Set a client up per dialect: [the OpenAI base URL reference](https://superbot.gg/docs/openai-base-url) and [the Anthropic base URL reference](https://superbot.gg/docs/anthropic-base-url).

Add a provider in the app, or add an endpoint on the [api console](https://superbot.gg/account/api#providers) or with `POST /v1/upstreams`.

## Keys you mint and manage

Mint one scoped key per tool or teammate.
Give each its own scopes, allowed models and daily or monthly cap.
Revoke one and only that tool stops.

Keys come in two classes: an `sbc_` caller key is scoped to one tool or teammate, and an `sbk_` account key covers the whole account. The model routes take a caller key; the account key answers `401` there.

Do it on the [api console](https://superbot.gg/account/api#keys) or from the API itself.
`POST /v1/keys` mints, `GET /v1/keys` lists, `PATCH /v1/keys/{id}` edits, `DELETE /v1/keys/{id}` revokes.
A key needs `keys:write` to do this, and never mints a key wider than itself.

No account yet? An agent follows [/auth.md](https://superbot.gg/auth.md): it signs its user in with an emailed code, then mints a caller key with the token it gets.

### Scopes

| scope           | what it allows                                              |
| --------------- | ----------------------------------------------------------- |
| gateway:invoke  | Call models through Superbot                                |
| usage:read      | Read usage and spend                                        |
| billing:read    | Read the credit balance                                     |
| keys:read       | List caller keys                                            |
| keys:write      | Mint, edit and revoke caller keys                           |
| endpoints:read  | Read custom endpoints and aliases                           |
| endpoints:write | Change custom endpoints and aliases                         |
| teams:read      | Read teams and invites                                      |
| teams:write     | Manage teams, members and invites                           |
| devices:read    | List devices                                                |
| devices:write   | Remove devices                                              |
| runs:read       | List and read cloud runs and their events                   |
| runs:write      | Start and cancel cloud runs                                 |
| mcp:invoke      | Use the MCP tools on your relay                             |
| turns:read      | Read turns and re-attach to their streams                   |
| tools:invoke    | Use the app's tools: images, audio, connectors, tool search |

Presets: Gateway calls models, Read-only query reads your account, Full access holds every scope.

Your own MCP tools are at `https://api.superbot.gg/v1/mcp`.
The MCP endpoints are listed in [Remote MCP](https://superbot.gg/docs#remote-mcp).

## Every route

Each route links to its full reference, with request and response samples.

### Call models

| method | path                                                                                    | what it does                 | scope          |
| ------ | --------------------------------------------------------------------------------------- | ---------------------------- | -------------- |
| GET    | [/v1/turns/{session}](https://superbot.gg/developers/gateway/getTurn)                   | Read a turn                  | turns:read     |
| GET    | [/v1/turns/{session}/stream](https://superbot.gg/developers/gateway/streamTurn)         | Re-attach to a turn’s stream | turns:read     |
| POST   | [/v1/chat/completions](https://superbot.gg/developers/gateway/createChatCompletion)     | Create a chat completion     | gateway:invoke |
| POST   | [/v1/responses](https://superbot.gg/developers/gateway/createResponse)                  | Create a response            | gateway:invoke |
| POST   | [/v1/messages](https://superbot.gg/developers/gateway/createMessage)                    | Create a message             | gateway:invoke |
| POST   | [/v1/messages/count_tokens](https://superbot.gg/developers/gateway/countMessageTokens) | Estimate input tokens        | any key        |
| GET    | [/v1/models](https://superbot.gg/developers/gateway/listModels)                         | List models                  | any key        |

### Manage keys

| method | path                                                                  | what it does        | scope      |
| ------ | --------------------------------------------------------------------- | ------------------- | ---------- |
| GET    | [/v1/keys](https://superbot.gg/developers/keys/listKeys)              | List caller keys    | keys:read  |
| POST   | [/v1/keys](https://superbot.gg/developers/keys/createKey)             | Create a caller key | keys:write |
| GET    | [/v1/keys/whoami](https://superbot.gg/developers/keys/getCurrentKey)  | Get the calling key | any key    |
| PATCH  | [/v1/keys/{id}](https://superbot.gg/developers/keys/updateKey)        | Update a caller key | keys:write |
| DELETE | [/v1/keys/{id}](https://superbot.gg/developers/keys/revokeKey)        | Revoke a caller key | keys:write |
| POST   | [/v1/keys/{id}/rotate](https://superbot.gg/developers/keys/rotateKey) | Rotate a caller key | keys:write |

### Usage and spend

| method | path                                                                          | what it does                   | scope        |
| ------ | ----------------------------------------------------------------------------- | ------------------------------ | ------------ |
| GET    | [/v1/usage](https://superbot.gg/developers/usage/getUsage)                    | Get usage over a window        | usage:read   |
| GET    | [/v1/usage/requests](https://superbot.gg/developers/usage/listUsageRequests)  | List usage per request         | usage:read   |
| GET    | [/v1/usage/daily](https://superbot.gg/developers/usage/getUsageDaily)         | Get usage per UTC day          | usage:read   |
| GET    | [/v1/usage/breakdown](https://superbot.gg/developers/usage/getUsageBreakdown) | Get usage bucketed and grouped | usage:read   |
| GET    | [/v1/usage/export](https://superbot.gg/developers/usage/exportUsage)          | Export usage rows              | usage:read   |
| GET    | [/v1/credits](https://superbot.gg/developers/usage/getCredits)                | Get the credit balance         | billing:read |
| GET    | [/v1/spend](https://superbot.gg/developers/usage/getSpend)                    | Get AI spend across apps       | usage:read   |
| GET    | [/v1/usage/report](https://superbot.gg/developers/usage/getUsageReport)       | Get a usage report             | usage:read   |

### Custom endpoints

| method | path                                                                                             | what it does                     | scope           |
| ------ | ------------------------------------------------------------------------------------------------ | -------------------------------- | --------------- |
| GET    | [/v1/upstreams](https://superbot.gg/developers/endpoints/listUpstreams)                          | List custom endpoints            | endpoints:read  |
| POST   | [/v1/upstreams](https://superbot.gg/developers/endpoints/createUpstream)                         | Add a custom endpoint            | endpoints:write |
| PATCH  | [/v1/upstreams/{slug}](https://superbot.gg/developers/endpoints/updateUpstream)                  | Update a custom endpoint         | endpoints:write |
| DELETE | [/v1/upstreams/{slug}](https://superbot.gg/developers/endpoints/deleteUpstream)                  | Remove a custom endpoint         | endpoints:write |
| POST   | [/v1/upstreams/{slug}/probe](https://superbot.gg/developers/endpoints/probeUpstream)             | Re-probe a custom endpoint       | endpoints:write |
| GET    | [/v1/aliases](https://superbot.gg/developers/endpoints/listAliases)                              | List @mention aliases            | endpoints:read  |
| PUT    | [/v1/aliases/{token}](https://superbot.gg/developers/endpoints/setAlias)                         | Set an @mention alias            | endpoints:write |
| DELETE | [/v1/aliases/{token}](https://superbot.gg/developers/endpoints/deleteAlias)                      | Delete an @mention alias         | endpoints:write |
| GET    | [/docs/services/{service_id}.json](https://superbot.gg/developers/endpoints/getServiceDocument) | Get a service’s OpenAPI document | no key          |

### Teams

| method | path                                                                                                | what it does              | scope       |
| ------ | --------------------------------------------------------------------------------------------------- | ------------------------- | ----------- |
| GET    | [/v1/org/{id}/audit](https://superbot.gg/developers/teams/exportTeamAuditLog)                       | Export a team’s audit log | teams:read  |
| GET    | [/v1/teams](https://superbot.gg/developers/teams/listTeams)                                         | List teams                | teams:read  |
| POST   | [/v1/teams](https://superbot.gg/developers/teams/createTeam)                                        | Create a team             | teams:write |
| GET    | [/v1/teams/{team_id}](https://superbot.gg/developers/teams/getTeam)                                | Get a team                | teams:read  |
| PATCH  | [/v1/teams/{team_id}](https://superbot.gg/developers/teams/updateTeam)                             | Update a team             | teams:write |
| DELETE | [/v1/teams/{team_id}](https://superbot.gg/developers/teams/deleteTeam)                             | Delete a team             | teams:write |
| GET    | [/v1/teams/{team_id}/members](https://superbot.gg/developers/teams/listTeamMembers)                | List team members         | teams:read  |
| PATCH  | [/v1/teams/{team_id}/members/{user_id}](https://superbot.gg/developers/teams/updateTeamMember)    | Change a member’s role    | teams:write |
| DELETE | [/v1/teams/{team_id}/members/{user_id}](https://superbot.gg/developers/teams/removeTeamMember)    | Remove a team member      | teams:write |
| GET    | [/v1/teams/{team_id}/invites](https://superbot.gg/developers/teams/listTeamInvites)                | List pending team invites | teams:read  |
| POST   | [/v1/teams/{team_id}/invites](https://superbot.gg/developers/teams/createTeamInvite)               | Invite someone to a team  | teams:write |
| DELETE | [/v1/teams/{team_id}/invites/{code}](https://superbot.gg/developers/teams/revokeTeamInvite)        | Revoke a team invite      | teams:write |
| POST   | [/v1/teams/{team_id}/invites/{code}/resend](https://superbot.gg/developers/teams/resendTeamInvite) | Resend a team invite      | teams:write |
| POST   | [/v1/team_invites/{code}/accept](https://superbot.gg/developers/teams/acceptTeamInvite)            | Accept a team invite      | teams:write |

### Devices

| method | path                                                                                                                   | what it does                      | scope         |
| ------ | ---------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ------------- |
| POST   | [/v1/devices/{device_id}/jobs](https://superbot.gg/developers/devices/createAgentJob)                                 | Run a job on an agent computer    | devices:write |
| GET    | [/v1/devices/{device_id}/jobs/{job_id}](https://superbot.gg/developers/devices/getAgentJob)                          | Read an agent computer job        | devices:read  |
| GET    | [/v1/devices/{device_id}/terminals/{terminal_id}/stream](https://superbot.gg/developers/devices/streamAgentTerminal) | Stream an agent computer terminal | devices:read  |
| GET    | [/v1/pair/{user_code}](https://superbot.gg/developers/devices/previewAgentPair)                                       | Preview an agent computer code    | any key       |
| POST   | [/v1/pair/{user_code}/approve](https://superbot.gg/developers/devices/approveAgentPair)                               | Approve an agent computer code    | any key       |
| POST   | [/v1/pair/{user_code}/deny](https://superbot.gg/developers/devices/denyAgentPair)                                     | Decline an agent computer code    | any key       |
| GET    | [/v1/devices](https://superbot.gg/developers/devices/listDevices)                                                      | List devices                      | devices:read  |
| GET    | [/v1/devices/{device_id}](https://superbot.gg/developers/devices/getDevice)                                           | Get a device                      | devices:read  |
| PATCH  | [/v1/devices/{device_id}](https://superbot.gg/developers/devices/updateDevice)                                        | Rename a device                   | devices:write |
| DELETE | [/v1/devices/{device_id}](https://superbot.gg/developers/devices/deleteDevice)                                        | Unlink a device                   | devices:write |

### Runs

| method | path                                                                              | what it does                      | scope      |
| ------ | --------------------------------------------------------------------------------- | --------------------------------- | ---------- |
| GET    | [/v1/runs](https://superbot.gg/developers/runs/listRuns)                          | List cloud runs                   | runs:read  |
| POST   | [/v1/runs](https://superbot.gg/developers/runs/createRun)                         | Start a cloud run                 | runs:write |
| GET    | [/v1/runs/projects](https://superbot.gg/developers/runs/listRunProjects)          | Find the project for a repository | runs:read  |
| GET    | [/v1/runs/{run_id}](https://superbot.gg/developers/runs/getRun)                  | Get a cloud run                   | runs:read  |
| GET    | [/v1/runs/{run_id}/events](https://superbot.gg/developers/runs/listRunEvents)    | Follow a run’s events             | runs:read  |
| POST   | [/v1/runs/{run_id}/cancel](https://superbot.gg/developers/runs/cancelRun)        | Cancel a cloud run                | runs:write |
| POST   | [/v1/runs/{run_id}/messages](https://superbot.gg/developers/runs/sendRunMessage) | Steer a running cloud run         | runs:write |

The whole reference lives at [/developers](https://superbot.gg/developers).
The machine-readable spec is [/docs/openapi.json](https://superbot.gg/docs/openapi.json).

**house models**plus every model on your account

3

**dialects**OpenAI Chat, Responses, Messages

3

**requests a minute per key**

1,200

## Streaming

Set `stream` to true.
Read server-sent events.

Chunks arrive in the dialect you called.

`data: {"object":"chat.completion.chunk","choices":[{"delta":{"content":"Hello"}}]}` `data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Hello"}}`

## Plans for every kind of work

Start free, or try Pro free for 7 days.
The trial needs a card. Limits count every agent running at once.

[Install now](https://superbot.gg/download?cta%5Fid=page%5Finstall) [superbot relay and CLI](https://superbot.gg/download#relay)

### Superbot Free

$0 a month

10,000 credits a month
pay as you go after

Concurrent agents

10

Long runs

No

Scheduled runs

No

Superbot number

No

Support

Community

Models

Up to mid tier

### Superbot Plus

$20 a month$16.67 a month

Billed $200 yearly

250M Superbot tokens/mo
22,000 credits, any model

Concurrent agents

6

Long runs

Yes

Scheduled runs

Yes

Superbot number

No

Support

Community

Models

Every model

7-day Pro trial

### Superbot Pro (recommended)

$100 a month$80 a month

Billed $960 yearly

1.5B Superbot tokens/mo
120,000 credits, any model

Concurrent agents

12

Long runs

Yes

Scheduled runs

Yes

Superbot number

Yes

Support

Priority

Models

Every model

[Start 7-day free trial](https://superbot.gg/account/billing?trial=month)

### Superbot Max

$200 a month$160 a month

Billed $1,920 yearly

4B Superbot tokens/mo
270,000 credits, any model

Concurrent agents

Unlimited

Long runs

Yes

Scheduled runs

Yes

Superbot number

Yes

Support

Priority

Models

Every model

### Superbot Teams

$25 a seat a month$25 a seat a month

Billed yearlyBilled $300 a seat yearly

300M Superbot tokens/seat
30,000 a seat, pooled

Concurrent agents

6 per seat

Long runs

Yes

Scheduled runs

Yes

Superbot number

Yes

Support

Dedicated

Models

Every model

The 7-day Superbot Pro trial needs a card. Nothing is charged during it, and it cancels when it ends unless you continue; one account gets one trial. Past the allowance, Plus and Teams bill $1.00 per 1,000 credits, Pro $0.90 and Max $0.80. Superbot tokens at 3:1 input to output. They spend on superbot and superbot-fast only. Limits count every agent running at once. [How billing works](https://superbot.gg/docs#billing-tiers).

### Credit packs

| price  | credits   |
| ------ | --------- |
| $5     | 5,000     |
| $20    | 20,000    |
| $100   | 100,000   |
| $250   | 275,000   |
| $500   | 600,000   |
| $1,000 | 1,250,000 |

Plan credits reset monthly and do not roll over. Pack credits never expire.

## One rate card for every call

1 credit = $0.001. Rates are credits per 1M tokens, with dollars beside each.

### House models

superbot and superbot-fast bill the same rates below.

| use                      | input       | output        | cache write | cache read |
| ------------------------ | ----------- | ------------- | ----------- | ---------- |
| API and MCP              | 1,000 $1.00 | 5,000 $5.00   | 1,250 $1.25 | 50 $0.05   |
| API and MCP, fast mode   | 2,000 $2.00 | 10,000 $10.00 | 2,500 $2.50 | 100 $0.10  |
| Superbot apps            | 200 $0.20   | 1,000 $1.00   | 250 $0.25   | 10 $0.01   |
| Superbot apps, fast mode | 400 $0.40   | 2,000 $2.00   | 500 $0.50   | 20 $0.02   |

Calls with your API key bill at the API and MCP rate.
An MCP connector turn bills at the same rate.
superbot and superbot-fast both bill it.
Neither model is free.
Fast mode bills 2x every rate.
Reasoning tokens bill as output.

In the Superbot apps, superbot and superbot-fast both bill at 20% of the API and MCP rate.

### Your own subscriptions and keys

Models on your own subscriptions and keys are free on superbot.
superbot adds no credits to those calls.
You pay your provider as usual.

A vendor model dialed on superbot credits, with no account of yours attached, is charged at its own list price.
That is the same $0.001 per credit.

Every call on superbot credits is priced on this one card.
Superbot Free carries 10,000 beta credits a month, refilled on the 1st.

## House models

These always answer, with or without a provider connected.
Every other model on your account answers by its own id.

| model         | role                                  | context |
| ------------- | ------------------------------------- | ------- |
| superbot      | Your Superbot agent.                  | 1M      |
| superbot-omni | Superbot agent, run on your computer. | 1M      |
| superbot-fast | Quick and cheap, for small jobs.      | 500k    |

## Status contract

- `401` missing, malformed or unknown key
- `402` budget spent
- `403` revoked key or model not allowed
- `429` over the per-key bucket
- `499` the caller hung up

Signed in? Mint a key on the [api console](https://superbot.gg/account/api).

Third-party client? [Use superbot from Cursor, Continue, Claude Code and other clients](https://superbot.gg/clients).

[Get an API key](https://superbot.gg/account/api#keys) [Install now](https://superbot.gg/download?cta%5Fid=page%5Finstall)
