uncensored opencode

Endpoints

Every path the API answers on.

OpenAI format base URL
https://uncensoredopencode.com/v1
Anthropic format base URL
https://uncensoredopencode.com
Auth
Authorization: Bearer sk-nc-... or x-api-key
Method and pathWhat it does
POST /v1/chat/completionsChat in the OpenAI format, with streaming and tools
POST /v1/messagesChat in the Anthropic format, with streaming and tools
POST /v1/messages/count_tokensAn estimate of input tokens; spends nothing
POST /v1/responsesThe OpenAI Responses format, with function tools
GET /v1/modelsThe model list, with prices and capabilities
GET /v1/usage?days=30Your usage for the last 1 to 90 days; needs an account key, not a capped one
GET /healthA liveness check
GET /openapi.jsonThe machine-readable description of the API

Which base URL to use

A tool that speaks the OpenAI format wants the base URL that ends in /v1 and adds /chat/completions itself. A tool that speaks the Anthropic format wants the bare origin and adds /v1/messages itself. Giving either tool the other's URL is the commonest setup mistake, and it shows up as a 404.

Sending the key

either header works
Authorization: Bearer sk-nc-...
x-api-key: sk-nc-...

If a request carries both, the Bearer value is used. The model list at GET /v1/models can be read without a key.

What is not here

There is no embeddings endpoint, no image generation and no fine-tuning. The API serves chat, in three formats, on the models listed.