/ quickstart

Quickstart

Make your first base/mnt.ai request in under a minute.

Make your first base/mnt.ai request in under a minute. The router speaks both the OpenAI and Anthropic wire formats, so any existing SDK, CLI, or coding agent works with a one-line change.

1. Get an API key

  1. Sign in at basemnt.ai.
  2. Open Settings → API keys and create a key.

Keys look like sk-.... Treat them like passwords — requests are metered per plan, and a leaked key burns your quota.

2. Point a client at the router

The base URL is https://api.basemnt.ai. Both protocol families live on the same host:

ProtocolBase URLEndpoints
OpenAI-compatiblehttps://api.basemnt.ai/v1POST /v1/chat/completions, GET /v1/models
Anthropic-compatiblehttps://api.basemnt.aiPOST /v1/messages, POST /v1/messages/count_tokens
first-request.sh
curl https://api.basemnt.ai/v1/chat/completions \
  -H "Authorization: Bearer $SK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek/deepseek-v4-flash-0731",
    "messages": [{ "role": "user", "content": "Hello, basement." }]
  }'
Auth headers
The router accepts Authorization: Bearer <key> and x-api-key: <key> interchangeably. OpenAI SDKs send the former; Anthropic SDKs (and Claude Code) send the latter.

3. Pick a model

List everything your key can reach:

list-models.sh
curl https://api.basemnt.ai/v1/models \
  -H "Authorization: Bearer $SK_KEY"

See Models for the current catalog. Model IDs are the routing key — pass them verbatim in the model field.

4. Stream it

Add "stream": true to stream Server-Sent Events as tokens arrive:

stream.sh
curl https://api.basemnt.ai/v1/chat/completions \
  -H "Authorization: Bearer $SK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek/deepseek-v4-flash-0731",
    "messages": [{ "role": "user", "content": "Hello" }],
    "stream": true
  }'

Next steps