تنسيق الاستجابة
تقبل مسارات POST المدعومة حقلا اختياريا باسم response_format في جسم JSON. احذفه أو استخدم standard للحصول على نماذج HIOBuy الموحدة الافتراضية.
الأوضاع
| القيمة | الوصف |
|---|---|
standard (default) | أنواع موحدة — StandardProductDetail, StandardProductList, StandardOrderPreviewResult، وغيرها. |
upstream | تمرير مباشر من المزود — JSON الرسمي من 1688 Open API أو Taobao IOP داخل upstream، دون تحويل الحقول. |
غلاف upstream
عندما تكون response_format هي upstream:
{
"channel": "1688",
"response_format": "upstream",
"upstream_api": "com.alibaba.fenxiao.crossborder/product.search.keywordQuery",
"upstream": {
"result": {
"success": true
}
},
"upstream_steps": [],
"request_id": "req_abc123"
}upstream_api— معرف API الأساسي للمزود (مسار 1688 أو مسار Taobao IOP)upstream— جسم HTTP JSON الخام من ذلك الاستدعاءupstream_steps— استدعاءات سابقة اختيارية (مثل رفع الصورة قبل البحث بالصورة)
استجابة preview القياسية {#standard-preview}
يعيد POST /v1/orders/preview (لـ 1688 وTaobao) نوع StandardOrderPreviewResult في وضع standard. المبالغ بوحدة fen (سنتات CNY). مرجع الحقول: طلبات الشراء.
{
"channel": "taobao",
"success": true,
"total": {
"payment": {
"amount": 12900,
"currency": "CNY"
},
"shipping": {
"amount": 0,
"currency": "CNY"
}
},
"unavailable_lines": [],
"sellers": [
{
"seller_id": "...",
"lines": [
{
"offer_id": "...",
"spec_id": "...",
"quantity": 5
}
]
}
],
"request_id": "req_..."
}تضيف 1688 الحقول trade_types وpay_channels وpromotions. مع response_format: "upstream"، تعيد preview JSON المزود الخام بدلا من ذلك.
مسارات المنتجات
| Endpoint | Channels | Upstream API (أمثلة) |
|---|---|---|
POST /v1/products/detail | 1688, taobao | queryProductDetail / /traffic/item/get |
POST /v1/products/search | 1688, taobao | keywordQuery / /traffic/item/search |
POST /v1/products/search-by-image | 1688, taobao | upload + imageQuery / upload + /traffic/item/imgsearch |
يعيد POST /v1/products/parse دائما standard فقط. يستخدم POST /v1/products/freight/estimate الجسم نفسه مثل order preview ويعيد الشحن فقط.
مسارات الطلبات (1688 وTaobao)
| Endpoint | Standard | Upstream API (أمثلة) |
|---|---|---|
POST /v1/orders/list | ✓ | alibaba.trade.getBuyerOrderList |
POST /v1/orders/1688/preview | ✓ | alibaba.createOrder.preview |
POST /v1/orders/1688/create | ✓ | alibaba.trade.createCrossOrder |
POST /v1/orders/preview | ✓ | يوجه حسب channel (1688 / taobao) |
POST /v1/orders/create | ✓ | يوجه حسب channel |
POST /v1/orders/taobao/preview | ✓ | /purchase/order/render |
POST /v1/orders/taobao/create | ✓ | /purchase/order/create |
POST /v1/orders/cancel | ✓ | alibaba.trade.cancel |
POST /v1/orders/pay | ✓ | يوجه حسب channel |
POST /v1/orders/detail | ✓ | تفاصيل الطلب حسب order_id |
POST /v1/orders/logistics/trace | ✓ | تتبع اللوجستيات المحلية |
POST /v1/orders/purchase/query | ✓ | قائمة مشتريات Taobao |
مثال — بحث upstream
curl https://api.hiobuy.com/v1/products/search \
-H "Authorization: Bearer hio_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"response_format": "upstream",
"channel": "1688",
"keyword": "phone case",
"page": 1,
"page_size": 10,
"language": "en"
}'التحقق
تعيد القيم غير الصالحة (مثل vendor_raw) HTTP 400 مع VALIDATION_ERROR. راجع الأخطاء.
OpenAPI
المواصفة القابلة للقراءة آليا: openapi.json (المخططات UpstreamApiResponse, UpstreamStep).