REST API Import dat uživatelů V1
Tento zdroj slouží k importu uživatelů v Quantu. Vstupním i výstupním formátem je JSON.
Pro vytvoření a nastavení importu použijte sekci Automatické úlohy. Po vytvoření bude v seznamu úloh ID, které předáte v URL požadavku.
Nastavení
Před použitím API je nutno upravit tyto atributy v záložce Nastavení:
- Zaškrtněte atribut Zapnuto pro povolení úlohy.
- V atributu Uživatelé s povoleným přístupem pro API zvolte jednoho nebo více uživatelů s rolí Robot, kteří budou mít oprávnění úlohu spouštět.
- V atributu Mapování atributů uživatele zvolte atributy pro import a volitelně upravte jejich JSON klíče.
- Pro vytváření nových nebo pro změnu role existujících uživatelů je nutné vyplnit Mapování rolí pro atribut Role. Zde se zadává řetězec, co se vyskytuje jako hodnota atributu Role v JSONu a uživatelská role v Quantu, jemuž je přiřazen.
- Dále doporučujeme vyplnit Emaily k notifikacím, kde zadáte jednu či více e-mailových adres, na které budou zasílány e-maily s chybovými stavy.
Atributy
Atribut | Popis | Typ |
Zapnuto | Určuje, zda je daná automatické úloha aktivní a mohou přes ní být posílána data. | ano/ne |
Titul | Vlastní název automatické úlohy. | text |
Popis | Vlastní popis funkce automatické úlohy. | formátovaný text |
Poznámky | Poznámky. | dlouhý text |
E-maily pro notifikace | Jedna nebo více e-mailových adres, na které budou zasílány e-maily s chybovými stavy. | seznam řetězců |
Uživatelé s povoleným přístupem pro API | Uživatelé s rolí Robot, kteří jsou oprávněni úlohu spouštět. | seznam uživatelů |
Oddělovač položek seznamu | Znak, čímž se oddělují položky seznamu, např. pro hodnoty atributu Jednotlivé pobočky. | výběr z předdefinovaných položek |
Mapování atributů uživatelů | Mapování obsahující položku pro uživatelské jméno, roli, e-mail a další atributy, které májí být importovány. | komplexní typ |
Požadavek
/v1/import/user-data/{id_ulohy}
Parametr | Hodnota |
URL | ?debug přidaný do URL zobrazí v odpovědi i varování. Bez toho se vypisují pouze chyby. |
Hlavička | Accept: application/json |
Hlavička | Content-type: application/json |
Hlavička | Authorization: Bearer <TOKEN> TOKEN se získává pomocí /authenticate (více v manuálu Úvod a přihlášení). |
Metoda | POST |
Obsahem požadavku je pole JSON objektů obsahující klíče definované v nastavení Mapování atributů uživatele. Tyto jednotlivé záznamy popisují jednoho uživatele.
Je důležité, aby požadavek odpovídal standardům pro JSON formát. Kompletní definici těchto standardů najdete zde. Hodnoty číselných atributů prosím posílejte bez uvozovek viz příklad.
Odpověď
Klíč | Hodnota |
Status | Řetězec popisující výsledný stav importu.
|
Warnings | Je volitelný, tzn. je zahrnut pouze, pokud je v URL parametr ?debug a import vygeneroval alespoň jedno varování. Seznam řetězců s varováními. |
Errors | Volitelný - je zahrnut pouze, pokud import vygeneroval alespoň jednu chybu. Seznam řetězců s chybami. |
Total Lines | Volitelný - je zahrnut pouze, pokud import neskončil se stavem "FAILURE" Počet záznamů na vstupu. |
Empty IDs | Volitelný - je zahrnut pouze, pokud import neskončil se stavem "FAILURE" Počet záznamů s prázdným uživatelským jménem. |
Duplicated Users | Volitelný - Je zahrnut pouze, pokud import neskončil se stavem "FAILURE" Počet záznamů s uživatelským jménem, který se již dřív vyskytoval v záznamech. |
Ignored Users | Volitelný - je zahrnut pouze, pokud import neskončil se stavem "FAILURE" Počet ignorovaných záznamů z důvodu.
|
Stavové kódy
Stav | Význam |
200 OK | Import proběhl úspěšně s výsledným stavem "SUCCESS" nebo "PARTIAL_SUCCESS". Odpověď může obsahovat varování nebo nezávažné chyby. |
400 Bad Request | Chybné nastavení úlohy, nebo chybný požadavek. |
401 Unauthorized | Autorizační token je neplatný, nebo uživatel, který je tokenem přihlášen, nemá oprávnění spouštět tuto úlohu. |
404 Not Found | Nebyla nalezena úloha s ID daným v URL. |
500 Internal Server Error | Během importu nastala kritická chyba na straně serveru. |
503 Service Unavailable | Import již běží. Zkuste to spustit znova za počet sekund udávaných v hlavičce Retry-After. |
Záznam průběhu
V Quantu vedle nastavení úlohy lze prohlížet i záznamy průběhů jednotlivých importů, včetně statistik, chyb a varování.
Vybereme-li konkrétní záznam, můžeme zobrazit jeho detaily tlačítkem Zobrazit položky.
Požadavek
curl -X POST --location "http://[YOUR_COMPANY].iquant.eu/v1/import/user-data/206?debug" \
-H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Cache-Control: no-cache" \
-d "[\
{ \
\"Username\": \"john.foo\", \
\"Name\" : \"John Foo\", \
\"Role\": \"catman\", \
\"E-mail\": \"john@foo.com\", \
\"All Stores\": true \
}, \
{ \
\"Username\": \"jack.woo\", \
\"Name\" : \"Jack Woo\", \
\"Role\": \"store manager\", \
\"E-mail\": \"jack@woo.com\", \
\"All Stores\": false \
\"Individual Stores\": \"store1,store2,store3\"
} \
]"
Odpověď
{
"Status": "SUCCESS",
"Total Lines": 2,
"Empty IDs": 0,
"Ignored Users": 0,
"Duplicated Users": 0
}