Before connecting
- 01
Create an API key in the dashboard.
- 02
Get the model ID via GET /v1/models.
- 03
Keep the key in environment variables only.
Pick a scenario
Claude Code
Claude Opus and Sonnet via your own API key: base URL, settings, billing.
Codex
NormaHub provider in Codex TOML config with the models catalog.
OpenCode
GPT and Claude in OpenCode through an OpenAI-compatible provider.
Cursor
Your API key in Cursor: Override Base URL, models, Verify button.
n8n
HTTP Request to NormaHub: auth, expressions, budget guards.
Telegram bot
Backend holds the key: history window, limits, error handling.
OpenAI SDK
Routes, base URL setup and reusing the familiar client.
Python
SDK install, environment variable and the first backend request.
Node.js and TypeScript
Server integration, streaming, errors and key security.
Streaming responses
SSE via Responses API, completion and reconnect handling.
API errors
Gateway error codes, diagnostics and safe retry policy.
Token cost
Input and output math, limits and total cost control.
Which route to use
Responses API
New integrations and streaming responses via base URL with /v1.
Chat Completions
OpenAI-compatible clients and messages arrays via base URL with /v1.
Messages API
Anthropic SDK and Claude models via base URL without /v1.
Check the endpoints of your model first. Full contract and error formats are in the API documentation. Start from the English landing page. Deeper reads: articles in English. Russian versions: гайды на русском.