REST API Import prodejů V1

Tento zdroj slouží k importu prodejů 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ů prodejů 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ů
Formát dat
Formát zápisu data, např. 31.12.19
výběr
Vytvořit nové produkty
Je-li zapnutý, import vytvoří nové produkty pro neexistující ID produktů.
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
Mapování atributů prodejů
Mapování obsahující položku pro ID produktu, ID pobočky, datum, typ zaúčtování a každý druh prodeje, který má být importován.
komplexní typ


Nastavení
  • Požadavek

/v1/import/sales-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 (viz. Přihlášení).

Metoda
POST

Obsahem požadavku je pole JSON objektů obsahující klíče definované v nastavení Mapování atributů prodejů. Tyto jednotlivé záznamy popisují prodeje pro 1 produkt, 1 sadu prodejů, 1 datum a 1 typ zaúčtování.

  • 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.
Created Products
Volitelný - je zahrnut pouze, pokud import neskončil se stavem "FAILURE"
Počet importem vytvořených produktů.
Ignored Products
Volitelný - Je zahrnut pouze, pokud import neskončil se stavem "FAILURE"
Počet produktů ze vstupu, pro které se prodeje 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ů
Changed Figures

Volitelný - je zahrnut pouze, pokud import neskončil se stavem "FAILURE"

Počet importem změněných záznamů.


  • 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/sales-data/22?debug" \

    -H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \

    -H "Accept: application/json" \

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

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

-d '[\ 

  { \

    "Date": "30.1.21", \

    "Product Id" : "123", \

    "Store Id": "2", \

    "GP1": 1.1, \

    "Sold Pieces": 1 \

  }, \

  { \

    "Date": "31.1.21", \

    "Product Id" : "123", \

    "Store Id": "2", \

    "GP1": 3.3, \

    "Sold Pieces": 3 \

  } \

]'

  • Odpověď

{

  "Status": "SUCCESS", 

  "Total Lines": 2,

  "Changed Figures": 2,

  "Ignored Products": 0,

  "Created Products": 0

}