# Uzum — 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.

> Browse and search products across Uzum.uz marketplace categories, view detailed product information with customer reviews, and discover seller profiles and their product listings. Get real-time access to marketplace data including category organization, product details, pricing, and seller ratings all in one place.

**Category:** Marketplaces | **Website:** [uzum.uz/](https://uzum.uz/) | **Docs:** [parse.bot/marketplace/b6da2db8-185b-4806-ae45-2f7554a08363/uzum-uz-api](https://parse.bot/marketplace/b6da2db8-185b-4806-ae45-2f7554a08363/uzum-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-uzum-uz-api-b6da2db8/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_categories

Retrieve the full category tree from the Uzum catalog. Returns all top-level categories with nested children arrays containing subcategories and product counts. Categories are hierarchical - each top-level category has children which may have their own children.

**Estimated cost:** Metered

_No parameters required._

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

### get_category_products

Fetch paginated product listings for a specific category via GraphQL. Returns product catalog cards with product ID, title, pricing, rating, and feedback count. Use category IDs from get_categories results. Pagination is offset-based.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | Yes | Category ID from get_categories results (e.g. '2894' for Mebel, '10020' for Elektronika) |
| `limit` | integer | No | Max results per page |
| `offset` | integer | No | Pagination offset (number of items to skip) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/get_category_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","limit":"<integer>","offset":"<integer>"}'
```

### get_product_details

Retrieve detailed product information by product ID via GraphQL. Returns full product data including title, HTML description, category, rating, feedback and order counts, pricing in UZS tiyin, seller info (id, title, rating), photo URLs, SKU list with availability and pricing, and product characteristics.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | Product ID from search or category listings (e.g. '2692611') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/get_product_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>"}'
```

### get_product_reviews

Fetch customer reviews for a product by ID with pagination via GraphQL. Returns feedback entries with rating (1-5), customer name, content text, pros, cons, and publication dates as Unix timestamps in milliseconds. Offset is converted to page internally (page = offset / limit).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of reviews per page |
| `offset` | integer | No | Pagination offset (converted to page internally: page = offset / limit) |
| `product_id` | string | Yes | Product ID |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/get_product_reviews \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","product_id":"<string>"}'
```

### get_seller_info

Fetch detailed seller/shop profile data by seller URL slug. Returns seller profile including numeric ID, title, banner/avatar images, description, rating, review count, order count, registration date (Unix timestamp in ms), and legal info. The seller ID from this response is needed to call get_seller_products.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `seller_slug` | string | Yes | Seller URL slug (e.g. 'world', 'uzum-market') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/get_seller_info \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"seller_slug":"<string>"}'
```

### get_seller_products

Fetch paginated product listings for a specific seller by their numeric shop ID via GraphQL. Returns product catalog cards with product ID, title, and pricing. The seller_id is obtained from get_seller_info response field 'id'.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page |
| `offset` | integer | No | Pagination offset (number of items to skip) |
| `seller_id` | string | Yes | Numeric shop/seller ID obtained from get_seller_info response field 'id' |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/get_seller_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","seller_id":"<string>"}'
```

### search_products

Search for products by keyword via the Uzum GraphQL API. Returns product catalog cards with product ID, title, pricing (min sell and full price in UZS tiyin), rating, feedback count, and photo links. Pagination is offset-based; offset and limit control which slice of results to fetch.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page |
| `offset` | integer | No | Pagination offset (number of items to skip) |
| `query` | string | Yes | Search keyword |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-uzum-uz-api-b6da2db8/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","query":"<string>"}'
```
