Documentation

Your first request, in five minutes.

Use your existing OpenAI or Anthropic SDK. Both entry points share one key; choose the one your code already speaks.

Base URL

Both protocols share one host. The OpenAI-compatible Base URL includes /v1. The Anthropic-compatible Base URL does not; its endpoint already carries /v1.

ProtocolBase URLEndpoint
OpenAIhttps://models.seedone.ai/v1/chat/completions · /responses · /models
Anthropichttps://models.seedone.ai/v1/messages

One key works at both entry points. The platform does not translate between protocols: call the model through the protocol of its route, or the request is rejected with protocol_mismatch. Anthropic compatibility is an API surface, not a model source. It lets Anthropic-compatible clients call models in this catalog; the catalog itself does not include Anthropic models.

Authentication

Both headers are accepted. Do not place the key in source control or browser-side code.

http headers
Authorization: Bearer $SEEDONE_API_KEY
x-api-key: $SEEDONE_API_KEY

List models

Returns the models available to this key. The scope is derived from the routes bound to the key; fetch it again after changing the key.

curl
curl https://models.seedone.ai/v1/models \
  -H "Authorization: Bearer $SEEDONE_API_KEY"

Chat completion

OpenAI-compatible, non-streaming. Replace the model placeholder with an id returned by /v1/models.

curl · openai
curl https://models.seedone.ai/v1/chat/completions \
  -H "Authorization: Bearer $SEEDONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<model>",
    "messages": [{"role": "user", "content": "Hello"}]
  }'
python · openai sdk
from openai import OpenAI
import os

client = OpenAI(
    base_url="https://models.seedone.ai/v1",
    api_key=os.environ["SEEDONE_API_KEY"],
)

response = client.chat.completions.create(
    model="<model>",
    messages=[{"role": "user", "content": "Hello"}],
)

print(response.choices[0].message.content)

Anthropic-compatible example

Same key, different entry point. max_tokens is required under the Anthropic protocol.

curl · anthropic
curl https://models.seedone.ai/v1/messages \
  -H "x-api-key: ***" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<model>",
    "max_tokens": 256,
    "messages": [{"role": "user", "content": "Hello"}]
  }'

Common errors

Every response includes an x-request-id. Include it in any support request.

codeCauseResolution
invalid_api_keyThe key is missing, malformed or deleted.Check the header and the key value.
model_not_allowedThe model is outside this key’s scope.Use a model in the key’s bound routes, or change the key.
insufficient_balanceThe wallet balance is exhausted.Top up or redeem a voucher.
window_exceededA 5h / 7d / 30d plan limit was reached.Add a top-up pack, upgrade or renew.
concurrency_exceededToo many requests in flight.Reduce concurrency or buy a concurrency pack.
rate_limitedThe IP-level fallback rate limit was hit.Honor Retry-After; check for a retry storm.
protocol_mismatchThe entry protocol does not match the model.Use /v1/chat/completions or /v1/messages as appropriate.

Limits

ParameterCurrent value
Request body32 MB
First byte timeout30 s
Total request time15 min
Default output limit16,384 tokens
Upstream retries≤ 2
IP fallback rate limit120 requests / min / IP
Default pay-as-you-go concurrency3 (1 for new or previously overdue accounts)

The full reference, including every error code and the self-check tool, lives in the console. Open console docs →

View the model catalog