# Product search API

2 endpoints on 2 platforms return the same Product object. The products that match a keyword. A call costs from $0.0020 to $0.0200, each endpoint at its own price; a failed call is free.

## Product search on each platform

| Platform | Endpoint | Path | A page | Returns | Price |
| --- | --- | --- | --- | --- | --- |
| TikTok | [TikTok Shop product search](https://dataxapi.com/apis/tiktok/shop/products/search.md) | `GET /v1/tiktok/shop/products/search` | 60 | Product list | $0.0020 / call |
| Xiaohongshu (RedNote) | [Xiaohongshu product search](https://dataxapi.com/apis/xiaohongshu/shop/products/search.md) | `GET /v1/xiaohongshu/shop/products/search` | 20 | Product list | $0.0200 / call |

Prices are the prices in force. A call that fails, or whose result is uncertain, costs nothing.

## The Product object

Every endpoint above returns these fields, with the same names and types.

| Field | Type | Description |
| --- | --- | --- |
| `id` | text | ID; pass it unchanged to the endpoints that get the product and list its reviews |
| `url` | link | Link that opens the product |
| `title` | text | Title of the product |
| `description` | text | The text of the product's description |
| `price` | amount | Current price; the lowest one when its variants are priced differently |
| `original_price` | amount | The price before the discount; null when there is none |
| `currency` | text | Currency of the prices, an ISO 4217 code |
| `images` | list of link | Addresses of the product's pictures |
| `rating` | number | Buyers' rating, out of 5 |
| `metrics.sold` | integer | Units sold |
| `metrics.reviews` | integer | Reviews |
| `shop.id` | text | Shop ID |
| `shop.name` | text | Name of the shop |

[The object's own page →](https://dataxapi.com/docs/objects/product/)

### Which platform fills which field

A field an endpoint cannot give is listed in `meta.unavailable` on every answer, so a gap is never a surprise.

| Platform | `url` | `description` | `rating` | `metrics.reviews` |
| --- | --- | --- | --- | --- |
| TikTok | available | not available | available | not available |
| Xiaohongshu (RedNote) | not available | not available | not available | not available |

## The same call on two platforms

Same parameter names, same paging, same answer. Only the path changes.

```bash
# TikTok
curl -G "https://api.dataxapi.com/v1/tiktok/shop/products/search" \
  --data-urlencode "query=yoga mat" \
  -H "Authorization: Bearer $DATAXAPI_API_KEY"

# Xiaohongshu (RedNote): one word changes
curl -G "https://api.dataxapi.com/v1/xiaohongshu/shop/products/search" \
  --data-urlencode "query=防晒霜" \
  -H "Authorization: Bearer $DATAXAPI_API_KEY"
```

### 200 · application/json

TikTok Shop product search: From a response recorded 2026-10-12 21:46 UTC. Names, text and IDs are examples, and so are the links: none is the recorded one (the page shows no one's personal data); the figures are as recorded. Long lists are cut. The request ID, cursor and balance are made up.

```jsonc
{
  "code": "ok",
  "request_id": "56d10893-6768-479f-b127-a8e6ee077873",
  "data": {
    "items": [
      {
        "id": "1750923004242032614",
        "url": "https://shop.tiktok.com/view/product/1750923004242032614",
        "title": "Yoga mat: a beginner's guide in 8 minutes",
        "price": "18.99",
        "original_price": "19.99",
        "currency": "USD",
        "images": [
          "https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/93dde11aaaba8ca57d1f~c5_720x720.jpeg"
        ],
        "rating": 4.6,
        "metrics": { "sold": 1232 },
        "shop": { "id": "1719706733287275062", "name": "Pine & Oak Home" }
      },
      // … 22 more
    ]
  },
  "page": {
    "next_cursor": null,
    "cursor_expires_at": null,
    "has_more": false,
    "returned": 23
  },
  "warnings": [],
  "meta": {
    "capability": "tiktok.shop.products.search",
    "result_status": "complete",
    "fetched_at": "2026-10-12T21:46:03.000Z",
    "cached": false,
    "replayed": false,
    "unavailable": {
      "description": "capability",
      "metrics.reviews": "capability"
    },
    "billing": {
      "amount": "0.002",
      "currency": "USD",
      "balance_after": "9.998"
    }
  }
}
```

## Ready to use

- [Products and reviews](https://dataxapi.com/skills/products/): What is selling, and what do buyers say? One run: $0.0080 · 4 calls
- [The Product object](https://dataxapi.com/docs/objects/product/): Fields 13, Endpoints that return it 5, Platforms 2

## Questions about the Product search API

### How much does it cost?

$0.0020 a call on TikTok; $0.0200 a call on Xiaohongshu (RedNote). You are charged when data comes back; a failed call costs nothing. No subscription, no monthly minimum.

### How do I get every page?

Pass `page.next_cursor` back as `cursor` until `page.has_more` is false. Each page is one call at the same price.

### Does every platform fill every field?

No. 4 of the 13 fields are missing on at least one platform; the table on this page says which. A field an endpoint cannot give is named in `meta.unavailable` on every answer, never filled with a guess.

### Do I need an account on the platform?

No. One DataXAPI key reads all 2 platforms. No platform account and no cookie.

## Other data types

[Comment replies API](https://dataxapi.com/roles/comments-replies-list/), [Hashtag posts API](https://dataxapi.com/roles/topics-posts-list/), [Trending topics API](https://dataxapi.com/roles/trends-list/), [Account profile API](https://dataxapi.com/roles/accounts-get/), [Account posts API](https://dataxapi.com/roles/accounts-posts-list/), [Comments API](https://dataxapi.com/roles/posts-comments-list/), [Post detail API](https://dataxapi.com/roles/posts-get/), [Post search API](https://dataxapi.com/roles/posts-search/), [Trending posts API](https://dataxapi.com/roles/posts-trending/), [Account search API](https://dataxapi.com/roles/accounts-search/), [Post metrics API](https://dataxapi.com/roles/posts-metrics/), [Community posts API](https://dataxapi.com/roles/communities-posts-list/), [Ad detail API](https://dataxapi.com/roles/ads-get/), [Advertiser ads API](https://dataxapi.com/roles/advertisers-ads-list/), [Advertiser search API](https://dataxapi.com/roles/advertisers-search/), [Ad library search API](https://dataxapi.com/roles/ads-search/), [Video transcript API](https://dataxapi.com/roles/transcripts-get/), [Followers API](https://dataxapi.com/roles/accounts-followers-list/), [Community profile API](https://dataxapi.com/roles/communities-get/), [Product detail API](https://dataxapi.com/roles/products-get/), [Product reviews API](https://dataxapi.com/roles/products-reviews-list/), [Creator search API](https://dataxapi.com/roles/creators-search/), [Creator profile API](https://dataxapi.com/roles/creators-get/), [Creator audience API](https://dataxapi.com/roles/creators-audience-get/), [Creator metrics API](https://dataxapi.com/roles/creators-metrics/), [Creator posts API](https://dataxapi.com/roles/creators-posts-list/), [All 21 platforms →](https://dataxapi.com/apis/)

---

Last checked 2026-10-21 11:10 UTC. Catalog revision c48ce454ae6c4c65. [HTML version](https://dataxapi.com/roles/products-search/)
