Public API description
This page documents only the public read and search endpoints for objects.
Endpoints for adding or editing objects, uploading images, and other write operations are intentionally excluded.
General information
All examples below use the base URL for the active language:
https://lipseesti.ee/eng/
GET full region tree
Returns the hierarchical tree of counties, municipalities, and settlements used by the object search region filter.
Request
GET https://lipseesti.ee/eng/units/getFullRegionTree
Response
[
{
"id": "0039",
"text": "Harju maakond",
"children": [
{
"id": "0784",
"text": "Tallinn",
"children": [
{
"id": "0468",
"text": "Kesklinn"
}
]
}
]
}
]
GET object by ID
Returns the details of a single published object by object ID.
Request
GET https://lipseesti.ee/eng/objects/getObjectDataById/174
Response
{
"id": 9182,
"object_id": 174,
"name": "Tallinna Sotsiaal- ja Tervishoiuamet",
"address": "Paldiski mnt 48a",
"lat": "59.431333127797",
"lon": "24.711095884446",
"website": "https://www.tallinn.ee/",
"phone": "6457440",
"email": "sotsiaal@tallinnlv.ee",
"published_date": "2024-10-12 09:34:17",
"description": {
"value": "Objekti kirjeldus"
},
"components": [],
"image_files": [],
"video_links": [],
"accessibilities": [],
"object_categories": [],
"linked_objects": [],
"comments_allowed": true,
"suggestions_allowed": true
}
GET object by GIS ID
Returns the basic object data by GIS ID. This endpoint is used in map views.
Request
GET https://lipseesti.ee/eng/objects/getObjectDataByGisId/6ecf0a56-6b5c-4b6c-8d8c-123456789abc
Response
{
"object_id": 174,
"name": "Tallinna Sotsiaal- ja Tervishoiuamet",
"address": "Paldiski mnt 48a",
"lat": "59.431333127797",
"lon": "24.711095884446",
"website": "https://www.tallinn.ee/",
"phone": "6457440",
"email": "sotsiaal@tallinnlv.ee"
}
POST object search
Returns filtered objects. This endpoint is used mainly in map and popup views.
Request
POST https://lipseesti.ee/eng/objects/getObjectsBySearch
{
"search": "raamatukogu",
"filter": {
"categories": [163],
"subCategories": [175],
"groups": [48],
"accessibilities": [49],
"properties": [321],
"regions": ["0037", "0784"],
"addresses": [
{
"county": "0037"
}
],
"isElectionObject": false,
"limit": 50,
"useSession": false
}
}
JSON response
[
{
"object_id": 174,
"name": "Tallinna Sotsiaal- ja Tervishoiuamet",
"address": "Paldiski mnt 48a",
"lat": "59.431333127797",
"lon": "24.711095884446",
"object_categories": [],
"accessibilities": []
}
]
HTML popup response
When responseType: "HTML" is sent, the endpoint returns an HTML card for a single matched object.
{
"search": null,
"responseType": "HTML",
"filter": {
"gisId": "6ecf0a56-6b5c-4b6c-8d8c-123456789abc"
}
}
POST map object search
Returns object GIS IDs for map rendering. This endpoint is used by the object search map view and the municipality map.
Request
POST https://lipseesti.ee/eng/objects/getMapObjectsBySearch
{
"search": "",
"filter": {
"categories": [],
"subCategories": [],
"groups": [],
"accessibilities": [],
"properties": [],
"addresses": [
{
"county": "0039"
}
],
"regions": ["0039"],
"isElectionObject": false
},
"page": 1,
"perPage": 24
}
Response
[
{
"gis_id": "6ecf0a56-6b5c-4b6c-8d8c-123456789abc"
}
]
POST paginated object search
Returns paginated search results together with pagination metadata. This is the main endpoint for the public object list.
Request
POST https://lipseesti.ee/eng/objects/getObjectsBySearchFull
{
"search": "",
"filter": {
"categories": [],
"subCategories": [],
"groups": [],
"accessibilities": [],
"properties": [],
"addresses": [
{
"county": "0039"
}
],
"regions": ["0039"],
"isElectionObject": false,
"search": ""
},
"page": 1,
"perPage": 24,
"responseType": "html"
}
JSON response
{
"items": [
{
"object_id": 174,
"name": "Tallinna Spordihoone",
"address": "Näide 1",
"image_files": [],
"has_video": false
}
],
"total": 138,
"page": 1,
"perPage": 24,
"totalPages": 6
}
HTML response
When responseType: "html" is sent, the endpoint returns HTML fragments together with pagination metadata.
{
".object-search__results": "<article>...</article>",
".object-search__pagination": "<nav>...</nav>",
"paginationData": {
"total": 138,
"page": 1,
"perPage": 24,
"totalPages": 6
}
}
POST category counts
Returns result counts for categories and subcategories based on the currently active filters.
Request
POST https://lipseesti.ee/eng/objects/objectsAmountForCategories
{
"search": "ujula",
"filter": {
"categories": [166],
"subCategories": [],
"groups": [],
"accessibilities": [],
"properties": [],
"regions": ["0037"],
"addresses": [],
"search": "ujula"
}
}
Response
{
"categories": [
{ "id": 166, "count": 12 }
],
"subCategories": [
{ "id": 203, "count": 4 }
]
}
GET object classifiers
Returns the classifiers used by search: categories, subcategories, target groups, properties, and accessibility groups.
Request
GET https://lipseesti.ee/eng/classifiers/getObjectCategories
Response
{
"objectCategories": [
{
"id": 163,
"name": "Ametiasutused",
"icon_path": "authorities",
"subCategories": [
{
"id": 175,
"name": "Sotsiaalasutused"
}
]
}
],
"groups": [],
"properties": [],
"accessibilityGroups": []
}