Ogólne API
Ogólny interfejs API został zaprojektowany tak, aby móc pobierać, wyświetlać, aktualizować, tworzyć i usuwać wpisy danych w systemie. Może być używany do automatyzacji procesów, takich jak zarządzanie dostawcami lub tworzenie projektów.
Modele i działania
Każdy typ danych (np. cmp, projekt, dostawca itd.) nazywany jest modelem, każdy model udostępnia kilka akcji (get/list/update/...). Możesz skorzystać z połączenia do info aby otrzymać specyfikację OpenAPI wszystkich modeli i akcji:
https://[API-Endpoint]/info
Należy pamiętać, że nieuwierzytelnione wywołania modelu informacyjnego spowodują utworzenie specyfikacji OpenAPI dla nieuwierzytelnionych działań. Aby uzyskać wszystkie modele i akcje dostępne dla Twojego konta, najpierw się uwierzytelnij.
Struktura adresu URL
Wywołania modeli mają następującą strukturę:
https://[API-Endpoint]/model/[MODELNAME]/[ACTIONNAME]
Przykład:
https://[API-Endpoint]/model/CMP/list
Oprócz wywołań modelowych istnieją wywołania uwierzytelniania i specyfikacji OpenAPI:
https://[API-Endpoint]/auth/[AUTH-ACTION]
https://[API-Endpoint]/info
Ogólna struktura wiadomości
Komunikacja odbywa się poprzez przesyłanie danych JSON tam iz powrotem. Aby rozpocząć akcję, wyślij żądanie POST z następującymi danymi JSON w treści HTTP:
{
"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
}
Zawartość danych JSON może się różnić w zależności od wykonywanej akcji. Dlatego proszę zapoznać się z sekcją Działania tutaj.
W zależności od realizacji projektu a key może być wymagane do niektórych działań (np. tworzenia nowego użytkownika). Skontaktuj się z menedżerem konta, aby otrzymać klucz.
Ważne: Zachowaj prywatność swojego klucza i nie przesyłaj go przez przeglądarkę, ale zawsze przez połączenie serwer-serwer!
Interfejs API odpowie treścią JSON sformatowaną w następujący sposób:
{
"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
}
kody błędów
Interfejs API użyje następujących kodów błędów w celu zasygnalizowania problemów. Kod błędu jest wysyłany przez statuscode właściwość odpowiedzi.
| Code | OPIS |
| 100-199 | Ogólne kody błędów |
| 101 | Nie znaleziono danych wejściowych |
| 102 | brak lub niepoprawny typ widoku/dostępu |
| 103 | Nie przesłano identyfikatorów / identyfikatory są nieprawidłowe. Prześlij co najmniej jeden identyfikator |
| 104 | Nieprawidłowy filtr: Pole X nie istnieje w Y |
| 105 | brak akcji lub jest ona nieprawidłowa |
| 106 | Parametr X jest wymagany/brakuje |
| 107 | Nieznana lub pusta akcja paska narzędzi |
| 108 | Akcja niedozwolona |
| 109 | Akcja: nieudana |
| 110 | Akcja dopuszcza nie więcej niż jeden/lub brak ID. |
| 111 | Nie znaleziono danych dla identyfikatora x. |
| 112 | Utwórz błąd, zobacz komunikat o błędzie. Komunikaty specyficzne dla pola patrz response.data |
| 113 | Błąd aktualizacji, patrz komunikat o błędzie. Komunikaty specyficzne dla pola patrz response.data |
| 114 | Brak danych do utworzenia/aktualizacji elementu |
| 115 | Identyfikatory muszą być tablicą |
| 116 | Nie można podpisać hasła |
| 117 | Przekroczono maksymalną ilość przedmiotu |
| 200-299 | Błędy logowania/dostępu |
| 201 | Adserver dezaktywowany |
| 202 | Użytkownik nie znaleziony |
| 203 | IP na czarnej liście |
| 204 | Hasło niepoprawne |
| 205 | Brakujące dane uwierzytelniające |
| 206 | Nieznany błąd logowania |
| 207 | IP nie jest na białej liście |
| 208 | Konieczna zmiana hasła (hasło jest zbyt stare) |
| 209 | Dostęp niedozwolony |
| 210 | Odnowienie hasła nie powiodło się |
|
211 |
Nieprawidłowy token |
| 212 | Token wygasł |
| 213 | Konto nie jest jeszcze aktywne |
| 214 | Nieznany typ dostępu |
| 215 | Konieczna zmiana hasła |
| 216 | Dezaktywowany |
| 217 | Nieznany błąd |
| 218 | Brak klucza uwierzytelniania lub jest on pusty |
| 219 | Brak uwierzytelniania dwuskładnikowego (wyślij parametr 2fa) |
| 220 | Nieprawidłowe uwierzytelnianie dwuskładnikowe |
| 221 | Dwuskładnikowy: brak kodu OTP |
| 222 | Dwuskładnikowy: nieprawidłowy kod OTP |
| 223 | Dwuskładnikowy: brak kodu pocztowego |
| 224 | Dwuskładnikowy: nieprawidłowy kod pocztowy |
| 225 | Dwuskładnikowy: brak kodu SMS |
| 226 | Dwuskładnikowy: nieprawidłowy kod SMS |
| 227 | Dwuskładnikowy: poczta jest teraz wysyłana |
| 228 | Dwuskładnikowy: SMS jest teraz wysyłany |
| 229 | Wysłano wiadomość e-mail z aktualizacją hasła |
| 230 | Hasło zaktualizowane |
| 300-399 | Kody błędów wewnętrznych |
| 301 | Nie można rozwiązać zależności dla X od Y |
| 302 | Zależność dla X spowodowała pustą listę |
| 303 | Brak kolumny do aktualizacji |
| 304 | Błąd zależności w użyciu pola |
| 305 | Błąd zależności w pustym polu |
| 306 | Zapytanie o listę spowodowało wyświetlenie pustej listy pól |
| 307 | Nie znaleziono wywołania zwrotnego uwierzytelniania |
| 308 | Nie znaleziono pliku dołączanego API: ... |
| 399 | Ogólny błąd wewnętrzny |
| 900-999 | Niestandardowe kody błędów, zobacz komunikat |
Rodzaje dostępu
W zależności od struktury API istnieją różne typy dostępu (pole JSON „accessType”). Skontaktuj się ze swoim menedżerem konta, aby otrzymać identyfikator typu dostępu, którego możesz użyć.
modele
W zależności od projektu i Twoich praw dostępu, możesz zobaczyć różne modele (struktury danych, które mają być odbierane/wstawiane z/do bazy danych). Zadzwoń do akcji rights w celu otrzymania listy modeli i działań.







