# Takealot — 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 for products and retrieve detailed information including customer reviews from Takealot, South Africa's largest online retailer. Access comprehensive product details, pricing, and customer feedback to make informed shopping decisions.

**Category:** E-commerce | **Website:** [takealot.com/](https://takealot.com/) | **Docs:** [parse.bot/marketplace/f158b273-9f5b-4613-a242-7175335a952c/takealot-com-api](https://parse.bot/marketplace/f158b273-9f5b-4613-a242-7175335a952c/takealot-com-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-takealot-com-api-f158b273/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_product

Get full product details by product ID. Returns comprehensive information including title, description HTML, pricing, images, product attributes, category breadcrumbs, variant selectors, and review rating distribution.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | Takealot product ID, numeric (e.g. '95575799') or prefixed (e.g. 'PLID95575799'). Obtainable from search_products results. |

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

### get_reviews

Get paginated customer reviews for a product. Supports sorting by helpfulness or recency, and filtering by star rating. Returns 10 reviews per page with review text, rating, author name, date, time after purchase, helpfulness upvotes, and variant info.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (1-indexed). 10 reviews per page. |
| `product_id` | string | Yes | Takealot product ID, numeric (e.g. '95575799') or prefixed with PLID (e.g. 'PLID95575799'). Obtainable from search_products results. |
| `rating` | string | No | Filter reviews by star rating (1-5). Omit to show all ratings. |
| `sort` | string | No | Sort order for reviews. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-takealot-com-api-f158b273/get_reviews \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","product_id":"<string>","rating":"<string>","sort":"<string>"}'
```

### search_products

Search for products on Takealot by keyword. Returns paginated results with product summaries including price, rating, brand, and stock availability. Pagination is offset-based via the page parameter. Each page returns up to `limit` products.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of products to return per page. |
| `page` | integer | No | Page number for pagination (1-indexed). |
| `query` | string | Yes | Search query string (e.g. 'headphones', 'samsung tv', 'running shoes'). |
| `sort` | string | No | Sort order for search results. |

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