REST API Export rezervace vybavení V1
Tento zdroj slouží k exportu rezervace vybavení v Quantu. Vstupním i výstupním formátem je JSON.
Pro vytvoření a nastavení exportu použijte dialog 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 řádcích Mapování atributů rezervací, mapování produktových atributů, mapování pobočkových atributů a mapování atributů typu vybavení zvolte atributy pro export a volitelně upravte jejich JSON klíče.
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 |
Název | 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ů |
Zpoždění v sekundách před opakováním | V případě stavového kódu 503 se má klient znovu pokusit poslat požadavek za tolik sekund. | číslo |
Mapování atributů rezervací | Mapování obsahující položku pro každý atribut rezervace vybavení, který má být exportován. | komplexní typ |
Mapování produktových atributů | Mapování obsahující položku pro každý atribut produktu, který má být exportován. | komplexní typ |
Mapování pobočkových atributů | Mapování obsahující položku pro každý atribut pobočky, který má být exportován. | komplexní typ |
Mapování atributů typu vybavení | Mapování obsahující položku pro každý atribut vybavení, který má být exportován. | komplexní typ |
Jednotka rozměru | Měrná jednotka jako cm, mm atd. | výběr |
Formát dat | Formát zápisu data, např. 31.12.19 | výběr |
Formát datumu a času | Formát zápisu data a času, např. 31.12.19 23:59:59 | výběr |
Oddělovač položek seznamu | Znak pro rozdělení položek seznamu hodnot. | znak |
Požadavek
/v1/export/fixture-product-reservations/{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 (viz. Přihlášení). |
Metoda | POST |
Obsahem požadavku je JSON objekt obsahující tyto klíče:
Klíč | Hodnota |
ReservedBy | Samostatný řetězec nebo pole řetězců určující, které rezervace kterého uživatele mají být exportovány. V případě, že se pošle prázdná hodnota, pošle se export všech rezervací. Příklady: { "ReservedBy": [] } { "ReservedBy": ["test.rehorova.cz.extech.sk"] } |
- Odpověď
Klíč | Hodnota |
Status | Řetězec popisující výsledný stav exportu.
|
Warnings | Volitelný - je zahrnut pouze, pokud je v URL parametr ?debug a export vygeneroval alespoň jedno varování. Seznam řetězců s varováními. |
Errors | Volitelný - je zahrnut pouze, pokud export vygeneroval alespoň jedno chybu. Seznam řetězců s chybami. |
Records | Volitelný - je zahrnut pouze, pokud export neskončil se stavem "FAILURE". Seznam exportovaných objektů. Každý objekt obsahuje klíče definované mapováním v nastavení úlohy. |
Stavové kódy
Stav | Význam |
200 OK | Export 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. |
403 Reservations Not Enabled | Rezervace nejsou pro danou společnost dostupné. |
500 Internal Server Error | Během exportu nastala kritická chyba na straně serveru. |
Záznam průběhu
V Quantu vedle nastavení úlohy lze prohlížet i záznamy průběhů jednotlivých exportů, 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://[VASE_SPOLECNOST].iquant.eu/v1/export/fixture-product-reservations/246?debug" \
-H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Cache-Control: no-cache" \
-d '{ "ReservedBy": ["test.rehorova.cz.extech.sk","quant.customer"] }'
Odpověď
{
"Status": "SUCCESS",
"FixtureTypes": {
"357888": {
"Název": "Freezer",
"Jednotkový měsíční poplatek": 500 },
"568836": {
"Název": "Fixture 6 shelves",
"Jednotkový měsíční poplatek": 200 }
},
"Products": {
"718234": {
"Primární Id": "971070800",
"Název produktu": "",
"Název dodavatele": "",
"ID dodavatele": "" },
"720552": {
"Primární Id": "970518320",
"Název produktu": "",
"Název dodavatele": "",
"ID dodavatele": "" },
},
"Stores": {
"169": {
"Název pobočky": "Čáslav",
"ID pobočky": "198",
},
"Records": [ {
"Stav": "Waiting for Approval",
"Rezervováno uživatelem": "test.rehorova.cz.extech.sk",
"Rok": 2023,
"Měsíc": 10,
"Poznámka": "PAVLA test2",
"Produkty": [ "721884", "720552" ],
"QID Pobočky": "663097",
"Fixture Type QID": "701386",
"Poplatek za vybavení": 1000 }
...]
}