Skip to content

OAuth2 Flow

Schritt 1 — User autorisieren

Leite den User auf die Authorize-URL weiter:

https://nexcord.de/authorize
  ?clientId=1234567890
  &scopes=USER_INFO+USER_EMAIL
  &redirectUri=https://deine-app.de/redirect

Der User sieht die App-Info und klickt „Autorisieren".

Schritt 2 — Code empfangen

Nexcord redirectet zurück zu deiner redirectUri mit einem code-Parameter:

https://deine-app.de/redirect?code=abc123xyz

Schritt 3 — Code gegen Token tauschen

http
POST https://nexcord.de/api/oauth2/token
  ?clientId=DEINE_CLIENT_ID
  &clientSecret=DEIN_CLIENT_SECRET
  &grantType=authorization_code
  &code=abc123xyz
  &redirectUri=https://deine-app.de/redirect

Response:

json
{
  "accessToken": "eyJ...",
  "expiresIn": 86400,
  "refreshToken": "rXy..."
}

Schritt 4 — API nutzen

http
GET https://nexcord.de/api/users/@me
Authorization: ACCESS_TOKEN

Schritt 5 — Token erneuern

Wenn der Access Token abläuft:

http
POST https://nexcord.de/api/oauth2/token
  ?clientId=DEINE_CLIENT_ID
  &clientSecret=DEIN_CLIENT_SECRET
  &grantType=refresh_token
  &refreshToken=DEIN_REFRESH_TOKEN

Flow-Diagramm

User                  Deine App              Nexcord
 |                        |                      |
 |-- Klick Login -------> |                      |
 |                        |-- Redirect zu /auth->|
 |<---------------------- | <-- Authorize Page --|
 |-- Bestätigt ---------->|                      |
 |                        |<-- ?code=abc123 -----|
 |                        |-- POST /oauth2/token>|
 |                        |<-- { accessToken } --|
 |<-- Eingeloggt ---------|                      |

Nexcord — Self-hosted Chat Platform