Модели ответов Product API

С response_format: "standard" (по умолчанию) product endpoints возвращают типы ниже. Канонический TypeScript: packages/shared/src/products.ts.

Endpoints: детали · поиск · поиск по изображению · парсинг

Обертка ответа {#envelope}

EndpointФорма
detail, parse{ product: StandardProductDetail, request_id }
search, search-by-imageStandardProductList & { request_id }
upload-image{ channel, image_id, request_id }

StandardProductDetail {#standard-product-detail}

Полный снимок товара для страниц товара и checkout. Маппинг в orders: source_product_idoffer_id, variants[].sku_idspec_id (заказы закупки).

Идентичность и канал

ПолеТипОписание
idstringСоставной ключ HIOBuy: {channel}_{source_product_id}
channelstring1688, taobao или weidian
source_product_idstring1688 = offerId; Taobao = mi_id (обязательно для order APIs)
source_urlstringКанонический URL страницы товара

Локализованный текст (title, description)

ПолеТипОписание
originalstringТекст маркетплейса (обычно китайский)
translatedstring | nullПеревод для запрошенного language
languagestringLocale для translated
descriptionobject | nullПодробное описание (часто HTML)

Цены (price, price_tiers[])

Все суммы в CNY yuan (не fen). Предпочитайте promotion_amount, если задано, иначе display_amount.

ПолеТипОписание
price.original_amountnumberList price до promotions
price.display_amountnumberЦена для покупателя (CNY)
price.promotion_amountnumber | nullPromotional unit price, когда применимо
price.original_currency / display_currencystringВсегда CNY
price_tiers[]arrayОптовые ступени 1688; пусто на Taobao
min_order_quantitynumber | null1688 MOQ
distribution_min_quantitynumber | nullМинимум 1688 dropship

Медиа (images[], videos)

ПолеТипОписание
images[].urlstringURL изображения CDN
images[].typeenummain, gallery или variant
videos.main / videos.detailstring | nullВидео 1688; Taobao null

Attributes vs variants

Только variants[] управляет выбором SKU и строками заказа.

ПолеРоль
attributes[]CPV specs — только отображение, не для SKU resolution
variants[]Покупаемая SKU matrix с ценой, остатком и specs

Объект variant (variants[])

ПолеТипОписание
sku_idstringПередавайте как spec_id при order create
upstream_sku_idstring | nullЧисловой skuId 1688
attributes[]arrayИзмерения spec (цвет, размер, …)
priceobjectЦена на уровне SKU в yuan
stocknumberДоступное количество; 0 = нет в наличии
imagestring | nullОсновное изображение SKU
shippingobject | nullРазмеры упаковки 1688 для freight
distributionobject | nullЦены 1688 dropship

Продавец, доставка и metadata

ПолеТипОписание
seller.id / seller.namestringShop id и отображаемое имя
seller.shop_urlstring | nullСсылка на storefront
shipping.shipping_fromstring | nullРегион внутренней отправки
shipping.domestic_shipping_feeobject | nullОценка внутренней платы доставки в yuan
metadata.raw_categorystring | nullUpstream category
metadata.brandstring | nullЗаявленный бренд
metadata.updated_atstringПоследняя синхронизация ISO 8601
trade_scorestring | nullОценка качества 1688

Пример (сокращено)

{
  "product": {
    "id": "1688_554456348334",
    "channel": "1688",
    "source_product_id": "554456348334",
    "title": {
      "original": "...",
      "translated": "...",
      "language": "en"
    },
    "price": {
      "display_amount": 29.9,
      "promotion_amount": 24.9
    },
    "variants": [
      {
        "sku_id": "b266e0...",
        "stock": 100
      }
    ]
  },
  "request_id": "req_..."
}

Доступность полей по каналам

Поле1688TaobaoWeidian
videos, price_tiers, trade_scoreЗависит
variants[].shipping, distribution
source_product_id для ordersofferIdmi_idPlatform id

StandardProductList {#standard-product-list}

Из поиска и поиска по изображению. Каждая запись items[] — это summary; вызовите detail для SKU matrix.

ПолеТипОписание
channelstringЗапрошенный маркетплейс
keywordstringЭхо keyword (пусто для чистого image search)
page / page_sizenumberПримененная pagination
totalnumberUpstream total (может быть приблизительным)
items[]arrayОбъекты StandardProductListItem
pic_region_infoobjectImage search: обнаруженная crop region

StandardProductListItem

ПолеТипОписание
id, channel, source_product_id, source_urlstringИспользуйте source_product_id для получения detail
titleLocalizedTitleНазвание listing
priceProductPriceSummary price в CNY yuan
imagestringThumbnail URL
seller.namestringНазвание магазина

Ответ upload-image {#upload-image-response}

ПолеТипОписание
channelstringМаркетплейс, который сохранил изображение
image_idstringПовторно используйте в поиске по изображению

Выбор variant {#variant-selection}

  1. Загрузите detail → прочитайте product.variants.
  2. Сгруппируйте по attributes[].original_name для dimension pickers.
  3. Фильтруйте variants по каждому выбору пользователя; отключайте options без остатка.
  4. Передайте соответствующие sku_id и source_product_id в order preview.