Autentizace
Scopes
Každý endpoint vyžaduje scope a token nese jen to, co bylo uděleno. Uživatelé vidí přesně ty scopes, o které aplikace žádá; žádej jen minimum, které potřebuješ.
Dostupné scopes
| Scope | Zpřístupňuje |
|---|---|
profile:read | Zobrazované jméno, uživatelské jméno, jednotky, pohlaví, výška, cíl |
workouts:read | Historie tréninků, detail tréninku (cviky a série), tréninkové šablony |
records:read | Osobní rekordy (1RM, váha, objem, opakování, čas, vzdálenost) |
measurements:read | Tělesná váha a obvodové míry |
stats:read | Streaky, celkové XP a trofeje |
splits:read | Vlastní tréninkové splity |
exercises:read | Globální katalogy cviků a vybavení |
API je zatím jen pro čtení, žádné zápisové scopes neexistují. Přístup pro zápis přibude jako explicitní nové scopes, nikdy se potichu nepřibalí do těch stávajících.
Vynucování
Scopes se vynucují na serveru při každém requestu. Volání endpointu, na který tvůj token scope nedostal, vrací 403 s tělem typu problem details:
GET /api/v1/measurements
Authorization: Bearer gat_… (granted: workouts:read stats:read)
HTTP/1.1 403 Forbidden
{
"status": 403,
"title": "Missing scope",
"detail": "This authorization is missing the 'measurements:read' scope."
}Výchozí hodnoty
| Typ tokenu | Výchozí scopes |
|---|---|
| Osobní token | Všechny scopes, pokud je při vytvoření nezúžíš (jsou to tvoje vlastní data). |
| OAuth aplikace | Jen scopes registrované pro tvoji aplikaci a odsouhlasené uživatelem. |
| MCP připojení | Pevná sada scopes udělená při připojení účtu; vynucuje se u každého volání toolu. |