# Sayweee — 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 Asian grocery products on SayWeee.com, including detailed product information, category filtering by deals, bestsellers, and new arrivals. Find exactly what you need from their supermarket inventory with powerful search and curated shopping collections.

**Category:** Food & Dining | **Website:** [sayweee.com/](https://sayweee.com/) | **Docs:** [parse.bot/marketplace/e8fd6add-9c0e-406a-bf20-4708bbfc40a8/sayweee-com-api](https://parse.bot/marketplace/e8fd6add-9c0e-406a-bf20-4708bbfc40a8/sayweee-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-sayweee-com-api-e8fd6add/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_bestsellers

Get bestselling/trending products. Equivalent to get_category_products with category='trending'. Returns paginated results with product details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max number of products to return |
| `offset` | integer | No | Offset for pagination |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-sayweee-com-api-e8fd6add/get_bestsellers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>"}'
```

### get_category_products

Browse products within a specific category. Returns paginated results with product details including discount info. Use offset/limit for pagination.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category key: 'new', 'trending', 'meat', 'seafood', 'fruits', 'vegetables', 'sale' |
| `limit` | integer | No | Max number of products to return |
| `offset` | integer | No | Offset for pagination (number of items to skip) |

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

### get_deals

Get current deals and sale products. Equivalent to get_category_products with category='sale'. Returns paginated results with discount info.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max number of products to return |
| `offset` | integer | No | Offset for pagination |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-sayweee-com-api-e8fd6add/get_deals \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>"}'
```

### get_new_arrivals

Get newly arrived products. Equivalent to get_category_products with category='new'. Returns paginated results with product details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max number of products to return |
| `offset` | integer | No | Offset for pagination |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-sayweee-com-api-e8fd6add/get_new_arrivals \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>"}'
```

### get_product_detail

Fetch detailed information for a single product by its numeric ID. Returns name, price, image URL, and ID. The slug param improves URL accuracy but is optional.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | The unique product ID (numeric string from search_products results[*].id) |
| `slug` | string | No | The product slug for URL accuracy (e.g. 'Sekka-Premium-Japanese-Medium-Grain-Rice') |

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

### search_products

Full-text search over the SayWeee product catalog by keyword. Returns normalized product summaries (id, name, price, image_url) and a total count. Not paginated; use limit to control result count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max number of products to return |
| `query` | string | Yes | Search keyword (e.g. 'rice', 'noodles', 'tofu') |

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