SP1KY IDENTITY / v1
SP1KY Login
OAuth 2.0 für SP1KY-Konten. Deine App erhält Name und E-Mail, ohne das Passwort des Nutzers zu sehen.
https://spiky.top01 / START
Quickstart
- App registrierenLege Name und exakte Redirect-URL in der Developer Console an.
- Nutzer weiterleitenSende den Browser mit
statezum Authorize-Endpunkt. - Code tauschenTausche den einmaligen Code ausschließlich in deinem Backend.
- Profil lesenRufe Userinfo mit dem Access Token ab.
03 / ENDPOINT
Token
Der Authorization Code ist kurzlebig und einmalig. Tausche ihn serverseitig gegen ein Access Token.
/api/oauth/tokenconst response = await fetch('https://spiky.top/api/oauth/token', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({
grant_type: 'authorization_code',
code,
client_id: process.env.SP1KY_CLIENT_ID,
client_secret: process.env.SP1KY_CLIENT_SECRET,
redirect_uri: 'https://deine-app.de/auth/spiky'
})
});
const token = await response.json();04 / ENDPOINT
Userinfo
Liest die freigegebenen Profildaten des angemeldeten Kontos.
/api/oauth/userinfoconst user = await fetch('https://spiky.top/api/oauth/userinfo', {
headers: { authorization: `Bearer ${token.access_token}` }
}).then(response => response.json());
// { sub, name, email }05 / REFERENCE
Scopes
profileStabile Konto-ID und AnzeigenameemailVerifizierte E-Mail-Adresse06 / WEBAUTHN
Passkeys
SP1KY unterstützt Passkeys für phishing-resistente Anmeldung mit Touch ID, Face ID oder Sicherheitsschlüssel. Registrierung erfolgt nach Login über deine Kontoeinstellungen; deine App erhält niemals biometrische Daten.
/api/auth/passkey07 / ACCOUNT
Register API
Neue Konten werden mit Cloudflare Turnstile gegen automatisierte Registrierungen geschützt. Sende den Token aus dem Widget zusammen mit Name, E-Mail und Passwort an den Endpunkt.
/api/auth/register06 / SECURITY
Sicherheit
statevor und nach dem Redirect vergleichen.- Client Secret nur im Backend speichern.
- In Produktion ausschließlich HTTPS verwenden.
- Redirect-URLs exakt prüfen und niemals aus Nutzereingaben übernehmen.
07 / ERRORS
Fehler
invalid_clientClient-ID oder Secret stimmt nicht.invalid_grantCode ist abgelaufen oder bereits verwendet.invalid_redirect_uriRedirect-URL weicht von der Registrierung ab.