Zacznij w 2 minuty.
API Geraikita AI obsługuje dwa formaty naraz: OpenAI Chat Completions oraz Anthropic Messages. Używaj SDK OpenAI, SDK Anthropic, Claude Code CLI, Cline i innych narzędzi — wystarczy zmienić base URL i klucz API.
https://ai.geraikita.com/v1https://ai.geraikita.comBearer gk-... (lub x-api-key: gk-...)https://ai.geraikita.com/v1Klienci OpenAI doklejają /chat/completions do base URL — baza kończy się więc na /v1.https://ai.geraikita.comKlienci Anthropic (Claude Code CLI, SDK Anthropic) sami doklejają /v1/messages — baza idzie więc bez /v1.Pomylisz się — ścieżka stanie się /v1/v1/messages → błąd 400.
Klucz bansos trzeba najpierw odebrać na stronie Bansos (logowanie + zweryfikowany WhatsApp + dołączenie do kanału i grupy Telegram, za darmo, jeden klucz na konto). Płatny klucz gk- z Dashboard nie działa na endpointcie bansos i odwrotnie — pomyłka daje 401 unauthorized.
Base URL bansos też jest inny niż płatny powyżej:
https://ai.geraikita.com/v1/claudehttps://ai.geraikita.com/v1/claude/chat/completionsANTHROPIC_BASE_URL=https://ai.geraikita.com/v1/claudeSDK samo dokleja /v1/messages → https://ai.geraikita.com/v1/claude/v1/messages.GET https://ai.geraikita.com/v1/claude/modelsDarmowe modele: deepseek-v4-flash, glm-5.3-flash, qwen3.8-flash, qwen3.8-max. Inne modele zwracają 404; aktualna lista jest pod GET /models.
Cała reszta jest dokładnie taka sama jak w płatnym endpoincie.
Uwierzytelnianie
Każde zapytanie niesie Twój klucz API gk- w nagłówku Authorization: Bearer gk-.... Klucze tworzy się w panelu i pokazywane są tylko raz przy utworzeniu — przechowuj je bezpiecznie. Każdy klucz możesz ograniczyć do konkretnych modeli (lista dozwolonych).
Pierwsze zapytanie
from openai import OpenAI
client = OpenAI(
base_url="https://ai.geraikita.com/v1",
api_key="gk-xxxxxxxx",
)
resp = client.chat.completions.create(
model="claude-sonnet-5",
messages=[{"role": "user", "content": "Halo!"}],
)
print(resp.choices[0].message.content)Claude Code CLI
Claude Code używa formatu Anthropic. Ustaw base URL na root (https://ai.geraikita.com — bez /v1), a potem uruchom claude. Używaj modeli claude-sonnet-5 / claude-opus-5 / claude-haiku-4-5.
# Base URL = ROOT bez /v1 (Claude Code sam dokleja /v1/messages)
export ANTHROPIC_BASE_URL="https://ai.geraikita.com"
export ANTHROPIC_AUTH_TOKEN="gk-xxxxxxxx"
export ANTHROPIC_DEFAULT_SONNET_MODEL="claude-sonnet-5"
export ANTHROPIC_DEFAULT_OPUS_MODEL="claude-opus-5"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="claude-haiku-4-5"
claudeCline i inne narzędzia
Cline / Roo (OpenAI Compatible): dostawca OpenAI Compatible, Base URL https://ai.geraikita.com/v1, klucz API gk-..., Model ID claude-sonnet-5.
Cline (Anthropic): dostawca Anthropic, Base URL https://ai.geraikita.com, klucz API gk-....
Twoje narzędzie samo wykrywa modele? Endpoint GET https://ai.geraikita.com/v1/models jest dostępny. Jeśli jest pole „Gateway base URL”, które automatycznie dokleja /v1/models, wpisz w nie https://ai.geraikita.com (root), aby nie powstało /v1/v1/models.
OpenCode
OpenCode czyta listę providerów z pliku konfiguracyjnego. Dodaj Geraikitę jako providera zgodnego z OpenAI w ~/.config/opencode/opencode.json albo w projektowym opencode.json.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"geraikita": {
"npm": "@ai-sdk/openai-compatible",
"name": "Geraikita AI",
"options": {
"baseURL": "https://ai.geraikita.com/v1",
"apiKey": "{env:GERAIKITA_API_KEY}"
},
"models": {
"claude-sonnet-5": { "name": "Claude Sonnet 5" },
"gpt-5.6-sol": { "name": "GPT 5.6 Sol" },
"deepseek-v4-pro": { "name": "DeepSeek V4 Pro" }
}
}
}
}Następnie wyeksportuj klucz i uruchom OpenCode. Model wybierzesz przez /models — pojawia się jako geraikita/claude-sonnet-5.
export GERAIKITA_API_KEY=gk-xxxxxxxx
opencodeWażne: klucze pod models lecą do API bez zmian, więc muszą dokładnie odpowiadać publicznym id modeli Geraikity.
Pamiętaj: wpisz nazwę modelu dokładnie tak, jak na stronie cen — bez prefiksu.
9router
9router to lokalny proxy, który rozdziela zapytania na wielu providerów i nasłuchuje na http://localhost:20128. Nie kierujesz narzędzi wprost do Geraikity — rejestrujesz Geraikitę jako jednego z providerów upstream 9routera.
- Otwórz dashboard 9routera pod http://localhost:20128/dashboard.
- Wejdź w Providers i dodaj endpoint custom OpenAI-compatible: Base URL https://ai.geraikita.com/v1, klucz API gk-xxxxxxxx.
- Twoje narzędzia dalej wskazują na 9router (http://localhost:20128/v1) — wystarczy wybrać model Geraikity, a 9router przekaże te zapytania do Geraikity.
http://localhost:20128/dashboardhttps://ai.geraikita.com/v1gk-xxxxxxxxhttp://localhost:20128/v1# twoje narzędzie dalej wskazuje na 9router, nie na Geraikitę
export OPENAI_BASE_URL="http://localhost:20128/v1"W ten sposób zachowujesz routing i fallback między providerami z 9routera, a tokeny opłacasz z GeraiPoints w Geraikicie.
Pamiętaj: wpisz nazwę modelu dokładnie tak, jak na stronie cen — bez prefiksu.
Hermes
Hermes (Hermes Agent od NousResearch) działa z każdym endpointem zgodnym z OpenAI. Skieruj go na Geraikitę w ~/.hermes/config.yaml.
model:
default: claude-sonnet-5
provider: custom
base_url: https://ai.geraikita.com/v1
api_key: gk-xxxxxxxx # albo umieść go w ~/.hermes/.envAlbo uruchom hermes model, wybierz Custom OpenAI-compatible endpoint i podaj base URL oraz klucz — Hermes sam wykryje dostępne modele przez GET https://ai.geraikita.com/v1/models.
Pamiętaj: wpisz nazwę modelu dokładnie tak, jak na stronie cen — bez prefiksu.
GeraiPoints
Lista modeli
Wartości model, które możesz wysyłać. Stawki poszczególnych modeli znajdziesz na stronie cennika.
Utwórz klucz API
Kody błędów
| Status | Znaczenie |
|---|---|
| 400 | Zły base URL / body — upewnij się, że /v1 nie występuje podwójnie (np. /v1/v1/messages) |
| 401 | Nieprawidłowy klucz API / zły tor — klucz płatny ≠ klucz bansos. Sprawdź base URL: płatny używa /v1, bansos używa /v1/claude |
| 402 | Za mało GeraiPoints — doładuj proszę |
| 403 | Model niedozwolony dla tego klucza |
| 404 | Nieznany model — wyślij DOKŁADNĄ NAZWĘ MODELU (np. claude-sonnet-5), bez prefiksu. Nazwy typu gp/claude-sonnet-5 albo openai/... dadzą 404 |
| 429 | Za dużo zapytań |