> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
> Use this file to discover all available pages before exploring further.

# REST-Authentifizierung

> Ein Authorization-Token für die REST-Schnittstellen der OSB-Dienste anfordern und verwenden, mit Request-Aufbau, Statuscodes und einem curl-Beispiel.

Jeder Zugriff auf eine REST-Schnittstelle eines OSB-Dienstes beginnt mit einem Token. Sie fordern es mit Ihren Zugangsdaten für den Online-Servicebereich an und schicken es bei jedem weiteren Aufruf im Header mit.

## Voraussetzung

Sie brauchen ein Benutzerkonto im Online-Servicebereich, und dieses Konto muss Zugriff auf genau den Dienst haben, den Sie über die API ansprechen wollen. Die Zugangsdaten dieses Kontos verwenden Sie auch für die API.

Wenn Sie für die API lieber separate Zugangsdaten hätten oder die Authentifizierung scheitert, wendet sich Ihr Ansprechpartner an das WEBSALE-Backoffice.

## Token anfordern

```
POST https://www.websale.de/api/authent/login/SHOPID
```

Content-Type: `application/json`

| Eigenschaft | Typ | Beschreibung |
| - | - | - |
| `username` | string | Benutzerkennung, dieselbe wie im Online-Servicebereich |
| `password` | string | Passwort, dasselbe wie im Online-Servicebereich |

```json theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{
    "username": "websaleuser",
    "password": "meinpasswort"
}
```

Bei Erfolg antwortet der Server mit dem Token:

```json theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{
    "token": "TOKEN"
}
```

### Beispiel mit curl

Der Benutzer `websaleuser` wird für die ShopID `meinshop` authentifiziert:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
curl \
 -X POST \
 -H "Content-Type: application/json" \
 -d '{
    "username": "websaleuser",
    "password": "meinpasswort"
}' \
"https://www.websale.de/api/authent/login/meinshop"
```

## Token verwenden

Das Token gehört in den Header jedes Folgeaufrufs:

```
X-Authorization: Bearer TOKEN
```

Es ist 30 Minuten gültig. Danach antwortet jede Anfrage mit dem Statuscode 401 und Sie fordern ein neues Token an.

## Statuscodes

| Status-Code | Bedeutung | Beschreibung |
| - | - | - |
| 400 | Bad Request | Übergabe nicht korrekt, also Formatierungsfehler oder fehlende Felder, oder unbekannte Aktion |
| 401 | Unauthorized | Der Benutzer hat keine Berechtigung für die angegebene ShopID |
| 403 | Forbidden | Unbekannte oder falsche Login-Daten |
| 423 | Locked | Der Benutzer wurde wegen mehrfach fehlerhafter Logins zeitweise gesperrt |

Der Unterschied zwischen 401 und 403 ist bei der Fehlersuche hilfreich: 403 heißt, die Zugangsdaten stimmen nicht, 401 heißt, sie stimmen, aber das Konto darf nicht auf diesen Shop zugreifen.

## Verwandte Themen

* Wegweiser: [REST-Schnittstelle für OSB-Dienste](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste.md)
* Wegweiser: [REST-Schnittstellen Request](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-schnittstellen-request.md)


## Related topics

- [REST-Schnittstellen Request](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-schnittstellen-request.md)
- [REST Kategorien](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-kategorien.md)
- [REST Textpflege](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-textpflege.md)
- [REST Bildkonverter](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-bildkonverter.md)
- [REST WEBSALE-App](https://dokumentation.websale.de/v8s/schnittstellen/rest-osb-dienste/rest-websale-app.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.