🔐 Authentifizierung

Um sich bei der API authentifizieren zu können, ist eine OAuth-2 Authentifizierung nötig. Hierzu wird eine ClientID und ein ClientSecret benötigt, das vom epap Team ausgestellt wird.

Die vorherige Form der Authentifizierung (mit Username & Passwort, siehe unten) wird durch die folgenden Schritte ersetzt.

Noch keine Zugangsdaten? Melde dich gerne bei contact@epap.app und wir schicken Dir gerne welche zu.

Ablauf

  1. Aufruf von /v1/login mit clientid, clientsecret, scope, token_type

  2. Aufruf der anderen Methoden, z.B. /v1/add mit dem erhaltenen Access Token

get
Login

https://europe-west1-epap-fg44.cloudfunctions.net/receipts/v1/login
Generiert einen Access Token zur Nutzung der weiteren API Funktionen.
Request
Response
Request
Headers
token_type
required
string
Standardmäßig: Bearer. Vergeben durch epap.
scope
required
string
Standardmäßig: epap.pos. Vergeben durch epap.
clientsecret
required
string
Secret passed zur ID des Clients. Vergeben durch epap.
clientid
required
string
ID des Clients. Vergeben durch epap.
Response
200: OK
Access Token wurde erfolgreich generiert. Der Token hat eine Laufzeit von 3600 Sekunden, bevor ein neuer Token angefordert werden muss.
{
access_token: 'reallyLongAccessTokenString',
expires_in: 3599, //seconds
token_type: 'Bearer'
}
400: Bad Request
Es wurde ein falscher Request gesendet, z.B. GET statt POST.
response: {
Message: 'Die Request-Methode ist nicht zulaessig. Um einen Login durchzuführen, muss ein POST-Request vorliegen.',
Status: 'Bad Request',
StatusCode: 400
}
403: Forbidden
Der Request wurde verboten, da z.B. Werte fehlen oder nicht korrekt sind.
response: {
Message: 'Request wurde verboten, da der Nutzer nicht autorisiert ist oder das Secret falsch war.',
Status: 'Forbidden',
StatusCode: 403
}
500: Internal Server Error
Ein interner Fehler lag vor und der Access Token konnte nicht generiert werden.
response: {
Message: 'Access Token konnte nicht generiert werden.',
Status: 'Internal Server Error',
StatusCode: 500
}

Beispiel cURL

Zum direkten Test in die Konsole einfügen.

curl --request POST 'https://europe-west1-epap-fg44.cloudfunctions.net/receipts/v1/login' --header 'clientid: clientIDGivenByEpapTeam' --header 'clientsecret: clientSecretGivenByEpapTeam' --header 'scope: epap.pos' --header 'token_type: Bearer'

Hinweis

Vorherige Form der Authentifizierung noch bis zum 01.05.2020

Diese Authentifizierungsmethode war in der vorherigen Version der API nur für Testzwecke implementiert.

Um eine saubere Migration zu ermöglichen, wird diese Art der Authentifizierung noch bis zum 01.05.2020 aktiv bleiben. Danach ist die Nutzung der API nur noch durch die oben beschriebene Implementierung möglich.

Die Dokumentation der vorherigen Version findest Du oben links (v0, hinter v1 - Aktuell).