
Die Kontainer API ermöglicht eine einfache Integration Ihrer bestehenden Software in die Kontainer-Plattform. Diese Software-zu-Software-Schnittstelle erlaubt es Ihren Anwendungen, Daten mit Kontainer auszutauschen, und kann zur Automatisierung vieler unterschiedlicher Prozesse genutzt werden.
Im Folgenden gehen wir die Grundlagen der API-Einrichtung durch.
Die Informationen in diesem Artikel sind technischer Natur und richten sich an Entwickler, die für die API-Einrichtung verantwortlich sind. Wenn Sie Fragen haben, melden Sie sich gerne bei uns.
API-Code
Direkt zum Code für die API-Integration gelangen Sie HIER.
HINWEIS: Verwenden Sie bitte Ihre individuelle Kontainer-URL anstelle der in den oben verlinkten Beispielen verwendeten URL („api.kontainer.com“).
Erste Schritte
Um die Kontainer API nutzen zu können, benötigen Sie ein Kontainer-Konto sowie ein API-Zugriffstoken.
Bitte wenden Sie sich an Ihren lokalen Administrator oder an den Kontainer Support, um weitere Informationen zum Zugriff auf die Kontainer API zu erhalten.
Authentifizierung
Die Kontainer API verwendet OAuth zur Authentifizierung. Sobald Ihnen ein API-Zugriffstoken zur Verfügung gestellt wurde, müssen Sie dieses Token bei jeder Anfrage im Authorization-Header als „Bearer“-Wert mitsenden.
Alle Anfragen müssen Ihr API-Zugriffstoken im Authorization-Header enthalten: Authorization: Bearer {{access-token}}
Content Negotiation
Alle Anfragen müssen den folgenden Header enthalten: Accept: application/vnd.api+json . Anfragen, die JSON-Daten senden, müssen zusätzlich den Header enthalten: Content-Type: application/vnd.api+json
JSON:API-Standard
Die Kontainer API ist eine RESTful API und folgt dem JSON API-Standard. Weitere Informationen zur Struktur von Request- und Response-Dokumenten finden Sie in dieser Spezifikation.
Rate Limits
Für alle bereitgestellten Endpunkte gelten die standardmäßigen API-Limits. Das Limit liegt bei 500 Anfragen pro Minute. Wird dieses Limit überschritten, antwortet die API mit der Meldung: 429: Too Many Attempts.
Response-Codes
Die Kontainer API antwortet mit HTTP-Statuscodes sowie JSON-basierten Fehlercodes und -meldungen.
HTTP-Statuscodes
Die folgende Tabelle gibt einen Überblick über die zurückgegebenen HTTP-Statuscodes.
| HTTP-Statuscode | Text | Beschreibung |
|---|---|---|
| 200 | OK | Erfolgreich. |
| 201 | Created | Objekt erstellt. |
| 204 | No Content | Kein Inhalt zurückgegeben. |
| 401 | Unauthorized | Token fehlt oder ist ungültig. |
| 403 | Forbidden | Ressource oder Anfrage wird nicht unterstützt. |
| 404 | Not Found | Objekt nicht gefunden. |
| 406 | Not Acceptable | Anfrage nicht akzeptabel. |
| 409 | Conflict | Konflikt im Anwendungs- oder Ressourcenstatus. |
| 422 | Validation Error | Validierungsfehler ist aufgetreten. |
| 429 | Too Many Requests | Rate Limit überschritten. |
Fehlermeldungen
Das folgende Beispiel zeigt, wie eine Fehlermeldung für den HTTP-Statuscode 401 - Unauthorized aussehen kann.
Filter
Filter können auf unterstützte Endpunkte angewendet werden, um die zurückgegebenen Ergebnisse einzuschränken. Filter werden über den Query-Parameter filter angewendet. Die unterstützten Filterfelder finden Sie im Abschnitt Filter Attributes des jeweiligen Endpunkts.
Beispiele:
Liste von Kategorieelementen/Produkten abrufen:
filter[description][like] : Shoes
Elemente anhand einer exakten EAN finden:
filter[ean][eq] : 4194382028137
Elemente nach einem bestimmten Datum finden:
filter[released_on][gt] : 2020-01-01
Elemente mit Stückkosten größer oder gleich 22,50 und kleiner als 50,00 finden:
filter[unit_cost][gte] : 22.50
filter[unit_cost][lt] : 50.00
Filter-Operatoren
- Gleich: [eq]
- Enthalten in: [in]
- Ähnlich: [like]
- Größer als: [gt]
- Größer oder gleich: [gte]
- Kleiner als: [lt]
- Kleiner oder gleich: [lte]
- Nicht enthalten in: [notin]
Hinweis: Die erlaubten Filter-Operatoren hängen vom jeweils durchsuchten Element ab.
Compound Documents
Um die Anzahl der HTTP-Anfragen zu reduzieren, können bei unterstützten Endpunkten neben den angeforderten primären Ressourcen auch zugehörige Ressourcen mit ausgegeben werden. Diese sogenannten „Included Resources“ werden über den Query-Parameter include angefordert. Die unterstützten Includes finden Sie im Abschnitt Available Includes des jeweiligen Endpunkts.
Beispiele:
- Im Endpunkt GET /elements, um die zugehörigen Elementoptionen einzuschließen:
include: element_option - Im Endpunkt GET /items, um Root-, Parent- und Child-Elemente einzuschließen:
include: parent_item,root_item,children
API-Code
Direkt zum Code für die API-Integration gelangen Sie HIER.
HINWEIS: Verwenden Sie bitte Ihre individuelle Kontainer-URL anstelle der in den oben verlinkten Beispielen verwendeten URL („api.kontainer.com“).