Det allmänna API:et är utformat för att kunna hämta, lista, uppdatera, skapa och radera dataposter i systemet. Det kan användas för att automatisera processer som leverantörshantering eller designskapande.
Modeller & Åtgärder
Varje datatyp (t.ex. ett företag, en design, en leverantör osv.) kallas en modell, och varje modell erbjuder flera åtgärder (hämta/lista/uppdatera/…). Du kan använda anropet info för att få OpenAPI-specifikationen för alla modeller och åtgärder:
https://[API-Endpoint]/info
Observera att oautentiserade anrop till informationsmodellen resulterar i en OpenAPI-specifikation för oautentiserade åtgärder. För att få tillgång till alla modeller och åtgärder som är tillgängliga för ditt konto, vänligen autentisera dig först.
URL-struktur
Uppmaningar till handling följer strukturen:
https://[API-Endpoint]/model/[MODELNAME]/[ACTIONNAME]
Exempel:
https://[API-Endpoint]/model/CMP/list
Förutom modellanrop finns det anrop till autentisering och OpenAPI-specifikationen:
https://[API-Endpoint]/auth/[AUTH-ACTION]
https://[API-Endpoint]/info
Allmän meddelandestruktur
Kommunikationen sker genom att skicka JSON-data fram och tillbaka. För att starta en åtgärd, skicka en POST-begäran med följande JSON-data i HTTP-kroppen:
{
"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
}
Innehållet i JSON-data kan variera beroende på vilken åtgärd som ska utföras. Se därför avsnittet Åtgärder här.
Beroende på projektets genomförande kan key krävas för vissa åtgärder (t.ex. att skapa en ny användare). Vänligen kontakta din kundansvarige för att få din nyckel.
Viktigt: Håll din nyckel privat och överför den inte via webbläsaren utan alltid via en server-till-server-anslutning!
API:et svarar med en JSON-text som är formaterad enligt följande:
{
"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
}
Felkoder
API:et kommer att använda följande felkoder för att signalera problem. Felkoden skickas via statuscode egenskapen i svaret.
| Kod | Beskrivning |
| 100–199 | Allmänna felkoder |
| 101 | Inga indata hittades |
| 102 | view/accessType saknas eller är felaktig |
| 103 | Inga ID:n angivna / ID:n ogiltiga. Skicka minst ett ID |
| 104 | Felaktigt filter: Fält X finns inte i Y |
| 105 | Åtgärd saknas eller är felaktig |
| 106 | Parameter X krävs/saknas |
| 107 | Okänd eller tom verktygsfältåtgärd |
| 108 | Åtgärd tillåten |
| 109 | Åtgärden misslyckades |
| 110 | Åtgärden tillåter högst ett eller inget ID. |
| 111 | Data för ID x hittades inte. |
| 112 | Skapa fel, se felmeddelande. Fältspecifika meddelanden, se response.data |
| 113 | Uppdateringsfel, se felmeddelande. Fältspecifika meddelanden, se response.data |
| 114 | Inga data för att skapa/uppdatera ett objekt |
| 115 | ID:n måste vara en matris |
| 116 | Kan inte signera lösenord |
| 117 | Maximalt antal objekt överskridet |
| 200–299 | Inloggnings-/åtkomstfel |
| 201 | Adserver avaktiverad |
| 202 | Användare hittades inte |
| 203 | IP-adress svartlistad |
| 204 | Felaktigt lösenord |
| 205 | Felaktiga inloggningsuppgifter |
| 206 | Okänt inloggningsfel |
| 207 | IP-adressen finns inte med på vitlistan |
| 208 | Lösenordsbyte krävs (lösenordet är för gammalt) |
| 209 | Åtkomst ej tillåten |
| 210 | Lösenordsförnyelse misslyckades |
|
211 |
Felaktig token |
| 212 | Token har gått ut |
| 213 | Kontot är inte aktivt ännu |
| 214 | Okänd åtkomsttyp |
| 215 | Lösenord måste ändras |
| 216 | Avaktiverad |
| 217 | Okänt fel |
| 218 | Autentiseringsnyckel saknas eller är tom |
| 219 | Tvåfaktorsautentisering saknas (skicka parameter 2fa) |
| 220 | Tvåfaktorsautentisering felaktig |
| 221 | Tvåfaktorsautentisering: OTP-kod saknas |
| 222 | Tvåfaktorsautentisering: OTP-kod felaktig |
| 223 | Tvåfaktorsautentisering: E-postkod saknas |
| 224 | Tvåfaktorsautentisering: Felaktig e-postkod |
| 225 | Tvåfaktorsautentisering: SMS-kod saknas |
| 226 | Tvåfaktorsautentisering: Felaktig SMS-kod |
| 227 | Tvåfaktorsautentisering: E-post skickas nu |
| 228 | Tvåfaktorsautentisering: SMS skickas nu |
| 229 | E-post om lösenordsuppdatering skickad |
| 230 | Lösenordet har uppdaterats |
| 300–399 | Interna felkoder |
| 301 | Kunde inte lösa beroendet för X på Y |
| 302 | Beroendet för X resulterade i en tom lista |
| 303 | Ingen kolumn att uppdatera |
| 304 | Beroendefel vid användning av fält |
| 305 | Beroendefel vid tomt fält |
| 306 | Listfrågan resulterade i en tom fältlista |
| 307 | Återkoppling för autentisering hittades inte |
| 308 | API-inkluderingsfil hittades inte: … |
| 399 | Allmänt internt fel |
| 900–999 | Anpassade felkoder, se meddelandet |
Åtkomsttyper
Beroende på API-strukturen finns olika åtkomsttyper (JSON-fältet "accessType"). Kontakta din kundansvarige för att få ID för den åtkomsttyp du kan använda.
Modeller
Beroende på projektet och dina åtkomsträttigheter kan du se olika modeller (datastrukturer som ska hämtas från/läggas in i databasen). Klicka här rights för att få en lista över modeller och åtgärder.