Skip to main content
OpenOpen8 provides a single HTTP gateway that accepts requests in OpenAI, Anthropic Claude, and Google Gemini formats and routes them to the appropriate upstream provider. You authenticate with a token you create in the dashboard, and OpenOpen8 handles format translation automatically — so you can point an existing OpenAI client at OpenOpen8 without any code changes.

Base URL

https://openopen8.ai
All endpoints below are relative to this base URL. Use your API token in the Authorization header for all requests.

Endpoints

Chat & Completions

OpenAI-compatible chat and text completions via POST /v1/chat/completions and POST /v1/completions.

OpenAI Responses

OpenAI Responses format via POST /v1/responses.

Claude Messages

Anthropic Claude Messages format via POST /v1/messages.

Gemini Chat

Google Gemini generateContent format via POST /v1beta/models/{model}:generateContent.

Images

Image generation and editing via POST /v1/images/generations and POST /v1/images/edits.

Audio

Speech-to-text, translation, and text-to-speech via the /v1/audio/* endpoints.

Video

Video generation tasks via Sora-compatible, Kling, Jimeng, Doubao, and Vidu providers.

Embeddings

Text embeddings via POST /v1/embeddings.

Rerank

Document reranking (Cohere/Jina format) via POST /v1/rerank.

Realtime

WebSocket-based realtime conversations via GET /v1/realtime.

Models

List available models via GET /v1/models.

Common request headers

HeaderRequiredDescription
AuthorizationYes (for most endpoints)Bearer token: Authorization: Bearer YOUR_TOKEN
Content-TypeYesSet to application/json for all JSON request bodies
x-api-keyYes (Claude endpoints)Your OpenOpen8 token when calling /v1/messages
anthropic-versionYes (Claude endpoints)Must be 2023-06-01 when using the Claude Messages format
x-goog-api-keyYes (Gemini endpoints)Your OpenOpen8 token when calling /v1beta/models/*
See Authentication for a full explanation of which header to use with each endpoint.

HTTP status codes

CodeMeaning
200Request succeeded. The response body contains the model output.
400Bad request. The request body is malformed or missing required fields.
401Unauthorized. The token is missing or invalid.
403Forbidden. The token does not have permission to use the requested model.
429Too many requests. You have exceeded the rate limit for this token or model.
500Internal server error. An unexpected error occurred on the OpenOpen8 server.
503Service unavailable. No upstream channel is available for the requested model.