Allmänt API

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.

KodBeskrivning
100–199Allmänna felkoder
101Inga indata hittades
102view/accessType saknas eller är felaktig
103Inga ID:n angivna / ID:n ogiltiga. Skicka minst ett ID
104Felaktigt filter: Fält X finns inte i Y
105Åtgärd saknas eller är felaktig
106Parameter X krävs/saknas
107Okä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.
111Data för ID x hittades inte.
112Skapa fel, se felmeddelande. Fältspecifika meddelanden, se response.data
113Uppdateringsfel, se felmeddelande. Fältspecifika meddelanden, se response.data
114Inga data för att skapa/uppdatera ett objekt
115ID:n måste vara en matris
116Kan inte signera lösenord
117Maximalt antal objekt överskridet
  
200–299Inloggnings-/åtkomstfel
201Adserver avaktiverad
202Användare hittades inte
203IP-adress svartlistad
204Felaktigt lösenord
205Felaktiga inloggningsuppgifter
206Okänt inloggningsfel
207IP-adressen finns inte med på vitlistan
208Lösenordsbyte krävs (lösenordet är för gammalt)
209Åtkomst ej tillåten
210Lösenordsförnyelse misslyckades

211

Felaktig token
212Token har gått ut
213Kontot är inte aktivt ännu
214Okänd åtkomsttyp
215Lösenord måste ändras
216Avaktiverad
217Okänt fel
218Autentiseringsnyckel saknas eller är tom
219Tvåfaktorsautentisering saknas (skicka parameter 2fa)
220Tvåfaktorsautentisering felaktig
221Tvåfaktorsautentisering: OTP-kod saknas
222Tvåfaktorsautentisering: OTP-kod felaktig
223Tvåfaktorsautentisering: E-postkod saknas
224Tvåfaktorsautentisering: Felaktig e-postkod
225Tvåfaktorsautentisering: SMS-kod saknas
226Tvåfaktorsautentisering: Felaktig SMS-kod
227Tvåfaktorsautentisering: E-post skickas nu
228Tvåfaktorsautentisering: SMS skickas nu
229E-post om lösenordsuppdatering skickad
230Lösenordet har uppdaterats
  
300–399Interna felkoder
301Kunde inte lösa beroendet för X på Y
302Beroendet för X resulterade i en tom lista
303Ingen kolumn att uppdatera
304Beroendefel vid användning av fält
305Beroendefel vid tomt fält
306Listfrågan resulterade i en tom fältlista
307Återkoppling för autentisering hittades inte
308API-inkluderingsfil hittades inte: …
399Allmänt internt fel
  
900–999Anpassade 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.

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!