Avtoelon APIavtoelon.uz ↗
Access car listings, hot deals, brands, models, and regions from avtoelon.uz via 5 structured endpoints covering the Uzbekistan auto classifieds market.
What is the Avtoelon API?
The Avtoelon.uz API provides structured access to Uzbekistan's largest car classifieds platform across 5 endpoints, returning listing data including price, year, location, and thumbnail for each vehicle. The search_car_listings endpoint lets you filter by brand, model, region, year range, and price range, while reference endpoints supply the valid aliases needed to build those queries.
curl -X GET 'https://api.parse.bot/scraper/325d769e-520a-4c55-a289-1f75b0f81283/search_car_listings?page=1&brand=chevrolet&price_currency=1' \ -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 avtoelon-uz-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.
"""Walkthrough: Avtoelon car marketplace — browse brands, models, regions, and search listings."""
from parse_apis.avtoelon_uzbekistan_car_marketplace_api import (
Avtoelon, PriceCurrency, BrandNotFound,
)
client = Avtoelon()
# List all brands available on the marketplace.
for brand in client.brands.list(limit=5):
print(brand.name, brand.alias, brand.id)
# Drill into one brand's models via sub-resource navigation.
brand = client.brands.list(limit=1).first()
if brand:
for model in brand.models.list(limit=5):
print(model.name, model.alias, model.start_year, model.end_year)
# List regions to see available geographic filters.
for region in client.regions.list(limit=5):
print(region.name, region.alias)
# Search listings with brand and price currency filter.
for listing in client.listings.search(brand="chevrolet", price_currency=PriceCurrency.USD, limit=3):
print(listing.title, listing.price_text, listing.year, listing.location)
# Get featured hot deals from the homepage.
deal = client.listings.hot_deals(limit=1).first()
if deal:
try:
print(deal.title, deal.price_text, deal.url)
except BrandNotFound as exc:
print(f"brand not found: {exc}")
print("exercised: brands.list / brand.models.list / regions.list / listings.search / listings.hot_deals")
Search for car listings by brand and optional filters. Returns promoted/featured car advertisements visible on the brand page, including title, price, year, location, and thumbnail. Paginates via page number. Filters include brand, model, region, year range, and price range.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| brand | string | Car brand alias (e.g., 'chevrolet', 'bmw', 'byd'). Use alias values from list_brands endpoint. |
| model | string | Car model alias (e.g., 'cobalt', 'gentra'). Use alias values from list_models_by_brand endpoint. |
| region | string | Region alias (e.g., 'tashkentskaya-oblast', 'samarkandskaya-oblast'). Use alias values from list_regions endpoint. |
| year_to | integer | Maximum year of manufacture. |
| price_max | integer | Maximum price. |
| price_min | integer | Minimum price. |
| year_from | integer | Minimum year of manufacture. |
| price_currency | integer | Currency for price filter: 1 for Sum, 2 for USD. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"items": "array of car listing objects with id, url, title, price_text, year, location, thumbnail_url",
"has_next": "boolean indicating if more pages exist",
"total_found": "integer count of items returned"
},
"sample": {
"data": {
"page": 1,
"items": [
{
"id": "6726233",
"url": "https://avtoelon.uz/a/show/6726233",
"year": 2024,
"title": "Тёмно-синий GAC Aion V 2024 года, КПП Автомат, в Ташкент за ~31 400 y.e. id6726233",
"location": "Ташкент",
"price_text": "~31 400 y.e.",
"thumbnail_url": "https://kluz-photos-tasinha.kcdn.online/webp/4e/4e693d42-0227-46f1-9bd6-0152544c925d/1-120x90.webp"
}
],
"has_next": false,
"total_found": 30
},
"status": "success"
}
}About the Avtoelon API
Listing Search and Hot Deals
The search_car_listings endpoint returns paginated car advertisements from avtoelon.uz. Each result includes an id, url, title, price_text, year, location, and thumbnail_url. You can narrow results using brand, model, region, year_from, year_to, price_min, and price_max filters, all of which accept alias strings (e.g. 'chevrolet', 'cobalt', 'tashkentskaya-oblast'). The has_next field tells you whether additional pages exist for the current query. The get_hot_deals endpoint returns featured listings from the homepage in the same field shape — useful for surfacing currently promoted inventory without constructing a search query.
Reference Data Endpoints
Three reference endpoints supply the controlled vocabulary needed for filtering. list_brands returns every available brand with its numeric id, URL alias, and display name — the alias goes into search_car_listings, while the id feeds list_models_by_brand. list_models_by_brand accepts a brand_id and returns each model's id, name, alias, start_year, end_year, and popular_score, giving you production-era context alongside the alias required for filtering. list_regions returns all Uzbekistan oblasts with their id, alias, and name, covering the geographic filter dimension.
Coverage and Scope
All brand, model, and region aliases are sourced directly from the avtoelon.uz search form, so the reference data stays consistent with what the search index accepts. Pagination is integer-based via the page parameter; total_found reflects the count of items returned on the current page rather than a global result count. Listings include public-facing fields — there is no access to seller contact details, full vehicle specifications, or listing description text through the current endpoints.
The Avtoelon API is a managed, monitored endpoint for avtoelon.uz — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when avtoelon.uz 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 avtoelon.uz 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 price trends for specific models (e.g. Chevrolet Cobalt) across Uzbekistan regions using search_car_listings with model and region filters
- Build a cross-brand price comparison tool for the Uzbekistan market using price_min/price_max filters
- Monitor hot deal listings on avtoelon.uz homepage via get_hot_deals to detect promotional pricing patterns
- Populate a branded car search UI with valid brand and model dropdowns from list_brands and list_models_by_brand
- Filter listings by production year range to analyze inventory age distribution across a brand's model lineup
- Aggregate regional supply data by iterating list_regions and querying search_car_listings per oblast
| 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 avtoelon.uz have an official developer API?+
What does search_car_listings return and how does pagination work?+
items, each with id, url, title, price_text, year, location, and thumbnail_url. The has_next boolean tells you whether a next page exists. Pass an integer page parameter to advance through results. total_found reflects the count of items on the current page, not a global total.Does the API return full vehicle specifications or seller contact details?+
How do I find the correct alias values for brand, model, and region filters?+
list_brands to get each brand's alias (for the brand filter) and numeric id (for list_models_by_brand). Pass that brand_id to list_models_by_brand to get model aliases. Call list_regions for region aliases. Using values outside these sets will not match listings.Does the API cover listings outside Uzbekistan or support currency conversion?+
price_text strings in the format displayed on the site — no numeric currency conversion or multi-country data is available. You can fork this API on Parse and revise it to add normalization logic for the price field.