Total API - Dopravci
Adresa: http://total.hera.abra-solutions.eu/api/
Přihlášení: Basic Authentication
Formát dat: JSON
Obchodní případy
Platné obchodní případy - [GET]+ /total/business-case/read
RETURN:
[
{
CASE_ID – ID obchodního případu,
TRANSPORT_CONTACT_ID – ID řidiče,
DELIVERY_DATE – Datum dopravy, např. 2016-02-24T00:00:00+0100,
LOAD_ADDRESS_ID – ID adresy nakládky,
SUBJECT_ADDRESS_ID – ID adresy vykládky
STATUS_ID – ID stavu
PRODUCT_AMOUNT – převážené množství,
TANK_EVENT_ID – ID časového okna pro přečerpání z/do tanku,
SPZ_AUTO – stání poznávací značka auta,
SPZ_NAVES – státní poznávací značka návěsu,
AVAILABLE_TANKS – pole tanků, na kterých lze čerpat
}
]
Dostupné tanky - [GET] /total/business-case/available-tanks/{CASE_ID}
RETURN:
[
{
TANK_ID,
NAME
}
]
Úprava obchodního případu - [POST] /total/business-case/transport-update/{CASE_ID}
DATA:
{
TRANSPORT_CONTACT_ID – ID řidiče,
SPZ_AUTO - stání poznávací značka auta,
SPZ_NAVES - státní poznávací značka návěsu
}
RETURN:
{Změněný obchodní případ}
Potvrzení dopravy – [GET] /total/business-case/transport-confirm/{CASE_ID}
RETURN: HTTP 200
Nastavení časového okna – [POST] /total/business-case/time-window/{CASE_ID}
DATA:
{
TANK_EVENT_ID – ID časového okna, prázdné pokud se vytváří nové
TANK_EVENT_TANK_ID – ID tanku, na kterém se bude čerpat
TANK_EVENT_START – začátek okna, např. 2016-02-24T10:00:00+0100
TANK_EVENT_END – konec okna, např. 2016-02-24T10:03:00+0100
}
RETURN:
{Změněný obchodní případ}
Dodací listy
K obchodnímu případu – [GET] /total/delivery-note/read-by-business-case/{CASE_ID}
RETURN:
[
{
FILE_ID – ID souboru,
FILE_NAME – název souboru
}
]
Stažení DL – [GET] /system/file/down/{FILE_ID}
RETURN: soubor
Řidiči
Existující řidiči – [GET]+ /api/total/driver/read
RETURN:
[
{
ADDRESSBOOK_CONTACTID – ID řidiče
FIRST_NAME,
LAST_NAME,
FULL_NAME – Celé jméno s tituly
MOBILE_WORK,
EMAIL_WORK
}
]
Vytvoření řidiče – [POST] /total/driver/create
DATA:
{
FIRST_NAME
LAST_NAME
MOBILE_WORK
EMAIL_WORK
}
RETURN:
{vytvořený záznam}
Aktualizace řidiče – [POST] /total/driver/update/{ADDRESSBOOK_CONTACTID}
DATA:
{
FIRST_NAME
LAST_NAME
MOBILE_WORK
EMAIL_WORK
}
RETURN:
{upravený záznam}
Smazání řidiče – [GET] /total/driver/delete/{ADDRESSBOOK_CONTACTID}
RETURN: HTTP 200
Rozšíření dotazů na API
U metod, které jsou [GET]+ (Platné obchodní případy a Existující řidiči) lze použít rozšířené volání
metodou POST a do těla uvést některé z následujících parametrů pro dospecifikování dotazu.
Příklad těla:
{
“SELECT”: “SLOUPCE1, SLOUPEC5”,
“EXPAND”: “TAB1,TAB2”,
“FILTER”: {
“LOGIC”: “and”,
“FILTERS”: [
{“field”: “SLOUPEC1”, “operator”: “>”, “value”: “hodnota1”},
{“field”: “SLOUPEC2”, “operator”: “=”, “value”: “hodnota2”}
]
}
}
SELECT
Slouží k omezení sloupců, které metoda vrací.
EXPAND
Pokud se v datech, které metoda vrací, vyskytuje sloupec končící na ID nebo _ID, lze přes něj přejít na
navázaná data. Data získáme tak, že do parametru EXPAND přidáme název sloupce bez _ID (ID).
Metoda poté vrátí navázaná data jako hodnotu položky s názvem shodným s hodnotou v EXPAND.
Příklad: Chceme-li název stavu obchodního případu, do těla dotazu přidáme:
{
“EXPAND”: “STATUS”
}
Metoda vrátí:
{
… ostatní data …
STATUS: {
STATUS_ID
NAME
}
}
FILTER
Pokud je potřeba v datech filtrovat, je možné použít parametr FILTER. Má dvě vlastnosti:
LOGIC
Nastavuje, jak budou podmínky mezi sebou spojeny. Může nabývat hodnot „and“ nebo „or“.
FILTERS
Hodnotou tohoto parametru je pole objektů. Objektem může být opět filtr ({LOGIC, FILTERS}) nebo
podmínka. Podmínka má 3 povinné vlastnosti:
FIELD – Sloupec
OPERATOR – Operátor filtru. Dostupné operatory jsou: "eq" (je rovno), "neq" (není rovno),
"isnull" (je null), "isnotnull" (není null), "lt" (menší než, <), "lte" (menší enbo rovno, <=), "gt"
(větší než, >), "gte" (větší nebo rovno, >=), "startswith" (začíná řetězcem), "endswith" (končí
řetězcem), "contains" (obsahuje řetězec), "isempty" (je prázdný), "isnotempty" (není
prázdný).
VALUE – Hodnota podmínky.