Njuskalo APInjuskalo.hr ↗
Access structured listings from Njuskalo.hr, Croatia's largest classifieds site. Search cars, apartments, and electronics with price, location, and size data.
What is the Njuskalo API?
The Njuskalo.hr API provides 3 endpoints that return structured classified listings from Croatia's largest ads marketplace, covering used cars, residential real estate, and consumer electronics. The search_real_estate endpoint, for example, returns per-listing fields including price_eur, size_m2, and price_per_m2 for apartments across five major Croatian cities. All endpoints support pagination and return a consistent listing schema with title, location, description, and date metadata.
curl -X GET 'https://api.parse.bot/scraper/fdf29cfa-4331-44cc-a765-c05611350bcf/search_cars?page=1&query=BMW+3&min_price=1500' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace njuskalo-hr-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.njuskalo_scraper_api import Njuskalo, Listing, City
client = Njuskalo()
# Search for used cars
for listing in client.listings.search_cars(query="BMW 3", min_price=5000, limit=5):
print(listing.title, listing.price_eur, listing.date_info)
# Search for apartments in Split
for listing in client.listings.search_real_estate(city=City.SPLIT, limit=3):
print(listing.title, listing.size_m2, listing.price_per_m2)
# Search for electronics
for listing in client.listings.search_electronics(model="Samsung Galaxy S24", limit=3):
print(listing.title, listing.price_eur, listing.link)
Search for used car listings on Njuskalo.hr by keyword query with optional price filtering. Returns paginated results including title, price, location, and description. Uses the site's general search filtered by minimum price.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| query | string | Search keywords for car listings. |
| min_price | integer | Minimum price filter in EUR. |
{
"type": "object",
"fields": {
"page": "string, the page number returned",
"count": "integer, number of listings on this page",
"query": "string, the search query used",
"listings": "array of listing objects with id, title, link, price_eur, size_m2, price_per_m2, location, description, date_info",
"min_price": "string, the minimum price filter applied"
},
"sample": {
"data": {
"page": "1",
"count": 37,
"query": "BMW 3",
"listings": [
{
"id": "50678153",
"link": "https://www.njuskalo.hr/auti/bmw-serija-3-320d-m-paket-vozilo-sustavu-pdv-a-oglas-50678153",
"title": "BMW serija 3 320d M paket (vozilo u sustavu PDV-a)",
"size_m2": null,
"location": "",
"date_info": "Objavljen:09.06.2026.",
"price_eur": 29900,
"description": "Rabljeno vozilo, 129.224 km",
"price_per_m2": null
}
],
"min_price": "1500"
},
"status": "success"
}
}About the Njuskalo API
Endpoints and Coverage
The API exposes three category-specific search endpoints: search_cars, search_real_estate, and search_electronics. Each returns an array of listings objects plus top-level metadata (page, count, and the filter values applied). Every listing includes id, title, link, price_eur, location, description, and date_info, making it straightforward to display or store results without additional parsing.
Cars and Electronics Search
search_cars accepts a free-text query string and an optional min_price integer (in EUR) to filter results by floor price. search_electronics works similarly, taking a model string — for example "iPhone 15" or "Samsung Galaxy S24" — and returning matching listings with pricing and location. Both endpoints support a page integer for paginating through result sets beyond the first page.
Real Estate Search
search_real_estate is scoped to apartment listings for sale and accepts a city parameter constrained to five values: zagreb, split, rijeka, osijek, and zadar. Alongside the standard listing fields, the response includes size_m2 and price_per_m2 when Njuskalo publishes that data — useful for per-city price-per-square-meter analysis. The top-level city and page fields confirm which filter combination produced the result set.
Response Shape and Pagination
All three endpoints return page as a string and count as an integer reflecting listings on the current page. Pagination is controlled by incrementing the page input; there is no cursor or offset alternative. The listings array structure is uniform across endpoints, though size_m2 and price_per_m2 are most relevant to real estate and may be null or absent in car and electronics results.
The Njuskalo API is a managed, monitored endpoint for njuskalo.hr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when njuskalo.hr changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official njuskalo.hr API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track EUR price trends for specific used car models across Croatian classifieds using
search_carswith a keyword query. - Build a Zagreb apartment price index by iterating
search_real_estatepages and aggregatingprice_per_m2values. - Monitor iPhone or Android phone resale prices in Croatia via
search_electronicswith specific model queries. - Compare real estate asking prices across Split, Rijeka, and Zadar by running
search_real_estatefor each city. - Alert buyers when new listings matching a car query drop below a
min_pricethreshold. - Aggregate location-level listing density by grouping
locationfields returned across paginated results.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Njuskalo.hr have an official developer API?+
Which cities are supported by the real estate endpoint?+
search_real_estate accepts five city values: zagreb, split, rijeka, osijek, and zadar. Listings in other Croatian cities or municipalities are not currently covered by this endpoint. You can fork this API on Parse and revise it to add additional city values or regions.Does the API cover rental listings or only properties for sale?+
search_real_estate returns apartment listings for sale only. Rental listings are not covered by any existing endpoint. You can fork this API on Parse and revise it to add a rental-focused real estate endpoint.Are `size_m2` and `price_per_m2` fields available in car and electronics results?+
search_cars and search_electronics results, they will typically be null or absent, as Njuskalo does not publish size or per-square-meter data for those categories.Is it possible to filter car listings by make, model, year, or mileage?+
search_cars supports filtering by free-text query and min_price only. Structured filters like make, model year, or odometer range are not currently exposed. You can fork this API on Parse and revise it to add those filter parameters.