Fishnet Services Startseite

Fishnet Services Support Center

Fishnet Services: Dein E-Commerce Support

API Schnittstelle Shopware 6 - Kurzanleitung

KG
Karsten Geyer
Written 7 months ago

wie man anfängt:

In der Regel benötigen Sie nur ein Administratorkonto:

Schritt 1:
Autorisierungs-Token anfordern.

Sie können dies tun, indem Sie eine Oauth-Anfrage an /api/oauth/token

{   "client_id": "administration",   "grant_type": "password",   "scopes": "write",   "username": "admin_username",   "password": "admin_password" }

 

 

Wenn Ihre Shop-URL zum Beispiel http://example.com lautet, senden Sie eine POST-Anfrage an http://example.com/api/oauth/token mit den oben genannten Daten.

Wenn alles in Ordnung ist, werden Sie eine Antwort erhalten:

    "token_type": "Bearer",     "expires_in": 600,     "access_token": "<ACCESS_TOKEN>",     "refresh_token": "<REFRESH_TOKEN>" }

 

Schritt 2:

Speichern Sie das access_token, das Sie als Antwort auf die vorherige Anfrage erhalten haben, und fügen Sie es in die Header jeder Anfrage ein, wenn Sie mit der API kommunizieren.

Wenn Sie z. B. Javascript verwenden, würde die Anfrage etwa so aussehen:

const url = 'http://example.com/api/search/order'; const options = {   method: 'POST',   headers: {     'Content-Type': 'application/json',     Accept: 'application/json',     Authorization: 'Bearer <ACCESS_TOKEN>'   },   body: undefined };  try {   const response = await fetch(url, options);   const data = await response.json();   console.log(data); } catch (error) {   console.error(error); }

Weitere Code-Beispiele finden Sie unter:

 

 

Step 3:

Wie Sie sehen können, gibt es ein Feld "expires_in": 600

Das bedeutet, dass das Zugriffstoken 600 Sekunden lang gültig ist. Danach müssen Sie es aktualisieren.

Dazu senden wir eine Anfrage an http://example.com/api/oauth/token mit folgenden Daten:

  "grant_type": "refresh_token",   "client_id": "administration",   "refresh_token": "<REFRESH_TOKEN>" }

 

Wir erhalten ein neues "access_token" und können die API-Endpunkte weiter nutzen.

 

 

Hat dieser Artikel deine Frage beantwortet?
😞 😐 😃