# Olx (Uzbekistan) — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search and browse product listings on OLX.uz across all categories, with full details including specifications, location, and pricing. Compare prices and product information to identify the best available deals.

**Category:** Marketplaces | **Website:** [olx.uz/](https://olx.uz/) | **Docs:** [parse.bot/marketplace/3146a97f-95e1-4c92-94e5-9ff1bd4dcfab/olx-uz-api](https://parse.bot/marketplace/3146a97f-95e1-4c92-94e5-9ff1bd4dcfab/olx-uz-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-olx-uz-api-3146a97f/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_categories

Get a flat list of all enabled category IDs on OLX.uz. Returns numeric IDs without names. Use category_id 80 for laptops.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-olx-uz-api-3146a97f/get_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_listing_details

Get full details for a specific listing by its ID. Returns comprehensive information including description, photos, seller info, location coordinates, and all parameters. When the seller has enabled phone visibility, the real phone number is fetched via the friction challenge flow and returned as a top-level field. Listing IDs have limited validity; expired listings return a stale_input error with kind input_not_found.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | Numeric listing ID obtained from search_listings results (e.g. '65599811'). Listings expire over time. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-olx-uz-api-3146a97f/get_listing_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>"}'
```

### search_listings

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. Paginates via offset; use limit and offset together for manual page control.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | integer | No | Category ID to search within. Use get_categories endpoint to discover valid IDs. 80 is laptops. |
| `limit` | integer | No | Max results to return per page. |
| `offset` | integer | No | Pagination offset (number of items to skip). |
| `price_max` | integer | No | Maximum price filter in UZS (Uzbekistani som). Typical laptop prices range from 1,000,000 to 15,000,000 UZS. |
| `price_min` | integer | No | Minimum price filter in UZS (Uzbekistani som). |
| `query` | string | No | Search keyword (e.g. 'laptop', 'MacBook', 'Core i5'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-olx-uz-api-3146a97f/search_listings \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<integer>","limit":"<integer>","offset":"<integer>","price_max":"<integer>","price_min":"<integer>","query":"<string>"}'
```
