跳到主要内容

商品 API

本文档详细介绍商品相关的 API 接口。

获取商品列表

接口地址: GET /product/list

请求参数

参数类型必填说明
categoryIdstring商品分类 ID
keywordstring搜索关键词
pageint页码,默认 1
pageSizeint每页数量,默认 20
sortBystring排序字段:price/sales/time
sortOrderstring排序方向:asc/desc

请求示例

GET /product/list?categoryId=1001&page=1&pageSize=20&sortBy=sales&sortOrder=desc

响应示例

{
"code": 200,
"message": "success",
"data": {
"list": [
{
"id": "P10001",
"name": "iPhone 15 Pro Max 256GB",
"price": 8999.00,
"originalPrice": 9999.00,
"currency": "CNY",
"rubPrice": 112487.50,
"image": "https://img.russia-taobao.com/product/P10001.jpg",
"sales": 1234,
"rating": 4.8,
"stock": 50,
"status": "on_sale"
}
],
"pagination": {
"page": 1,
"pageSize": 20,
"total": 100,
"totalPages": 5
}
}
}

获取商品详情

接口地址: GET /product/{id}

路径参数

参数类型必填说明
idstring商品 ID

请求示例

GET /product/P10001

响应示例

{
"code": 200,
"message": "success",
"data": {
"id": "P10001",
"name": "iPhone 15 Pro Max 256GB",
"description": "全新原装正品,支持全国联保...",
"price": 8999.00,
"originalPrice": 9999.00,
"currency": "CNY",
"rubPrice": 112487.50,
"exchangeRate": 12.5,
"images": [
"https://img.russia-taobao.com/product/P10001_1.jpg",
"https://img.russia-taobao.com/product/P10001_2.jpg"
],
"skus": [
{
"id": "SKU001",
"name": "原色钛金属",
"price": 8999.00,
"stock": 20
},
{
"id": "SKU002",
"name": "蓝色钛金属",
"price": 8999.00,
"stock": 30
}
],
"sales": 1234,
"rating": 4.8,
"reviewCount": 567,
"stock": 50,
"status": "on_sale",
"shipping": {
"freeShipping": true,
"shippingFee": 0.00,
"estimatedDays": 15
},
"attributes": [
{
"name": "品牌",
"value": "Apple"
},
{
"name": "型号",
"value": "iPhone 15 Pro Max"
}
],
"createTime": "2024-01-01 10:00:00",
"updateTime": "2024-01-10 15:30:00"
}
}

搜索商品

接口地址: GET /product/search

请求参数

参数类型必填说明
keywordstring搜索关键词
pageint页码,默认 1
pageSizeint每页数量,默认 20
priceMindecimal最低价格
priceMaxdecimal最高价格
sortBystring排序字段:relevance/price/sales

请求示例

GET /product/search?keyword=iPhone&page=1&pageSize=20&sortBy=relevance

响应示例

{
"code": 200,
"message": "success",
"data": {
"list": [
{
"id": "P10001",
"name": "iPhone 15 Pro Max 256GB",
"price": 8999.00,
"rubPrice": 112487.50,
"image": "https://img.russia-taobao.com/product/P10001.jpg",
"sales": 1234,
"rating": 4.8
}
],
"pagination": {
"page": 1,
"pageSize": 20,
"total": 50,
"totalPages": 3
},
"suggestions": ["iPhone 15", "iPhone 14", "苹果手机"]
}
}

获取商品分类

接口地址: GET /product/category

请求参数

参数类型必填说明
parentIdstring父分类 ID,不传则获取顶级分类

请求示例

GET /product/category

响应示例

{
"code": 200,
"message": "success",
"data": [
{
"id": "100",
"name": "数码电器",
"icon": "https://img.russia-taobao.com/category/digital.png",
"level": 1,
"children": [
{
"id": "1001",
"name": "手机",
"level": 2
},
{
"id": "1002",
"name": "平板电脑",
"level": 2
}
]
},
{
"id": "200",
"name": "服装鞋包",
"icon": "https://img.russia-taobao.com/category/clothing.png",
"level": 1
}
]
}

获取商品评价

接口地址: GET /product/{id}/reviews

请求参数

参数类型必填说明
idstring商品 ID(路径参数)
pageint页码,默认 1
pageSizeint每页数量,默认 20
ratingint评价星级:1-5

请求示例

GET /product/P10001/reviews?page=1&pageSize=20

响应示例

{
"code": 200,
"message": "success",
"data": {
"summary": {
"total": 567,
"average": 4.8,
"distribution": {
"5": 450,
"4": 80,
"3": 25,
"2": 8,
"1": 4
}
},
"list": [
{
"id": "R10001",
"userId": "U123456",
"userName": "用户***",
"avatar": "https://img.russia-taobao.com/user/avatar.jpg",
"rating": 5,
"content": "商品质量很好,发货速度快!",
"images": [
"https://img.russia-taobao.com/review/R10001_1.jpg"
],
"skuInfo": "原色钛金属",
"createTime": "2024-01-10 15:30:00"
}
],
"pagination": {
"page": 1,
"pageSize": 20,
"total": 567,
"totalPages": 29
}
}
}

错误码

错误码说明
2001商品不存在
2002商品已下架
2003库存不足
2004商品分类不存在

示例代码

JavaScript

// 获取商品列表
async function getProductList(params) {
const response = await fetch(
`https://api.russia-taobao.com/v1/product/list?${new URLSearchParams(params)}`,
{
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
}
}
);
return await response.json();
}

// 获取商品详情
async function getProductDetail(productId) {
const response = await fetch(
`https://api.russia-taobao.com/v1/product/${productId}`,
{
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
}
}
);
return await response.json();
}

// 搜索商品
async function searchProducts(keyword, params = {}) {
const response = await fetch(
`https://api.russia-taobao.com/v1/product/search?keyword=${encodeURIComponent(keyword)}&${new URLSearchParams(params)}`,
{
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
}
}
);
return await response.json();
}

Python

import requests

class ProductAPI:
def __init__(self, access_token):
self.base_url = 'https://api.russia-taobao.com/v1'
self.headers = {
'Authorization': f'Bearer {access_token}',
'Content-Type': 'application/json'
}

def get_product_list(self, **params):
"""获取商品列表"""
url = f'{self.base_url}/product/list'
response = requests.get(url, headers=self.headers, params=params)
return response.json()

def get_product_detail(self, product_id):
"""获取商品详情"""
url = f'{self.base_url}/product/{product_id}'
response = requests.get(url, headers=self.headers)
return response.json()

def search_products(self, keyword, **params):
"""搜索商品"""
url = f'{self.base_url}/product/search'
params['keyword'] = keyword
response = requests.get(url, headers=self.headers, params=params)
return response.json()

def get_product_reviews(self, product_id, **params):
"""获取商品评价"""
url = f'{self.base_url}/product/{product_id}/reviews'
response = requests.get(url, headers=self.headers, params=params)
return response.json()