Find a parcel
Users rarely know an EGiB id. The API meets them where they are.
From an address
curl "https://api.zonio.tech/v1/geocode?q=Kraków,%20Wielicka%20250" \
-H "Authorization: Bearer $ZONIO_API_KEY"[
{ "label": "Wielicka 250, Kraków", "lng": 19.9922, "lat": 50.0179, "parcel_id": "126103_1.0053.214/9" }
]Addresses are matched against PRG, the national address register. Each hit is resolved to the parcel at that point.
From a click on a map
curl "https://api.zonio.tech/v1/parcels/at?lng=19.9922&lat=50.0179" \
-H "Authorization: Bearer $ZONIO_API_KEY"If the point falls on a road or a gap between parcels, the nearest parcel within 200 m is returned.
From a parcel number
Sellers and notaries quote "działka 214/9, obręb 53, Podgórze". Autocomplete matches any fragment of the id:
curl "https://api.zonio.tech/v1/parcels/autocomplete?q=0053.214" \
-H "Authorization: Bearer $ZONIO_API_KEY"From a description
When the user describes the land rather than a specific plot, use plain-language search:
curl https://api.zonio.tech/v1/search/natural-language \
-H "Authorization: Bearer $ZONIO_API_KEY" -H "Content-Type: application/json" \
-d '{"query": "the big empty plot next to the Wieliczka salt mine car park"}'From a list
Importing a spreadsheet of ids from a land register extract? Fetch up to 500 at once:
curl https://api.zonio.tech/v1/parcels/batch \
-H "Authorization: Bearer $ZONIO_API_KEY" -H "Content-Type: application/json" \
-d '{"parcel_ids": ["126103_1.0053.214/9", "126103_1.0053.215/1"], "include": ["regulations"]}'Ids that don't exist come back in missing, so you can flag typos to the user.