REST API
K přístupu k datům z pokladny lze použít HTTP REST API.
API je v současné době poskytováno v omezeném režimu. Do budoucna plánujeme expiraci autorizačního tokenu.
Autorizace požadavku
Autorizace probíhá pomocí API Tokenu, který naleznete v Backoffice - Nastavení - Systém.
- Autorizační klíč je v hlavičce Authorization: A|xxxxx
curl 'https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/reports/generic/order_history' \
-H 'Accept: application/json' \
-H 'Authorization: A|kLgT.........' \
-H 'Content-Type: application/json' \
--data-raw '{"date_start":1639436400000,"date_end":1642028399999,"timezone":"Europe/Prague","id_cash_register":953221254382092,"id_shop":492696696397774}' \
Konvence
- Časy jsou reprezentovány v unix timestamp v millisekundách. Např. 1639436400000
- Monetární hodnoty (tržba, cena, atd) jsou vždy celé číslo, vynásobené 1000. Např. cena 23.50 je v JSON dokumentu jako 23500.
- Autorizační token nemá expiraci, ale do budoucna plánujeme že token bude muset být vyměněn za nový
- Do User Agent prosím vložte svoji identifikaci případně kontakt, abychom měli kontakt na vývojáře
GET products
Vrací JSON Array se seznamem produktů. Položky které jsou smazané, mají nastaveno _visible = false
https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/products/list
CURL příklad
curl 'https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/products/list' \
-H 'Authorization: A|......'
[
{
"unit": 0,
"date_updated": 1641499263724,
"attributes_bitmask": 8208,
"__price_matrix_model": {
"date_starts": 1640070857424,
"unit_price_base_tax_incl": 550,
"unit_price_regular_tax_excl": 454546,
"_d": 0,
"unit_price_c_tax_excl": 0,
"credits_deduct": 0,
"hour_bitmask": 0,
"points_deduct": 0,
"reduction_amount_a_tax_excl": 0,
"id_exec_rule": 0,
"id_product": 6555921856010421,
"unit_price_b_tax_excl": 0,
"dow_bitmask": 0,
"price_bitmask": 0,
"unit_price_base_tax_excl": 454.5455,
"id_shop": 0,
"currency": "CZK",
"unit_price_a_tax_excl": 454546,
"id": 6555922259744395,
"id_warehouse": 953221254427235,
"_t": "product_price_matrix",
"_v": 1641499263728
},
"condition_type": 0,
"name": "Cesta",
"id_category": 5723345161520367,
"node_sort": -6680027574804497000,
"inventory_management": false,
"id": 6555921856010421,
"id_shop": 0,
"color": 0,
"visible": true,
"tax_pst_rate": 1.21,
"item_type": 0,
"icon_code": 0,
"quantity_minimal": 1,
"quantity_multiple": 1,
"id_c": 100084,
"_t": "products",
"_v": 1641499263746
}
]
GET product_price_matrix
Ceny k produktům. Je nutné napárovat pomocí id_product
https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/product_price_matrix/list
GET categories
Vrací JSON Array se seznamem kategorií
https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/categories/list
GET orders
Vrací seznam účtenek, seřazené od nejnovějších po nejstarší. Je nutné poskytnout ID objektu orders, od kterého se vrací záznamy.
https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/orders/list?version_start=0&id_start=6619280915435403
GET order_details
Vrací položky účtenek
https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/order_details/list?version_start=0&id_start=6619280915435403
POST warehouse_status
Aktuální stav skladu. Je nutné zaslat JSON request s id_warehouse který určuje ID skladu, pro který chcete report.
curl 'https://m6vadtaz1h.execute-api.eu-west-1.amazonaws.com/prod/data/reports/generic/warehouse_status' \
-H 'Accept: application/json' \
-H 'Authorization: A|....' \
-H 'Content-Type: application/json' \
--data-raw '{"id_warehouse":953221250000000}'
Odpověď
{
"data": [
{
"id_c": 100084,
"id_warehouse": 953221254427235,
"wname": "WAREHOUSE MAIN 21",
"id_product": 5128991459121170,
"pname": "Aperol",
"cname": null,
"id_category": 4933809643652539,
"barcode": null,
"ean13": null,
"unit": 0,
"qty_cnt": 1,
"qty_sum": 3,
"qty_avg": 3,
"date_updated": 1641489385000,
"pp_avg": 10000,
"pp_unit": 10000
},
{
"id_c": 100084,
"id_warehouse": 953221254427235,
"wname": "WAREHOUSE MAIN 21",
"id_product": 4305305643161675,
"pname": "01.Vstup 8225",
"cname": "ACesty",
"id_category": 5723345161520367,
"barcode": null,
"ean13": null,
"unit": 0,
"qty_cnt": 1,
"qty_sum": 6,
"qty_avg": 6,
"date_updated": 1642004221000,
"pp_avg": 100000,
"pp_unit": 100000
}
],
"source": "query"
}