# TikTok Product Detail API

## API Information

- **API Name**: Get TikTok Shop Product Detail
- **Request Method**: POST
- **API URL**: `/open-api/v1/data`
- **Interface URI path**: `/v3/api/open/tiktok-shop/product/detail`
- **Description**: Get detailed information of TikTok shop product by product ID
- **Pricing**: Details API pricing rules: Base fee: 1 credit/request. Free access conditions (if either is met): Details for this ID have been retrieved within the past 3 days; This ID appeared in your leaderboard list query results within the past 3 days.

**Request Headers:**

- Content-Type: application/json
- Accept: application/json

### Request Parameters

#### Request Structure

| Parameter Name | Type   | Description                     | Example                                   | Required | Default |
| -------------- | ------ | ------------------------------- | ----------------------------------------- | -------- | ------- |
| key            | string | User's external API request key | "your_api_key_here"                       | Yes      |         |
| uri            | string | Interface URI path              | "/v3/api/open/tiktok-shop/product/detail" | Yes      |         |
| params         | object | Interface parameter object      | See parameter list below                  | Yes      |         |

#### Parameter List (params object)

| Parameter Name | Type   | Description                  | Example     | Required | Default |
| -------------- | ------ | ---------------------------- | ----------- | -------- | ------- |
| id             | string | Product unique identifier ID | "123456789" | Yes      |         |

#### Request Example

```bash
curl -X POST "https://www.pipispy.com/open-api/v1/data" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "key": "your_api_key_here",
    "uri": "/v3/api/open/tiktok-shop/product/detail",
    "params": {
      "id": "123456789"
    }
  }'
```

### Response

#### Response Body Structure

```json
{
  "code": 200,
  "message": "success",
  "data": {
    // Product detail information
  },
  "version": "v1",
  "timestamp": null,
  "sign": null,
  "remaining_credits": 9980,
  "consumed_credits": 1,
  "success": true,
  "fail": false
}
```

#### Response Field Description

##### Main Response Fields

| Field Name    | Type        | Description                |
| ------------- | ----------- | -------------------------- |
| **data**      | object      | Product detail information |
| **version**   | string      | API version                |
| **timestamp** | string/null | Response timestamp         |
| **sign**      | string/null | Response signature         |
| **remaining_credits** | number        | Current remaining available credits after this request |
| **consumed_credits**  | number        | Credits consumed by this request                       |
| **success**   | boolean     | Request success status     |
| **fail**      | boolean     | Request failure status     |

##### Product Detail Fields (data)

| Field Name        | Type    | Description                                                           |
| ----------------- | ------- | --------------------------------------------------------------------- |
| id                | string  | Product unique identifier ID                                          |
| image             | string  | Product main image URL                                                |
| title             | string  | Product title                                                         |
| landing_page      | string  | Product landing page URL                                              |
| desc              | string  | Product description                                                   |
| currency          | string  | Currency type                                                         |
| price             | double  | Product price (local currency)                                        |
| price_usd         | double  | Product price in USD                                                  |
| sales_volume      | long    | Product sales volume                                                  |
| commission_rate   | double  | Commission rate                                                       |
| sales_trend       | integer | Sales trend, 1-growth, 0-stable, -1-decline                           |
| sales_trend_data  | array   | Sales trend data list                                                 |
| score             | double  | Product rating                                                        |
| gmv               | double  | Sales volume (GMV)                                                    |
| gmv_usd           | double  | Sales volume in USD (GMV USD)                                         |
| delivery          | string  | Delivery method, overseas-cross-border delivery, local-local delivery |
| is_in_marketplace | boolean | Whether it's a marketplace product                                    |
| is_managed        | boolean | Whether it's a fully managed product                                  |
| person_count      | long    | Number of influencers                                                 |
| video_count       | long    | Number of ad videos                                                   |
| categorize        | object  | Product category information                                          |
| region            | string  | Product target region                                                 |
| play_count        | long    | Play count/ad impressions                                             |
| like_count        | long    | Like count                                                            |
| like_rate         | double  | Like rate                                                             |
| comment_count     | long    | Comment count                                                         |
| product_comment   | long    | Product comment count                                                 |
| share_count       | long    | Share count                                                           |
| found_time        | long    | First discovery time (timestamp)                                      |
| last_found_time   | long    | Last discovery time (timestamp)                                       |
| insert_time       | long    | Data insertion time (timestamp)                                       |
| update_time       | long    | Data update time (timestamp)                                          |
| min_cpm           | double  | Minimum ad cost (CPM)                                                 |
| max_cpm           | double  | Maximum ad cost (CPM)                                                 |
| shop_info         | object  | Shop information                                                      |
| is_collection     | boolean | Whether it's collected                                                |
| root_path         | string  | Product root path (domain)                                            |
| image_list        | array   | Product image list URLs                                               |

##### Product Category Information Object Fields (categorize)

| Field Name | Type   | Description                                   |
| ---------- | ------ | --------------------------------------------- |
| \_id       | string | Category ID                                   |
| parent_id  | string | Parent category ID                            |
| name_zh    | string | Category name in Chinese                      |
| name_vi    | string | Category name in Vietnamese                   |
| name_th    | string | Category name in Thai                         |
| name_pt    | string | Category name in Portuguese                   |
| name_ja    | string | Category name in Japanese                     |
| name_id    | string | Category name in Indonesian                   |
| name_en    | string | Category name in English                      |
| child_node | object | Child category information (nested structure) |

##### Shop Information Object Fields (shop_info)

| Field Name    | Type    | Description                       |
| ------------- | ------- | --------------------------------- |
| image         | string  | Shop image URL                    |
| name          | string  | Shop name                         |
| avg_price     | double  | Average price (local currency)    |
| currency      | string  | Currency type                     |
| id            | string  | Shop ID                           |
| goods_count   | long    | Number of goods                   |
| region        | array   | Shop target region list           |
| avg_price_usd | double  | Average price in USD              |
| sales_volume  | long    | Shop sales volume                 |
| is_managed    | boolean | Whether it's a fully managed shop |

##### Sales Trend Data Object Fields (sales_trend_data)

| Field Name   | Type | Description              |
| ------------ | ---- | ------------------------ |
| day          | long | Date timestamp           |
| sales_volume | long | Sales value for that day |

#### Response Example

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "id": "1729588788549551549",
    "image": "https://cdn-product.pipispy.com/xd_7bc3ff56783ac45048d903b0d414c7fc.jpg",
    "title": "[TANPA LEM] Dream Lashes L4 Sunflower Bulu Mata Palsu Tanpa Lem + FREE Tweezers",
    "landing_page": "https://shop.tiktok.com/view/product/1729588788549551549?region=ID",
    "desc": "✨ HALO DREAMERS! ✨\n\nSpecial untuk kalian : Beli 1 kotak bulu mata langsung mendapatkan bonus Twizzer...",
    "currency": "IDR",
    "price": 79900.0,
    "price_usd": 4.91,
    "sales_volume": 7606,
    "commission_rate": 0.1,
    "sales_trend": 1,
    "sales_trend_data": [
      {
        "day": 1744214400,
        "sales_volume": 9
      },
      {
        "day": 1744300800,
        "sales_volume": 10
      }
    ],
    "score": 4.7,
    "gmv": 6.077194e8,
    "gmv_usd": 37345.46,
    "delivery": "local",
    "is_in_marketplace": true,
    "is_managed": true,
    "person_count": 5,
    "video_count": 17,
    "categorize": {
      "_id": "601450",
      "parent_id": "0",
      "name_zh": "美妆个护",
      "name_vi": "Chăm sóc sắc đẹp & Chăm sóc cá nhân",
      "name_th": "ความงามและของใช้ส่วนตัว",
      "name_pt": "Beauty & Personal Care",
      "name_ja": "Beauty & Personal Care",
      "name_id": "Perawatan & Kecantikan",
      "name_en": "Beauty & Personal Care",
      "child_node": {
        "_id": "848648",
        "parent_id": "601450",
        "name_zh": "美妆",
        "name_vi": "Trang điểm",
        "name_th": "เครื่องสำอาง",
        "name_pt": "Makeup",
        "name_ja": "Makeup",
        "name_id": "Makeup",
        "name_en": "Makeup",
        "child_node": {
          "_id": "824720",
          "parent_id": "848648",
          "name_zh": "假睫毛与胶水",
          "name_vi": "Mí mắt giả & keo",
          "name_th": "ขนตาปลอมและกาว",
          "name_pt": "False Eyelashes & Adhesives",
          "name_ja": "False Eyelashes & Adhesives",
          "name_id": "Bulu Mata Palsu & Perekat",
          "name_en": "False Eyelashes & Adhesives"
        }
      }
    },
    "region": "ID",
    "play_count": 38217272,
    "like_count": 207307,
    "like_rate": 0.0054,
    "comment_count": 1348,
    "product_comment": 1013,
    "share_count": 17907,
    "found_time": 1718850206,
    "last_found_time": 1752103443,
    "insert_time": 1727694776,
    "update_time": 1752115234,
    "min_cpm": 15669.08,
    "max_cpm": 63822.84,
    "shop_info": {
      "image": "https://cdn-product.pipispy.com/xd_cdca8fe4b5f6023d2f07.jpg",
      "name": "Dream Lashes",
      "avg_price": 75704.13,
      "currency": "IDR",
      "id": "7494784729622284733",
      "goods_count": 16,
      "region": ["ID"],
      "avg_price_usd": 4.67,
      "sales_volume": 183793,
      "is_managed": true
    },
    "is_collection": false,
    "root_path": "shop.tiktok.com",
    "image_list": [
      "https://cdn-product.pipispy.com/xd_7bc3ff56783ac45048d903b0d414c7fc.jpg",
      "https://cdn-product.pipispy.com/xd_f6b642263b1c8483a639f246499cd24d.jpg",
      "https://cdn-product.pipispy.com/xd_d706e48a17564cf167e8cc47fd2812a1.jpg"
    ]
  },
  "version": "v1",
  "timestamp": null,
  "sign": null,
  "remaining_credits": 9980,
  "consumed_credits": 1,
  "success": true,
  "fail": false
}
```

### Error Codes

| Error Code | Description                                                       |
| ---------- | ----------------------------------------------------------------- |
| 200        | Success                                                           |
| 400        | Bad Request - Request parameter error, such as missing product ID |
| 404        | Not Found - Product not found                                     |
| 500        | Internal Server Error                                             |
