Back to top

CBAPI

API pro práci s objekty v mapovém prostředí. Veškeré dotazy jsou možné pouze z povolených IP adres.

Resource Group

LookoutTower

Práce s objekty rozhleden.

API pracuje výhradně se strukturami ve tvaru JSON řetězce a za použití UTF-8 kódování.

Pokud žádaná operace proběhne úspěšně, je vrácen HTTP kód 200. Pokud operace neproběhne úspěšně, je vrácen odpovídající kód. Ve všech případech je vrácen též platný JSON řetezec. Pokud tělo odpovědi neobsahuje platný JSON řetězec, došlo k neočekávané situaci a výsledek by neměl být použit. O takové situaci nás, prosím, informujte.

Obrázky objektů je možné získávat pomocí odkazu složeného jako: https://stceapp.phonemaps.eu/content/img/cached/lookoutTower/{Image} kde {Image} je název souboru včetně relativní cesty, jak jej vrací API. Tedy napr.: https://stceapp.phonemaps.eu/content/img/cached/lookoutTower/12/34/72443-1592291234.jpg (jde o ukázkové url, daný odkaz žádný obrázek obsahovat nemusí). API vrací názvy obrázků vždy včetně relativní cesty, tj. např.: 12/34/72443-1592291234.jpg

Get All
GET/api/lookouttowers

Získání základních údajů o všech objektech.

Popis výstupních dat (každý objekt v poli items obsahuje):

  • idLot - id objektu [int]

  • visible - má být objekt zobrazován? [0/1]

  • hideInLanguages - má být objekt v nekterém jazyce zkryt? [0/1 array]

  • latitude - zeměpisná šířka [double]

  • longitude - zeměpisná délka [double]

  • lastUpdate - datum a čast poslední změny objektu [Y-m-d H:i:s]

Example URI

GET https://stceapp.phonemaps.eu/api/lookouttowers
Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "items":[
    {
      "idLot":53,
      "visible":1,
      "hideInLanguages":[],
      "latitude":49.7585756,
      "longitude":15.0986767,
      "lastUpdate":"1000-01-01 00:00:00"
    },
    {
      "idLot":54,
      ...
    },
    ...
  ]
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}

Get Detail
GET/api/lookouttowers/{idLot}

Získání všech údajů o vybraném objektu.

Popis výstupních dat viz vložení objektu a získání základních údajů. Při získání detailu se oproti vkládání a získání základních údajů pracuje navíc s:

  • images - pole obrázků k objektu. každý záznam obsahuje název souboru a textové popisy v poli, kde klíčem je id jazyka dle číselníku jazyků

  • icon - soubor s ikonou pro zobrazení bodu na mapě

Example URI

GET https://stceapp.phonemaps.eu/api/lookouttowers/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "item": {
    "idLot": 53,
    "lastUpdate": "1000-01-01 00:00:00",
    "visible": 1,
    "hideInLanguages": [],
    "latitude": 49.7585756,
    "longitude": 15.0986767,
    "phone": "",
    "gsm": "",
    "email": "",
    "web": "",
    "title": {
      "1": "Rozhledna Babka",
      "6": "Aussichtsturm Babka",
      "7": "Lookout tower Babka",
      "9": "Wieża widokowa Babka"
    },
    "address": {
      "1": "",
      "6": "",
      "7": "",
      "9": ""
    },
    "view": {
      "1": "Zruč nad Sázavou, vrch Melechov u Ledče nad Sázavou, Velký Blaník, přehrada Želivka, Českomoravská vrchovina",
      "6": "Zruč nad Sázavou, Melechov, Velký Blaník, Želivka Damm, Českomoravská vrchovina",
      "7": "Zruč nad Sázavou, Melechov, Velký Blaník, dam Želivka, Českomoravská vrchovina",
      "9": "Zruč nad Sázavou, Melechov, Velký Blaník, zapora Želivka, Českomoravská vrchovina"
    },
    "openingHours": {
      "1": "Celoročně",
      "6": "Ganzes Jahr",
      "7": "Whole year",
      "9": "Cały rok"
    },
    "descriptionShort": {
      "1": "Dřevěná rozhledna s kovovými prvky a schodištěm se nachází v lokalitě \"Mezi cestami\" asi 2 km severně nad městem Zruč nad Sázavou směrem na Jiřice.",
      "6": "",
      "7": "A unique wooden lookout tower with metal elements is located about 2 km north from Zruč nad Sázavou, towards the village of Jiřice.",
      "9": ""
    },
    "price": {
      "1": "Zdarma",
      "6": "Kostenlos",
      "7": "Free",
      "9": "za darmo"
    },
    "weblink": {
      "1": "https://www.centralbohemia.cz/dr-cs/27027-rozhledna-babka.html",
      "6": "",
      "7": "https://www.centralbohemia.cz/dr-en/27027-lookout-tower-babka.html",
      "9": ""
    },
    "images": [
      {
        "file": "32/65/47525-1592223265.jpg",
        "title": {
          "1": "",
          "6": "",
          "7": "",
          "9": ""
        }
      }
    ],
    "icon": {
      "file": "69/57/19762-1592226957.png"
    },
    "altitude": 450,
    "numberOfStairs": 130,
    "towerHeight": 27.4
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  404
HideShow
Headers
Content-Type: application/json

Insert LookoutTower
POST/api/lookouttowers

Vložení nového objektu.

Popis vstupních dat (pouze označené údaje jsou povinné):

  • visible - viditelnost objektu [0/1]

  • latitude (povinné) - zeměpisná šířka [double]

  • longitude (povinné) - zeměpisná délka [double]

  • title (povinné) - asociativní jazykové pole názvů objektu, klíčem je id jazyka dle číselníku jazyků [string[255] array]

  • hideInLanguages - asociativní jazykové pole pro možnost zkrytí objektu v dané jazykové verzi , klíčem je id jazyka dle číselník jazyků [0/1 array]

  • address - asociativní jazykové pole adresy objektu, klíčem je id jazyka dle číselníku jazyků [string array]

  • view - asociativní jazykové pole s popisem výhledu z objektu, klíčem je id jazyka dle číselníku jazyků [string[255] array]

  • openingHours - asociativní jazykové pole s otevíracími hodinami objektu [string[40] array]

  • descriptionShort - asociativní jazykové pole s krátkým popisem objektu [string[350] array]

  • price - asociativní jazykové pole s otevíracími hodinami objektu [string[40] array]

  • weblink - asociativní jazykové pole odkazů na objekt na webu centralbohemia

  • phone - kontaktní telefon k objektu [string[20]]

  • gsm - kontaktní mobilní telefon k objektu [string[20]]

  • email - kontaktní e-mail k objektu [string[40]]

  • web - web objektu [string[255]]

  • numberOfStairs - počet schodů [int]

  • altitude - nadmořská výška [int]

  • towerHeight - výška rozhledny [float]

Pokud vložení proběhne v pořádku, je vráceno id nového objektu.

Example URI

POST https://stceapp.phonemaps.eu/api/lookouttowers
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "visible": 1,
  "latitude": 50.06,
  "longitude": 14.445,
  "title": {
    "1": "title CZ",
    "6": "title DE",
    "7": "title EN",
    "9": "title PL"
  },
  "hideInLanguages": {
    "1": 0,
    "6": 0,
    "7": 0,
    "9": 1
  },
  "address": {
    "1": "address CZ",
    "6": "address DE",
    "7": "address EN",
    "9": "address PL"
  },
  "view": {
    "1": "view CZ",
    "6": "view DE",
    "7": "view EN",
    "9": "view PL"
  },
  "openingHours": {
    "1": "openingHours CZ",
    "6": "openingHours DE",
    "7": "openingHours EN",
    "9": "openingHours PL"
  },
  "descriptionShort": {
    "1": "descriptionShort CZ",
    "6": "descriptionShort DE",
    "7": "descriptionShort EN",
    "9": "descriptionShort PL"
  },
  "price": {
    "1": "price CZ",
    "6": "price DE",
    "7": "price EN",
    "9": "price PL"
  },
  "weblink": {
    "1": "web CZ",
    "6": "web DE",
    "7": "web EN",
    "9": "web PL"
  },
  "phone": "707843724",
  "gsm": "g707843724",
  "email": "email@gmail.com",
  "web": "http://web",
  "altitude": 123,
  "numberOfStairs": 1000,
  "towerHeight": 58.7
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "idLot": 12
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Invalid input data. Problem with following: latitude",
  "errorCode": 5
}

Update LookoutTower
PUT/api/lookouttowers/{idLot}

Aktualizace existujícího objektu.

Popis vstupních dat:

  • visible - viditelnost objektu [0/1]

  • latitude - zeměpisná šířka [double]

  • longitude - zeměpisná délka [double]

  • title - asociativní jazykové pole názvů objektu, klíčem je id jazyka dle číselníku jazyků [string[255] array]

  • hideInLanguages - asociativní jazykové pole pro možnost zkrytí objektu v dané jazykové verzi , klíčem je id jazyka dle číselník jazyků [0/1 array]

  • address - asociativní jazykové pole adresy objektu, klíčem je id jazyka dle číselníku jazyků [string array]

  • view - asociativní jazykové pole s popisem výhledu z objektu, klíčem je id jazyka dle číselníku jazyků [string[255] array]

  • openingHours - asociativní jazykové pole s otevíracími hodinami objektu [string[40] array]

  • descriptionShort - asociativní jazykové pole s krátkým popisem objektu [string[350] array]

  • price - asociativní jazykové pole s otevíracími hodinami objektu [string[40] array]

  • weblink - asociativní jazykové pole odkazů na objekt na webu centralbohemia

  • phone - kontaktní telefon k objektu [string[20]]

  • gsm - kontaktní mobilní telefon k objektu [string[20]]

  • email - kontaktní e-mail k objektu [string[40]]

  • web - web objektu [string[255]]

  • numberOfStairs - počet schodů [int]

  • altitude - nadmořská výška [int]

  • towerHeight - výška rozhledny [float]

Pokud úprava proběhne v pořádku, je vráceno id upraveného objektu.

Example URI

PUT https://stceapp.phonemaps.eu/api/lookouttowers/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Body
{
  "visible": 1,
  "latitude": 50.16,
  "longitude": 14.545,
  "title": {
    "1": "title2 CZ",
    "6": "title2 DE",
    "7": "title2 EN",
    "9": "title2 PL"
  },
  "hideInLanguages": {
    "1": 1,
    "6": 1,
    "7": 1,
    "9": 0
  },
  "address": {
    "1": "address2 CZ",
    "6": "address2 DE",
    "7": "address2 EN",
    "9": "address2 PL"
  },
  "view": {
    "1": "view2 CZ",
    "6": "view2 DE",
    "7": "view2 EN",
    "9": "view2 PL"
  },
  "openingHours": {
    "1": "openingHours2 CZ",
    "6": "openingHours2 DE",
    "7": "openingHours2 EN",
    "9": "openingHours2 PL"
  },
  "descriptionShort": {
    "1": "descriptionShort2 CZ",
    "6": "descriptionShort2 DE",
    "7": "descriptionShort2 EN",
    "9": "descriptionShort2 PL"
  },
  "price": {
    "1": "price2 CZ",
    "6": "price2 DE",
    "7": "price2 EN",
    "9": "price2 PL"
  },
  "weblink": {
    "1": "web2 CZ",
    "6": "web2 DE",
    "7": "web2 EN",
    "9": "web2 PL"
  },
  "phone": "2707843724",
  "gsm": "2g707843724",
  "email": "2email@gmail.com",
  "web": "http://web2",
  "altitude": 2123,
  "numberOfStairs": 21000,
  "towerHeight": 258.7
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "idLot": 12
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Invalid input data. Problem with following: latitude",
  "errorCode": 5
}
Response  404
HideShow
Headers
Content-Type: application/json

Delete LookoutTower
DELETE/api/lookouttowers/{idLot}

Smazání existujícího objektu.

Pokud smazání proběhne v pořádku, je vráceno id již neexistujícího objektu. Obrázky k danému objektu jsou odstraněny též a v závislosti na stavu cache již nemusí být na serveru dostupné.

Example URI

DELETE https://stceapp.phonemaps.eu/api/lookouttowers/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "idLot": 12
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  404
HideShow
Headers
Content-Type: application/json

Insert / Update Image
POST/api/lookouttowers/image/{idLot}

Vložení nového obrázku nebo přepsání existujícího obrázku u existujícího objektu.

Objekt je nutné určit parametrem idLot. V těle požadavku je pak nutné předat další údaje:

  • image - base64 kódovaný obrázek ve formátu JPEG. Maximální velikost obrázku 1MB

  • title - asociativní jazykové pole názvů fotografie, klíčem je id jazyka dle číselníku jazyků [string array]

  • ? fileToUpdate - název souboru obrázku k přepsání

Atribut fileToUpdate je nepovinný a používá se pouze v situaci, kdy je cílem přepsat již existující obrázek. Pokud je cílem vložit obrázek nový, atribut do těla požadavku neumísťujte.

Pokud vložení / přepsání proběhne v pořádku, je vráceno jméno souboru uloženého obrázku.

Example URI

POST https://stceapp.phonemaps.eu/api/lookouttowers/image/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request  to insert
HideShow
Headers
Content-Type: application/json
Body
{
  "image": "TG9yZW0gaXBz ... HDFmWk=",
  "title": {
    "1": "title CZ",
    "6": "title DE",
    "7": "title EN",
    "9": "title PL"
  }
}
Request  to update
HideShow
Headers
Content-Type: application/json
Body
{
  "image": "TG9yZW0gaXBz ... HDFmWk=",
  "title": {
    "1": "title CZ",
    "6": "title DE",
    "7": "title EN",
    "9": "title PL"
  },
  "fileToUpdate": "12/34/72443-1592291234.jpg"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "file": "12/34/72443-1592291234.jpg"
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Invalid input data. Problem with following: fileToUpdate",
  "errorCode": 5
}
Response  404
HideShow
Headers
Content-Type: application/json

Delete Image
DELETE/api/lookouttowers/image/{idLot}

Smazání obrázku u existujícího objektu.

Objekt je nutné určit parametrem idLot a jeho obrázek ke smazání pak v těle požadavku názvem souboru včetne relativní cesty v atributu file.

Pokud smazání proběhne v pořádku, je vráceno jméno již neexistujícího souboru. Obrázek je odstraněn a v závislosti na stavu cache již nemusí být na serveru dostupný.

Example URI

DELETE https://stceapp.phonemaps.eu/api/lookouttowers/image/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Body
{
  "file": "12/34/72443-1592291234.jpg"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "file": "12/34/72443-1592291234.jpg"
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  404
HideShow
Headers
Content-Type: application/json

Insert / Update Icon
POST/api/lookouttowers/icon/{idLot}

Vložení nové nebo přepsání existující ikonky u existujícího objektu. Ikonka objektu se používá při zobrazení jejího bodu nad mapou.

Pokud objekt neměl ikonku, je vložena nová. Pokud objekt ikonku již měl, je stará ikonka přepsána.

Objekt je nutné určit parametrem idLot. V těle požadavku je pak nutné předat další údaje:

  • image - base64 kódovaný obrázek ve formátu PNG. Maximální velikost obrázku je 100KB.

Pokud vložení / přepsání proběhne v pořádku, je vráceno jméno souboru uloženého obrázku.

Example URI

POST https://stceapp.phonemaps.eu/api/lookouttowers/icon/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Body
{
  "image": "TG9yZW0gaXBz ... HDFmWk=",
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "file": "12/34/72443-1592291234.png"
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  404
HideShow
Headers
Content-Type: application/json
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Image file not valid PNG.",
  "errorCode": 13
}

Delete Icon
DELETE/api/lookouttowers/icon/{idLot}

Smazání ikonky u existujícího objektu.

Objekt je nutné určit parametrem idLot.

Pokud smazání proběhne v pořádku, je vráceno jméno již neexistujícího souboru. Obrázek je odstraněn a v závislosti na stavu cache již nemusí být na serveru dostupný.

Example URI

DELETE https://stceapp.phonemaps.eu/api/lookouttowers/icon/idLot
URI Parameters
HideShow
idLot
number (required) 

id objektu

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "result": {
    "file": "12/34/72443-1592291234.jpg"
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "errorMessage": "Access denied.",
  "errorCode": 15
}
Response  404
HideShow
Headers
Content-Type: application/json

Generated by aglio on 07 Dec 2020