Allgemeine API

Die allgemeine API ist so konzipiert, dass sie Dateneinträge im System abrufen, auflisten, aktualisieren, erstellen und löschen kann. Sie kann zur Automatisierung von Prozessen wie Lieferantenmanagement oder Designerstellung genutzt werden.

Modelle & Aktionen

Jeder Datentyp (z. B. ein CMP, ein Design, ein Anbieter usw.) wird als Modell bezeichnet; jedes Modell bietet mehrere Aktionen (get/list/update/…). Du kannst den Aufruf info verwenden, um die OpenAPI-Spezifikation aller Modelle und Aktionen abzurufen:

https://[API-Endpoint]/info

Bitte beachten Sie, dass nicht authentifizierte Aufrufe des Info-Modells zu einer OpenAPI-Spezifikation für nicht authentifizierte Aktionen führen. Um alle für Ihr Konto verfügbaren Modelle und Aktionen zu erhalten, authentifizieren Sie sich bitte zuerst.

URL-Struktur

Die Aufrufe zum Handeln folgen folgender Struktur:

https://[API-Endpoint]/model/[MODELNAME]/[ACTIONNAME]

Beispiel:

https://[API-Endpoint]/model/CMP/list

Neben Modellaufrufen gibt es Aufrufe zur Authentifizierung und zur OpenAPI-Spezifikation:

https://[API-Endpoint]/auth/[AUTH-ACTION]
https://[API-Endpoint]/info

Allgemeine Struktur der Botschaft

Die Kommunikation erfolgt durch den Austausch von JSON-Daten. Um eine Aktion zu starten, sende bitte eine POST-Anfrage mit den folgenden JSON-Daten im HTTP-Body:

{
  "accessType": 1,         // Access type (may be required for authentication calls)
  "lang":       1|2|3|..., // Language (optional)  
  "kmd":        "...",     // Authentication token (optional/required depending on context)  
  "key":        "..."      // Your API-Key (optional/required depending on context)
  // other fields might be required depending on context
}

Der Inhalt der JSON-Daten kann je nach auszuführender Aktion variieren. Bitte beachten Sie daher den Abschnitt „Aktionen“ hier.

Je nach Projektumsetzung ist für bestimmte Aktionen key für bestimmte Aktionen erforderlich sein (z. B. das Anlegen eines neuen Benutzers). Bitte wenden Sie sich an Ihren Kundenbetreuer, um Ihren Schlüssel zu erhalten.

Wichtig: Bewahren Sie Ihren Schlüssel geheim und übertragen Sie ihn nicht über den Browser, sondern immer über eine Server-zu-Server-Verbindung!

Die API antwortet mit einem JSON-Body, der wie folgt formatiert ist:

{
  "status":     "...",  // Status: Success|Error 
  "statuscode": 0..999, // Status code
  "msg":        "...",  // Human readable status message
  "model":      "...",  // Context dependend. May return model type to be displayed or null
  "action":     "...",  // Action performed
  "data":        ...    // Type and content is depended on context  
}

Fehlercodes

Die API verwendet die folgenden Fehlercodes, um Probleme zu signalisieren. Der Fehlercode wird über die statuscode Eigenschaft der Antwort gesendet.

CodeBeschreibung
100–199Allgemeine Fehlercodes
101Keine Eingabedaten gefunden
102view/accessType fehlt oder ist falsch
103Keine IDs übermittelt / IDs ungültig. Bitte senden Sie mindestens eine ID
104Falscher Filter: Feld X existiert in Y nicht
105Aktion fehlt oder ist falsch
106Parameter X ist erforderlich/fehlt
107Unbekannte oder leere Symbolleistenaktion
108Aktion nicht zulässig
109Aktion fehlgeschlagen
110Die Aktion erlaubt höchstens eine ID oder gar keine.
111Daten für ID x nicht gefunden.
112Fehler beim Erstellen, siehe Fehlermeldung. Feldspezifische Meldungen siehe response.data
113Aktualisierungsfehler, siehe Fehlermeldung. Feldspezifische Meldungen siehe response.data
114Keine Daten zum Anlegen/Aktualisieren eines Elements
115IDs müssen ein Array sein
116Passwort kann nicht signiert werden
117Maximale Anzahl an Artikeln überschritten
  
200–299Anmelde-/Zugriffsfehler
201Adserver deaktiviert
202Benutzer nicht gefunden
203IP auf der Sperrliste
204Falsches Passwort
205Anmeldedaten fehlen
206Unbekannter Anmeldefehler
207IP nicht auf der Whitelist
208Passwortänderung erforderlich (Passwort zu alt)
209Zugriff nicht erlaubt
210Passwort-Aktualisierung nicht erfolgreich

211

Token falsch
212Token abgelaufen
213Konto noch nicht aktiv
214Unbekannter Zugriffstyp
215Passwortänderung erforderlich
216Deaktiviert
217Unbekannter Fehler
218Authentifizierungsschlüssel fehlt oder ist leer
219Zwei-Faktor-Authentifizierung fehlt (Parameter senden 2fa)
220Zwei-Faktor-Authentifizierung falsch
221Zwei-Faktor: OTP-Code fehlt
222Zwei-Faktor: OTP-Code falsch
223Zwei-Faktor-Authentifizierung: E-Mail-Code fehlt
224Zwei-Faktor-Authentifizierung: E-Mail-Code falsch
225Zwei-Faktor-Authentifizierung: SMS-Code fehlt
226Zwei-Faktor-Authentifizierung: SMS-Code falsch
227Zwei-Faktor-Authentifizierung: E-Mail wird jetzt gesendet
228Zwei-Faktor-Authentifizierung: SMS wird jetzt gesendet
229E-Mail zur Passwortaktualisierung gesendet
230Passwort aktualisiert
  
300–399Interne Fehlercodes
301Abhängigkeit für X auf Y konnte nicht aufgelöst werden
302Die Abhängigkeit für X ergab eine leere Liste
303Keine Spalte zum Aktualisieren
304Abhängigkeitsfehler bei der Feldverwendung
305Abhängigkeitsfehler bei leerem Feld
306Listenabfrage ergab eine leere Feldliste
307Authentifizierungs-Callback nicht gefunden
308API-Include-Datei nicht gefunden: …
399Allgemeiner interner Fehler
  
900–999Benutzerdefinierte Fehlercodes, siehe Meldung

Zugriffstypen

Je nach API-Struktur gibt es verschiedene Zugriffstypen (JSON-Feld „accessType“). Bitte wenden Sie sich an Ihren Kundenbetreuer, um die ID für den Zugriffstyp zu erhalten, den Sie verwenden können.

Vorlagen

Je nach Projekt und Ihren Zugriffsrechten werden Ihnen möglicherweise unterschiedliche Vorlagen angezeigt (Datenstrukturen, die aus der Datenbank abgerufen bzw. in diese eingefügt werden sollen). Bitte klicken Sie hier rights auf, um eine Liste der Modelle und Aktionen zu erhalten.

We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!