2.3 Odpovědi na požadavky
Odpovědi na požadavky jsou převážně ve formátu JSON. Výjimku tvoří pouze požadavky na stažení binárních dat (uživatelské zvuky, obrázky apod.) nebo konfiguraci intercomu v XML. Formát odpovědi lze rozlišit dle hlavičky Content-Type. Pro JSON jsou definovány tři základní typy odpovědí:
Kladná odpověď bez parametrů
Tato odpověď je odesílána v případě úspěšného provedení požadavku u funkcí nevracejících žádné parametry. Tato odpověď je vždy kombinovaná se stavovým kódem HTTP protokolu 200 OK.
{
"success" : true,
}
Kladná odpověď s parametry
Tato odpověď je odesílána v případě úspěšného provedení požadavku u funkcí vracejících doplňkové parametry. Položka result obsahuje další parametry odpovědi poplatné dané funkci. Tato odpověď je vždy kombinovaná se stavovým kódem HTTP protokolu 200 OK.
{
"success" : true,
"result" : {
...
}
}
Záporná odpověď při chybě zpracování požadavku
Tento typ odpovědi je odesílán v případě, že při zpracování požadavku dojde k chybě. Odpověď nese kód chyby (parametr code), její textový popis (parametr description) a případně upřesnění chyby (parametr param). Tato odpověď může být kombinovaná se stavovým kódem HTTP protokolu 200 OK nebo 401 Authorization Required.
{
"success" : false,
"error" : {
"code" : 12,
"param" : "port",
"description" : "invalid parameter value"
}
}
V následující tabulce jsou vyjmenovány možné kódy chyb:
Kód | Popis | |
|---|---|---|
1 | function is not supported | Požadovaná funkce není na tomto modelu dostupná. |
2 | invalid request path | Absolutní cesta specifikovaná v HTTP požadavku neodpovídá žádné z funkcí HTTP API. |
3 | invalid request method | Použitá metoda HTTP protokolu není pro danou funkci platná. |
4 | function is disabled | Funkce (příslušná služba) není povolena. Službu je potřeba povolit na stránce konfiguračního rozhraní Služby / HTTP API. |
7 | invalid connection type | Je vyžadováno HTTPS připojení. |
8 | invalid authentication method | Použitá autentizační metoda není pro danou službu povolena. Tato chyba může nastat v případě, kdy pro službu je povolena pouze autentizační metoda Digest a klient se pokouší autentizovat pomocí metody Basic. |
9 | authorization required | Pro přístup ke službě je vyžadovaná autorizace uživatele. Tato chyba je odesílána společně stavovým kódem HTTP protokolu 401 Authorization Required. |
10 | insufficient user privileges | Autentizovaný uživatel nemá dostatečná privilegia pro provedení funkce. |
11 | missing mandatory parameter | V požadavku není uveden povinný parametr. Název chybějícího parametru je uveden v položce param. |
12 | invalid parameter value | Hodnota jednoho z parametrů požadavku není platná. Název neplatného parametru je uveden v položce param. |
13 | parameter data too big | Data parametru překračují maximální povolenou velikost. Název chybného parametru je uveden v položce param. |
14 | unspecified processing error | Nastala nespecifikovaná chyba při zpracování požadavku. |
| 15 | no data available | Server nemá k dispozici požadovaná data. |
| 17 | parameter shouldn't be present | Kolize parametrů (není možné napsat danou kombinaci parametrů). |
| 18 | request is rejected | Požadavek nelze nyní zpracovat a byl zařízením odmítnut. |
| 19 | file version is lower than minimum | Zadaná verze souboru je nižší, než je požadováno. |
