REST API Import balení produktů V1

Tento zdroj slouží k importu balení produktů 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.

ID úlohy 
  • 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ů balení produktů zvolte atributy pro import 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
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ů
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
Mapovací atribut
Atribut produktu v Quantu, pomocí kterého se budou párovat položky z importu s produkty v Quantu.
výběr
Vytvořit nové produkty
Je-li zapnutý, import vytvoří nové produkty pro neexistující ID produktů. Tato volba je aktivní pouze, když v Mapovací atribut je vybraný Primární ID produktu.
ano/ne
Nastavit nové produkty pro planogramy
Je-li zapnutý, nově vytvořené produkty budou určené pro tvorbu planogramů. Tato volba je aktivní pouze, když Vytvořit nové produkty je zapnutý.
ano/ne
Ignorovat smazané produkty
Standardně, když import nenajde živý produkt k danému ID, tak hledá mezi smazanými produkty. Pokud najde smazaný, tak ho oživí. Zapnutím této volby se smazané produkty místo oživení ignorují.
ano/ne
Nepřepisovat nenulové rozměry
Je-li zapnutý, rozměry z importovaných záznamů (např. výška, šířka) se naimportují pouze, když existující balení má nulové rozměry.
ano/ne
Odstranit neaktualizovaná balení
Je-li zapnutý, smaže balení, které nebyly aktualizovány žádným záznamem. Platí pouze pro produkty zahrnuty v tomto importu.
ano/ne
Odstranit pouze prázdná balení
Je-li zapnutý, smaže pouze prázdná neaktualizovaná balení, tj. balení s prázdným názvem a nulovými rozměry.
ano/ne
Mapování atributů balení produktů
Mapování obsahující položku pro každý atribut, který má být importován.
komplexní typ


Nastavení
  • Požadavek

/v1/import/product-packages/{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 pole JSON objektů obsahující klíče definované v nastavení Mapování atributů balení produktů. 

  • Odpověď
Klíč
Hodnota
Status
Řetězec popisující výsledný stav importu.
  • SUCCESS = bezchybný průběh importu
  • PARTIAL_SUCCESS = import proběhl, ale vygeneroval jedno nebo více varování
  • FAILURE = při importu nastala jedna nebo více chyb
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.
Duplicated Packages
Volitelný - Je zahrnut pouze, pokud import neskončil se stavem "FAILURE"
Počet záznamů které byly přeskočeny, protože toto balení již bylo importováno ve stejném požadavku.
Ignored Products
Volitelný - Je zahrnut pouze, pokud import neskončil se stavem "FAILURE"
Počet produktů ze vstupu, pro které se balení produktů nenaimportovaly. Možné důvody jsou:
  • Neexistující Id produktů a vypnuté vytváření nových produktů
  • Id produktu se našlo mezi smazanými produkty a je zapnuté ignorování smazaných produktů
  • 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í.

Záznam průběhu 

Vybereme-li konkrétní záznam, můžeme zobrazit jeho detaily tlačítkem Zobrazit položky.

Detaily záznamu 


  • Požadavek

curl -X POST --location "https://[VASE_SPOLECNOST].iquant.eu/v1/import/product-packages/28?debug" \

    -H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \

    -H "Accept: application/json" \

    -H "Content-Type: application/json" \

    -H "Cache-Control: no-cache" \

-d '[{ "Primary Product ID": "100001", "Packaging": "Test Package", "Width": 10.5, "Height": 3, "Depth": 0.4 }]'


  • Odpověď

{

  "Status": "SUCCESS", 

  "Total Lines": 1,

  "Duplicated Products": 0,

  "Ignored Products": 0

}