Allgemeine API
Die allgemeine API soll Dateneinträge im System abrufen, auflisten, aktualisieren, erstellen und löschen können. Es kann verwendet werden, um Prozesse wie das Lieferantenmanagement oder die Designerstellung zu automatisieren.
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/...). Sie können den Anruf nutzen, um info
um die OpenAPI-Spezifikation aller Modelle und Aktionen zu erhalten:
https://[API-Endpoint]/info
Bitte beachten Sie, dass nicht authentifizierte Aufrufe des Infomodells zu einer OpenAPI-Spezifikation für nicht authentifizierte Aktionen führen. Um alle für Ihr Konto möglichen Modelle & Aktionen zu erhalten, authentifizieren Sie sich bitte zunächst.
URL-Struktur
Aufrufe von Modellen folgen der Struktur:
https://[API-Endpoint]/model/[MODELNAME]/[ACTIONNAME]
Beispiel:
https://[API-Endpoint]/model/CMP/list
Zusätzlich zu Modellaufrufen gibt es Aufrufe zur Authentifizierung und zur OpenAPI-Spezifikation:
https://[API-Endpoint]/auth/[AUTH-ACTION]
https://[API-Endpoint]/info
Allgemeine Nachrichtenstruktur
Die Kommunikation erfolgt durch Hin- und Herschicken von JSON-Daten. Um eine Aktion zu starten, senden Sie 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 lesen Sie daher den Abschnitt Aktionen hier.
Abhängig von der Projektdurchführung a key
Möglicherweise sind bestimmte Aktionen erforderlich (z. B. das Erstellen eines neuen Benutzers). Bitte setzen Sie sich mit Ihrem Account Manager in Verbindung, um Ihren Schlüssel zu erhalten.
Wichtig: Halten Sie Ihren Schlüssel privat 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 das gesendet statuscode
Eigenschaft der Antwort.
Code | Beschreibung |
100 199 | Allgemeine Fehlercodes |
101 | Keine Eingabedaten gefunden |
102 | view / accessType fehlt oder ist falsch |
103 | Keine IDs übermittelt / IDs ungültig. Bitte senden Sie mindestens einen Ausweis |
104 | Falscher Filter: Feld X existiert in Y nicht |
105 | Aktion fehlt oder ist falsch |
106 | Parameter X ist erforderlich / fehlt |
107 | Unbekannte oder leere Symbolleistenaktion |
108 | Aktion nicht erlaubt |
109 | Aktion: fehlgeschlagen |
110 | Aktion erlaubt nicht mehr als eine / oder keine ID. |
111 | Daten für ID x nicht gefunden. |
112 | Fehler erstellen, siehe Fehlermeldung. Feldspezifische Meldungen siehe response.data |
113 | Update-Fehler, siehe Fehlermeldung. Feldspezifische Meldungen siehe response.data |
114 | Keine Daten zum Erstellen / Aktualisieren eines Elements |
115 | IDs müssen ein Array sein |
116 | Passwort kann nicht signiert werden |
117 | Maximale Artikelmenge überschritten |
200 299 | Anmelde- / Zugriffsfehler |
201 | Adserver deaktiviert |
202 | Benutzer nicht gefunden |
203 | IP auf die schwarze Liste gesetzt |
204 | Falsches Passwort |
205 | Fehlende Anmeldeinformationen |
206 | Unbekannter Anmeldefehler |
207 | IP nicht auf der Whitelist |
208 | Passwortänderung notwendig (Passwort zu alt) |
209 | Zugriff nicht erlaubt |
210 | Passworterneuerung nicht erfolgreich |
211 |
Token falsch |
212 | Token abgelaufen |
213 | Konto noch nicht aktiv |
214 | Unbekannter Zugriffstyp |
215 | Passwortänderung erforderlich |
216 | Deaktiviert |
217 | Unbekannter Fehler |
218 | Authentifizierungsschlüssel fehlt oder ist leer |
219 | Zwei-Faktor-Authentifizierung fehlt (Parameter senden 2fa ) |
220 | Zwei-Faktor-Authentifizierung falsch |
221 | Zwei-Faktor: OTP-Code fehlt |
222 | Zwei-Faktor: OTP-Code falsch |
223 | Zwei-Faktor: Mail-Code fehlt |
224 | Zwei-Faktor: Mail-Code falsch |
225 | Zwei-Faktor: SMS-Code fehlt |
226 | Zwei-Faktor: SMS-Code falsch |
227 | Zwei-Faktor: Mail wird jetzt gesendet |
228 | Zwei-Faktor: SMS wird jetzt gesendet |
229 | E-Mail zur Passwortaktualisierung gesendet |
230 | Passwort aktualisiert |
300 399 | Interne Fehlercodes |
301 | Die Abhängigkeit von X von Y konnte nicht aufgelöst werden |
302 | Die Abhängigkeit für X führte zu einer leeren Liste |
303 | Keine zu aktualisierende Spalte |
304 | Abhängigkeitsfehler von der Feldnutzung |
305 | Abhängigkeitsfehler vom leeren Feld |
306 | Die Listenabfrage führte zu einer leeren Feldliste |
307 | Authentifizierungsrückruf nicht gefunden |
308 | API-Include-Datei nicht gefunden: ... |
399 | Allgemeiner interner Fehler |
900 999 | Benutzerdefinierte Fehlercodes, siehe Meldung |
Zugriffstypen
Abhängig von der API-Struktur existieren unterschiedliche 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.
Modelle
Abhängig vom Projekt und Ihren Zugriffsrechten werden möglicherweise unterschiedliche Modelle angezeigt (Datenstrukturen, die von / in die Datenbank empfangen / eingefügt werden sollen). Bitte rufen Sie action an rights
um eine Liste von Modellen und Aktionen zu erhalten.