Quick start
Three examples you can run right now from a terminal. No registration, no key.
$ curl https://mt.inovexlabs.com/en/api/v1/stays?city=Beograd
$ curl https://mt.inovexlabs.com/en/api/v1/events?type=festival
$ curl https://mt.inovexlabs.com/en/api/v1/stats
Endpoints
| Method | URL | Description | Action |
|---|---|---|---|
| GET | /api/v1 | Returns the list of all endpoints, version and licence. | Open in browser → |
| GET | /api/v1/places | All tourist places (monasteries, fortresses, cities, etno-villages…). Filter by category and region. | Open in browser → |
| GET | /api/v1/stays | Accommodation with price, capacity and rating. Filter by type, city, region. | Open in browser → |
| GET | /api/v1/tours | Guided tours with duration, difficulty and per-person price. Filter: type, starts_in. | Open in browser → |
| GET | /api/v1/events | Festivals, concerts, sport and cultural events. Filter: type, city, region. | Open in browser → |
| GET | /api/v1/news | Announcements, advisories, partnerships and EU funding news. Title/summary in current locale. | Open in browser → |
| GET | /api/v1/stats | Headline KPIs, region distribution, top source countries, Smart Tourism Score. Same numbers as /stats. | Open in browser → |
| GET | /api/v1/regions | Serbia's 6 statistical macro-regions with names in all 4 supported languages. | Open in browser → |
Service descriptor
Returns the list of all endpoints, version and licence.
Query parameters
No parameters.
Sample response
{
"name": "Smart Serbia Travel — Open Tourism Data API",
"version": "1.0",
"license": "CC-BY-4.0",
"endpoints": {
"places": "https://mt.inovexlabs.com/en/api/v1/places",
"stays": "https://mt.inovexlabs.com/en/api/v1/stays",
"tours": "https://mt.inovexlabs.com/en/api/v1/tours",
"events": "https://mt.inovexlabs.com/en/api/v1/events",
"news": "https://mt.inovexlabs.com/en/api/v1/news",
"stats": "https://mt.inovexlabs.com/en/api/v1/stats",
"regions": "https://mt.inovexlabs.com/en/api/v1/regions"
}
}
Places
All tourist places (monasteries, fortresses, cities, etno-villages…). Filter by category and region.
Query parameters
| Name | Type | Description |
|---|---|---|
category |
string | monastery | fortress | park | ethno_village | spa | gastro | archaeological | city | mosque | catholic_church | synagogue |
region |
string | belgrade | vojvodina | sumadija | western | eastern | southern |
Sample response
{
"count": 1,
"license": "CC-BY-4.0",
"data": [
{
"id": 7,
"slug": "manastir-studenica",
"name": "Manastir Studenica",
"category": "monastery",
"region": "western",
"lat": 43.4861,
"lng": 20.5325,
"unesco": true,
"year_founded": 1190,
"photo_url": "https://example.com/assets/img/places/studenica.jpg",
"detail_url": "https://example.com/sr/places/manastir-studenica"
}
]
}
Stays
Accommodation with price, capacity and rating. Filter by type, city, region.
Query parameters
| Name | Type | Description |
|---|---|---|
type |
string | apartment | etno_village | hotel | cabin | guesthouse |
city |
string | e.g. Beograd, Novi Sad, Zlatibor |
region |
string | belgrade | vojvodina | sumadija | western | eastern | southern |
Sample response
{
"count": 1,
"license": "CC-BY-4.0",
"data": [
{
"id": 12,
"slug": "apartman-savamala",
"name": "Apartman Savamala",
"type": "apartment",
"city": "Beograd",
"region": "belgrade",
"lat": 44.8125,
"lng": 20.454,
"price_per_night": 78,
"currency": "EUR",
"max_guests": 4,
"bedrooms": 2,
"bathrooms": 1,
"rating_avg": 4.7,
"rating_count": 142,
"amenities": [
"wifi",
"kitchen",
"aircon"
],
"photo_url": "https://example.com/assets/img/stays/savamala.jpg",
"detail_url": "https://example.com/sr/stays/apartman-savamala"
}
]
}
Tours
Guided tours with duration, difficulty and per-person price. Filter: type, starts_in.
Query parameters
| Name | Type | Description |
|---|---|---|
type |
string | walking | day_trip | multi_day | wine | adventure | cultural |
starts_in |
string | starting city, e.g. Beograd |
Sample response
{
"count": 1,
"license": "CC-BY-4.0",
"data": [
{
"id": 4,
"slug": "beograd-walking",
"name": "Beograd — old town walking tour",
"type": "walking",
"starts_in": "Beograd",
"duration_hours": 3,
"duration_days": 0,
"difficulty": "easy",
"group_max": 12,
"price_per_person": 18,
"currency": "EUR",
"languages": [
"en",
"sr",
"de"
],
"rating_avg": 4.8,
"rating_count": 87,
"meeting_point": "Knez Mihailova 1",
"includes": [
"Local guide",
"Coffee stop"
],
"photo_url": "https://example.com/assets/img/tours/beograd-walking.jpg",
"detail_url": "https://example.com/sr/tours/beograd-walking"
}
]
}
Events
Festivals, concerts, sport and cultural events. Filter: type, city, region.
Query parameters
| Name | Type | Description |
|---|---|---|
type |
string | concert | festival | sport | cultural | food |
city |
string | e.g. Guča, Novi Sad, Beograd |
region |
string | belgrade | vojvodina | sumadija | western | eastern | southern |
Sample response
{
"count": 1,
"license": "CC-BY-4.0",
"data": [
{
"id": 9,
"slug": "exit-festival-2026",
"name": "EXIT Festival 2026",
"type": "festival",
"city": "Novi Sad",
"region": "vojvodina",
"venue": "Petrovaradinska tvrđava",
"starts_at": "2026-07-09 20:00:00",
"ends_at": "2026-07-12 06:00:00",
"lat": 45.2519,
"lng": 19.8635,
"price_from": 8900,
"currency": "RSD",
"capacity": 50000,
"has_tickets": true,
"is_free": false,
"external_url": "https://exitfest.org",
"photo_url": "https://example.com/assets/img/events/exit.jpg",
"detail_url": "https://example.com/sr/events/exit-festival-2026"
}
]
}
News
Announcements, advisories, partnerships and EU funding news. Title/summary in current locale.
Query parameters
| Name | Type | Description |
|---|---|---|
category |
string | announcement | advisory | funding | event | partnership | update |
importance |
string | low | normal | high | critical |
Sample response
{
"count": 1,
"license": "CC-BY-4.0",
"locale": "en",
"data": [
{
"id": 3,
"slug": "horizon-europe-2026",
"category": "funding",
"importance": "high",
"pinned": true,
"published_at": "2026-04-12 09:00:00",
"source": "Tourism Organisation of Serbia",
"title": "€3.1M Horizon Europe grant awarded",
"summary": "Sustainable mountain tourism project (Tara/Kopaonik) receives multi-year funding…",
"locale": "en",
"detail_url": "https://example.com/en/news/horizon-europe-2026"
}
]
}
Statistics
Headline KPIs, region distribution, top source countries, Smart Tourism Score. Same numbers as /stats.
Query parameters
No parameters.
Sample response
{
"period": "2026-YTD",
"kpi": {
"arrivals_ytd": 2847392,
"avg_nights": 3.2,
"occupancy_pct": 67.8,
"revenue_eur_billion": 2.1,
"smart_tourism_score": 78
},
"visitors_by_region": {
"belgrade": {
"share_pct": 28.4,
"count": 808410
},
"vojvodina": {
"share_pct": 19.2,
"count": 546699
},
"...": "..."
},
"eu_projects_active": 4,
"eu_funding_total_eur_million": 18,
"updated_at": "2026-05-10T12:00:00+02:00"
}
Regions
Serbia's 6 statistical macro-regions with names in all 4 supported languages.
Query parameters
No parameters.
Sample response
{
"count": 6,
"license": "CC-BY-4.0",
"data": [
{
"code": "belgrade",
"name_sr": "Beograd",
"name_en": "Belgrade",
"name_de": "Belgrad",
"name_ru": "Белград"
},
"..."
]
}
Use cases
Build a travel app
Indie developers can build alternative clients for Serbia using the same data as the official app.
Display live availability
Tourism board sites can pull live stay inventory and events without maintaining their own database.
Tourism research
Universities and think-tanks get structured KPIs for seasonal patterns, region mix and source-country composition.
Government open-data integration
data.gov.rs and similar portals can redistribute the feeds under the same CC-BY-4.0 — fulfilling EU Open Data Directive obligations.
Rate limits & fair use
v1 has no strict rate-limit. Please respect fair use (60 requests/min per IP soft cap). A future v2 will introduce optional API keys for partners that need higher quotas and webhook callbacks.
License & attribution
All data is published under the Creative Commons Attribution 4.0 International (CC-BY-4.0) licence. Free to reuse, remix and redistribute — provided you credit "Smart Serbia Travel" with a link back to the platform.
EU smart-tourism context
This API is part of a platform aligned with EU Tourism Data Spaces, DEPLOYTOUR and the Smart Tourism Capital award. See /eu-tourism for the full programme overview.