olx.ua APIolx.ua ↗
Access OLX.ua marketplace listings via API. Search by keyword or category, retrieve pricing, seller info, location, and images across all product categories.
curl -X GET 'https://api.parse.bot/scraper/85e8a38f-8808-4d09-959c-b7a5add67b5c/search?limit=3&query=iphone&category_id=37' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for product listings on OLX.ua with various filters including keyword search, category filtering, and pagination. Returns listings with full details including price, location, seller info, and images.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results per page |
| query | string | Search keyword/phrase (e.g. 'laptop', 'iphone') |
| offset | integer | Pagination offset |
| category_id | integer | Category ID to filter results (e.g. 37 for Electronics) |
{
"type": "object",
"fields": {
"total": "integer - total number of matching listings",
"listings": "array of listing objects with id, title, description, price, url, location, user, created_at, last_refresh, has_phone_btn, emails_found, phones_found_in_desc, images"
},
"sample": {
"data": {
"total": 1000,
"listings": [
{
"id": 922078442,
"url": "https://www.olx.ua/d/uk/obyavlenie/iphone-x-64gb-prodam-ayfon-10-ID10oVIV.html",
"user": {
"id": 2094193196,
"name": "Ivan",
"created": "2026-04-30T23:38:38+03:00",
"last_seen": "2026-04-30T23:43:45+03:00",
"seller_type": null
},
"price": {
"label": "2 000 грн.",
"amount": 2000,
"currency": "UAH"
},
"title": "Iphone X 64gb",
"images": [
"https://ireland.apollo.olxcdn.com:443/v1/files/r8l50xpzqjys3-UA/image;s={width}x{height}"
],
"location": {
"city": "Рудня-Озерянська",
"region": "Житомирська область"
},
"created_at": "2026-04-30T23:43:44+03:00",
"description": "...",
"emails_found": [],
"last_refresh": "2026-04-30T23:46:18+03:00",
"has_phone_btn": true,
"phones_found_in_desc": []
}
]
},
"status": "success"
}
}About the olx.ua API
The OLX.ua API gives developers programmatic access to Ukraine's largest general classifieds marketplace through 2 endpoints. The search endpoint returns listings matched by keyword or category ID, including price, location, seller details, and image data. The get_second_hand endpoint lets you browse by category with pagination, covering major verticals like Electronics (category_id 37), Fashion (891), Home (899), and Hobby (903).
Endpoints and Parameters
The search endpoint accepts a query string (e.g. 'laptop' or 'iphone'), an optional category_id integer to narrow results to a specific vertical, and limit/offset integers for pagination. It returns a total count of matching listings plus an array of listing objects. The get_second_hand endpoint takes category_id and offset for paginating through category-level inventory without a keyword filter.
Response Shape
Both endpoints return the same listing object structure: id, title, description, price, url, location, user, created_at, last_refresh, has_phone_btn, and emails_. The location field identifies the city or region of the listing. The user field exposes seller identity. The has_phone_btn flag indicates whether a phone contact button is present on the original listing, and emails_ carries any associated contact email data.
Pagination and Filtering
Pagination across both endpoints is controlled by offset and limit. Category filtering uses integer IDs: 37 for Electronics, 891 for Fashion, 899 for Home & Garden, and 903 for Hobby & Sports. These IDs map to OLX.ua's top-level taxonomy. Using search with both query and category_id simultaneously narrows results to keyword matches within a single category.
Coverage Notes
OLX.ua is a Ukrainian-language classifieds platform serving a wide range of categories including vehicles, real estate, electronics, clothing, and household goods. The created_at and last_refresh fields allow consumers to filter for recently posted or recently updated listings, which is useful for monitoring active inventory or price trends over time.
- Track price trends for electronics on OLX.ua by polling the
searchendpoint with category_id 37 over time. - Build a price comparison tool aggregating listings for a specific product keyword across multiple Ukrainian classifieds sources.
- Monitor newly listed second-hand fashion items using
get_second_handwith category_id 891 and sorting bycreated_at. - Extract seller contact availability (phone button presence, email) for lead generation in specific product categories.
- Index OLX.ua listings by location field to map regional supply and demand for particular goods.
- Alert system that notifies users when new listings matching a keyword appear, using
totalandoffsetto detect changes. - Aggregate listing URLs and titles for SEO research into what products Ukrainian sellers actively list.
| 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 | 250 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 OLX.ua have an official developer API?+
What does the `search` endpoint return beyond the listing title and price?+
id, title, description, price, url, location, user, created_at, last_refresh, has_phone_btn, and emails_. The has_phone_btn flag tells you whether a phone contact option was present, and last_refresh indicates when the listing was last updated on the platform.Does the API support filtering by price range or city within a category?+
query keyword and category_id only — there are no dedicated min_price, max_price, or city parameters. You can fork this API on Parse and revise it to add price-range or location-based filter parameters.Are vehicle or real estate listings accessible through these endpoints?+
How fresh is the listing data returned?+
created_at and last_refresh timestamps, which reflect when the listing was originally posted and when it was most recently updated. Listings that have been taken down between fetches may still appear briefly; the last_refresh field is the best signal for recency.