olx.uz APIolx.uz ↗
Access OLX.uz listings via API. Search by keyword, price, and category. Get full specs, location, photos, and seller info for any listing ID.
curl -X GET 'https://api.parse.bot/scraper/8b3fb893-3556-4733-93f7-f37184c373dc/search_listings?limit=3&category_id=80' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for listings on OLX.uz. Returns paginated results with price, location, specifications, and deal indicators. Some listings are priced in UYE (conventional units ~USD) and some in UZS (Uzbekistani som). The price filter operates in UZS.
| Param | Type | Description |
|---|---|---|
| limit | integer | Max results to return per page. |
| query | string | Search keyword (e.g. 'laptop', 'MacBook', 'Core i5'). |
| offset | integer | Pagination offset (number of items to skip). |
| price_max | integer | Maximum price filter in UZS (Uzbekistani som). Typical laptop prices range from 1,000,000 to 15,000,000 UZS. |
| price_min | integer | Minimum price filter in UZS (Uzbekistani som). |
| category_id | integer | Category ID to search within. Use get_categories endpoint to discover valid IDs. 80 is laptops. |
{
"type": "object",
"fields": {
"items": "array of listing objects with id, title, url, price, location, specifications, photos, and deal indicators",
"limit": "integer, max results requested",
"offset": "integer, pagination offset used",
"total_count": "integer, number of items returned in this response"
},
"sample": {
"data": {
"items": [
{
"id": 64179569,
"url": "https://www.olx.uz/d/obyavlenie/noutbuk-lenova-laptop-ID4li2l.html",
"user": {
"id": 12012452,
"name": "Khojiakbar",
"last_seen": "2026-04-28T10:27:20+05:00"
},
"price": {
"label": "2 387 520 сум",
"value": 200,
"currency": "UYE",
"negotiable": true,
"converted_value": 2387520,
"converted_currency": "UZS"
},
"title": "Ноутбук Lenova Laptop",
"photos": [
"https://frankfurt.apollo.olxcdn.com:443/v1/files/2ko2orrahhvm2-UZ/image;s=600x450"
],
"location": {
"city": {
"id": 4,
"name": "Ташкент"
}
},
"created_time": "2026-04-07T11:30:00+05:00",
"specifications": {
"Состояние": "Б/у",
"Марка ноутбука": "Lenovo",
"Диагональ экрана": "15\"-15,6\""
},
"best_deal_reasons": [
"Highlighted listing",
"Top ad",
"Price is negotiable"
],
"description_preview": "Lenova notbuk 3 yil ishlatilingan\nholati yaxshi",
"is_potential_best_deal": true
}
],
"limit": 40,
"offset": 0,
"total_count": 1
},
"status": "success"
}
}About the olx.uz API
The OLX.uz API exposes 3 endpoints for searching and retrieving classified listings from Uzbekistan's largest marketplace. search_listings returns paginated results with price, location, specifications, and photos. get_listing_details delivers a full listing record including seller profile, GPS coordinates, and all product parameters. get_categories provides a flat list of all valid category IDs for scoped searches.
Searching Listings
The search_listings endpoint accepts a query string alongside optional price_min and price_max filters expressed in UZS (Uzbekistani som). Typical consumer electronics like laptops range from 1,000,000 to 15,000,000 UZS. Supply a category_id to narrow results — category 80 maps to laptops. Discover all valid category IDs from get_categories. Results are paginated via limit and offset parameters, and the response includes total_count (items returned in this page), limit, and offset for cursor management. Each item in the items array carries an id, title, url, price, location, specifications, photos, and deal indicators.
Listing Details
get_listing_details takes a numeric listing_id (obtained from search_listings results) and returns the full listing object under a data key. Fields include description, params, user, location with coordinates, photos, promotion, and contact. One important behavior: OLX.uz listings expire when sold or removed. Requests for expired IDs return a stale_input error with kind input_not_found rather than a 404, so callers should handle this error type explicitly.
Prices and Currency
OLX.uz listings carry prices in two currencies: UZS (Uzbekistani som) and UYE (a conventional unit roughly pegged to USD). The price_min and price_max filter parameters only operate in UZS. Listings priced in UYE will still appear in search results, but their prices are not directly filtered by those parameters. Applications that compare prices across listings should account for both currency codes in the returned price fields.
Categories
get_categories returns a plain array of integer category IDs with no names attached. The endpoint serves as a lookup mechanism — you get the IDs and match them against known category mappings. Category 80 (laptops) is explicitly documented. For other categories, cross-referencing with the OLX.uz site is necessary to map IDs to human-readable names.
- Monitor laptop prices on OLX.uz by querying category 80 with UZS price bounds and tracking changes over time.
- Build a price comparison tool for used electronics using
search_listingsquery andprice_min/price_maxfilters. - Aggregate real estate or vehicle listings across Uzbekistan by iterating category IDs from
get_categories. - Extract seller contact details and location coordinates from
get_listing_detailsfor geographic demand analysis. - Detect deal listings by inspecting deal indicator fields returned in
search_listingsitem objects. - Build an alerting system that checks new listings matching a keyword and surfaces items below a UZS price threshold.
- Enrich a product database with OLX.uz listing photos, descriptions, and specs via
get_listing_details.
| 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.uz have an official developer API?+
What does `get_listing_details` return and how should expired listings be handled?+
data key, including description, params, user, location (with coordinates), photos, promotion, and contact. When a listing has expired or been removed, the response contains a stale_input error with kind input_not_found. Your code should check for this error type rather than treating all non-200 responses uniformly.Does the price filter work for listings priced in UYE (conventional units)?+
price_min and price_max parameters filter in UZS only. Listings denominated in UYE will still appear in results but are not reliably filtered by those bounds. Applications doing price-based comparisons need to handle both UZS and UYE currency codes in the returned price fields.Does `get_categories` return category names alongside the IDs?+
Can I retrieve seller profile pages or a seller's full listing history?+
get_listing_details and search results via search_listings, but there is no dedicated endpoint for fetching a seller's profile or all listings by a given seller. You can fork it on Parse and revise to add a seller-based listings endpoint.