API Authorization

Documentation (English)

For the German version, please scroll down to “Dokumentation (Deutsch)”

How does API Authorization work?

In Enterprise API, authorization involves comparing the content of the authorization token with the data in the request, such as the customer number and service access permissions.

Steps in the Authorization Process:

Request Submission: The client sends a request that includes a customer number and an authorization token as a authorization header.

Token Validation: The API checks the token’s content, which includes the authorized customer number(s) and the services the token allows access to.

Comparison with Request Data:

The customer number in the request is compared with the authorized customer number(s) in the token.

The API also checks if the token allows access to the requested service (e.g., “ola” service).

Decision:

If the customer number in the request matches the authorized customer number in the token and the token allows access to the requested service, the request is processed.

If either the customer number or the service permission in the token does not match the request, the API will reject the request and return a 403 Forbidden error.

403 Error Example:

{
    "code": 403,
    "errors": [
        {
            "message": "Your API user does not have access to get data for customerId provided",
            "field": "customerId"
        }
    ]
}

A 403 Forbidden error occurs if:

Dokumentation (Deutsch)

Hier finden Sie die deutsche Dokumentation.

API-Autorisierung

Wie funktioniert die Enterprise API-Autorisierung?

Die Autorisierung In der Enterprise API beinhaltet den Vergleich des Inhalts des Autorisierungstokens mit den Daten in der Anfrage, wie z. B. der Kundennummer und den Zugriffsberechtigungen für den Service

Schritte im Autorisierungsprozess:

Anfrage (API request) schicken: Der Client sendet eine Anfrage, die eine Kundennummer und ein Autorisierungstoken (als Autorisierungsheader) enthält.

Token-Validierung: Die API überprüft den Inhalt des Tokens, der die autorisierten Kundennummern und die Services enthält, auf die das Token Zugriff gewährt.

Vergleich mit Anfragedaten:

Die Kundennummer in der Anfrage wird mit den autorisierten Kundennummer(n) im Token verglichen.

Die API überprüft auch, ob das Token Zugriff auf den angeforderten Dienst (z. B. „olaservice“) gewährt.

Entscheidung:

Wenn die Kundennummer in der Anfrage mit der autorisierten Kundennummer im Token übereinstimmt und das Token Zugriff auf den angeforderten Service gewährt, wird die Anfrage verarbeitet.

Wenn entweder die Kundennummer oder die Serviceberechtigung im Token nicht mit der Anfrage übereinstimmt, lehnt die API die Anfrage ab und gibt einen 403 Forbidden-Fehler zurück.

Beispiel für einen 403-Fehler:

{
    "code": 403,
    "errors": [
        {
            "message": "Your API user does not have access to get data for customerId provided",
            "field": "customerId"
        }
    ]
}

Ein 403 Forbidden-Fehler tritt auf, wenn: