Product Data API for Taobao · 2.taobao · Tmall · Weidian · 1688 · Goofish
The CatBuy Services — Product API gives you one consistent endpoint to fetch structured product data from supported marketplaces.
Send a supported product URL and receive a normalized JSON response containing the most important information such as
title, price, images, variants / SKUs,
and attributes.
This API is designed for reliable integration: predictable request format, clear error codes, and a response structure that works well for
pricing, catalog ingestion, and product preview UIs.
Requests are accepted only for supported marketplace domains.
Fetch item/product information from a supported product URL.
| Parameter | Required | Description |
|---|---|---|
| url | Yes | Product URL (must be an allowed domain) |
| searchlang | No | Language hint for some localized fields (default: en) |
| tid | No | Optional tracking identifier (string) to correlate requests in your logs |
Dump a full example request, and inspect a complete real-world response.
Copy-paste examples for common languages.
Responses are JSON. On success you typically receive code: 1 and a data object. The exact fields can vary by marketplace and product type, but the structure stays consistent: a small top-level wrapper and a rich product payload inside data.
| Path | Type | What it is |
|---|---|---|
| code | number | Success indicator (usually 1) |
| msg | string | Human-readable status text |
| data.api_source | string | Detected marketplace source |
| data.num_iid | string | Marketplace item identifier |
| data.title | string | Product title |
| data.price | string | Primary price value |
| data.pic_url | string | Main image URL |
| data.item_imgs | array | Image gallery |
| data.props | array | Attributes list |
| data.props_list | object | Variant option dictionary for mapping SKU properties to labels |
| data.skus.sku | array | SKU list: each entry combines options + price + quantity |
| data.skus.sku[].properties | string | Option keys, e.g. 0:0;1:3 |
Errors return JSON with an error code and often a message.
| HTTP | error | Meaning |
|---|---|---|
| 400 | missing_parameter | Required parameter missing (e.g. url) |
| 400 | invalid_url | URL not allowed / unsafe / invalid host |
| 401 | missing_api_key | X-API-Key header not provided |
| 401 | invalid_api_key | API key not found / invalid format |
| 402 | insufficient_balance | Balance too low (top up required) |
| 429 | rate_limited | Too many requests (RPS limit) |
| 500 | server_error | Unexpected server-side error |
Check usernames, emails, phone numbers, addresses, IPs, and device fingerprints against the CatBuy risk database. Powered by 500+ confirmed chargeback users and 5,000+ risky identifiers.
| Param | Type | Required | Description |
|---|---|---|---|
| type | string | Yes | One of: email, username, phone, address, ip, device |
| value | string | Yes | The identifier to check (e.g. email address, IP, phone number) |
| Field | Type | Description |
|---|---|---|
| blacklisted | boolean | Whether the identifier is in the blacklist |
| riskScore | integer | Risk score from 0 (clean) to 100 (highest risk) |
| category | string | Category: chargeback_user, risky_ip, risky_email, risky_phone, risky_address, risky_device, risky_username, or none |
| matchType | string|null | The check type that matched (email, username, phone, address, ip, device) |
| firstSeen | string|null | Date when this entry was first added (YYYY-MM-DD) |
| reason | string|null | Human-readable reason for the blacklist entry |
| details | object | Additional metadata (order IDs, amounts, dates, etc.) |
| HTTP | Meaning |
|---|---|
| 200 | Check completed successfully |
| 400 | Missing or invalid type/value |
| 401 | Authentication required |
| 402 | Insufficient balance |
| 405 | Method not allowed (use POST) |