Uwierzytelnianie
Każde zapytanie do API Jantarisa, poza publicznym katalogiem modeli (GET /v1/models), wymaga klucza API. Jeden klucz działa ze wszystkimi modelami i endpointami, a koszty schodzą z salda konta.
Tworzenie klucza
- Zaloguj się i otwórz panel.
- W sekcji kluczy API utwórz nowy klucz i nadaj mu nazwę (np.
prod-backendalbon8n). - Opcjonalnie ustaw miesięczny limit wydatków dla tego klucza.
- Skopiuj klucz. Panel pokazuje go tylko raz i nie da się go wyświetlić ponownie.
Klucz ma format sk-jt- i 32 znaki:
sk-jt-4f9c2a7e1b8d3f6a0c5e9b2d7a1f4c8eJeśli zgubisz klucz, utwórz nowy, a stary usuń w panelu.
Przekazywanie klucza
API przyjmuje dwa nagłówki. Użyj tego, który twój klient wysyła domyślnie.
| Nagłówek | Format | Typowy klient |
|---|---|---|
Authorization | Bearer sk-jt-... | curl, SDK OpenAI, większość narzędzi HTTP |
x-api-key | sk-jt-... | SDK Anthropic, Claude Code |
# Bearer
curl https://jantaris.com/v1/balance -H "Authorization: Bearer $JANTARIS_API_KEY"
# x-api-key
curl https://jantaris.com/v1/balance -H "x-api-key: $JANTARIS_API_KEY"import os, requests
headers = {"Authorization": f"Bearer {os.environ['JANTARIS_API_KEY']}"}
print(requests.get("https://jantaris.com/v1/balance", headers=headers).json())const res = await fetch("https://jantaris.com/v1/balance", {
headers: { "x-api-key": process.env.JANTARIS_API_KEY },
});
console.log(await res.json());W oficjalnych SDK podajesz tylko klucz i base URL:
from openai import OpenAI
from anthropic import Anthropic
openai_client = OpenAI(base_url="https://jantaris.com/v1", api_key="sk-jt-...")
anthropic_client = Anthropic(base_url="https://jantaris.com", api_key="sk-jt-...")Ten sam klucz działa pod https://jantaris.com/v1 (SDK OpenAI) i https://jantaris.com (SDK Anthropic). To jedno API i jedno saldo.
Limity wydatków
Każdy klucz może mieć własny miesięczny limit wydatków, ustawiany w panelu przy tworzeniu klucza. Przydaje się dla środowiska testowego, integracji u klienta albo automatyzacji, która może się zapętlić.
Gdy zapytanie przekroczyłoby limit klucza, API zwraca 403:
{ "error": { "type": "permission_error", "message": "This key reached its monthly spend limit. Create a new key with a higher limit in the dashboard or use another key." } }Saldo konta zostaje nietknięte. Utwórz w panelu nowy klucz z wyższym limitem albo użyj innego klucza. Limit dotyczy tylko klucza, na którym go ustawisz. Górną granicą dla całego konta jest saldo, patrz Rozliczenia.
Błędy uwierzytelniania
| Status | error.type | Przyczyna |
|---|---|---|
| 401 | authentication_error | Brak klucza, zły format albo klucz usunięty |
| 403 | permission_error | Klucz osiągnął limit wydatków |
| 402 | insufficient_balance | Klucz jest dobry, ale saldo za niskie |
Pełna lista: Błędy.
Bezpieczeństwo kluczy
- Klucze trzymaj na serwerze. Nigdy w kodzie przeglądarki, aplikacji mobilnej ani w publicznym repozytorium.
- Jedna aplikacja albo jedno środowisko to jeden klucz. Wtedy usuwasz pojedynczy klucz bez psucia reszty.
- Czytaj klucz ze zmiennej środowiskowej albo menedżera sekretów, nie z plików źródłowych.
- Jeśli klucz wycieknie, od razu usuń go w panelu. Zapytania z usuniętym kluczem kończą się
401.









