Dokumentace API – Hledání úřadů
Toto je popis starší verze služby pro hledání úřadů. Doporučujeme používat aktuální verzi.
Webová služba pro hledání úřadů je k dispozici na adrese:
- https://secure.smartform.cz/smartform-ws/searchAuthority/v1
Vlastnosti dotazu
Dotazy musí být posílány metodou POST. Data jsou posílána ve formátu JSON s kódováním UTF-8.
Hlavička http requestu musí obsahovat následující položky:
| název | hodnota |
|---|---|
| Content-type | application/json |
| Accept | application/json |
Struktura dotazu a odpovědi
Následuje referenční struktura dotazu a odpovědi. Objekty jsou zachyceny ve formě pseudokódu pro lepší pochopení struktury.
Dotaz
/** Dotaz pro službu searchAuthority */
class SearchAuthorityRequest
{
/** Identifikace dotazu, slouží jen pro spárování dotazu a odpovědi. */
int id;
/** Heslo - pokud jej nemáte, získáte ho v administraci na https://admin.smartform.cz */
string password;
/** Vstupní data. */
Map<InputFieldTypeSearchAuthority, string> inputData;
}
Odpověď
/** Odpověď pro službu searchAuthority */
class SearchAuthorityResponse
{
/** Identifikace odpovědi, odpovídá id dotazu */
int id;
/** Zdali vůbec proběhlo hledání v pořádku */
ResultCode resultCode;
/** Pokud došlo k nějaké chybě, popisuje k jaké */
string errorMessage;
/** Typ úřadu */
ResultTypeAuthority typeAuthority;
/** Informace o úřadu/ůřadech, které vychází z
* xml datových schránek.
* Konkrétní popis atributů v dokumentaci kapitola 2.1.4.
*/
List<AuthorityEntity> authority;
}
Další objekty
/** Typ vstupních dat */
enum InputFieldTypeSearchAuthority
{
/** Kód adresy z registru RUIAN */
RUIAN_CODE
}
/** Výsledný typ úřadu */
enum ResultTypeAuthority
{
/** Obecní úřad */
LOCAL_AUTHORITY,
/** Jiný typ úřadu */
OTHER_AUTHORITY,
/** Na jedné adrese se nachází více úřadů */
MANY_AUTHORITIES,
/** Vstupní adresa není úřadem */
NO_AUTHORITY
}
/** Výsledek dotazu. */
enum ResultCode
{
/** Volání service proběhlo v pořádku. */
OK,
/** Při volání service došlo k chybě. */
FAIL
}
Tabulka typů v pseudokódu
| typ v pseudokódu | typ v JSON |
|---|---|
| třída (class) | vnořený objekt |
| výčet (enum) | řetězec se jménem vybrané položky |
| List | pole |
| Map | objekt – klíče a hodnoty se stanou položkami objektu |
| string | řetězec |
| int | číslo |
| double | číslo |
| boolean | boolean |
| char (jeden znak) | řetězec |