Entwickler
/api/v1/oauth/revokeWiderruf nach RFC 7009. Body application/x-www-form-urlencoded mit token (Access- oder Refresh-Token) und optional token_type_hint. Client-Authentifizierung wie beim Token-Endpunkt. Ein Refresh-Token widerruft auch alle daraus hervorgegangenen Tokens. Antwort immer 200, auch bei unbekannten Tokens.
Ohne Anmeldung.
Antwort 200
Leeres Objekt
{}/api/v1/oauth/tokenToken-Endpunkt nach RFC 6749. Body application/x-www-form-urlencoded.
Autorisierungscode einlösen: grant_type=authorization_code, code, redirect_uri (falls bei der Autorisierung übergeben), code_verifier (PKCE, für alle Apps Pflicht).
Erneuern: grant_type=refresh_token, refresh_token, optional scope (Teilmenge).
Client-Authentifizierung: HTTP Basic (client_id:client_secret) oder client_id/client_secret im Body; öffentliche Apps nur client_id. Fehler im OAuth-Format { "error": "invalid_grant", "error_description": "…" }. Jeder Refresh liefert ein neues Refresh-Token; das alte wird ungültig. Parallele Erneuerungen mit demselben Refresh-Token innerhalb von 30 s erhalten dasselbe Token-Paar, solange das neue Refresh-Token unbenutzt ist; spätere Wiederverwendung widerruft die ganze Token-Kette.
Ohne Anmeldung.
Antwort 200 · OAuthTokenResponse
access_tokenstringPflichtdfo_… (1 Stunde gültig)token_type"Bearer"Pflichtexpires_inintegerPflicht-9007199254740991–9007199254740991refresh_tokenstringPflichtdfr_… (rotiert bei jeder Verwendung)scopestringPflichtErteilte Scopes, durch Leerzeichen getrennt
{
"access_token": "string",
"token_type": "Bearer",
"expires_in": 0,
"refresh_token": "string",
"scope": "string"
}/api/v1/openapi.json