Chuyển đến nội dung chính
Elimapi

Tham chiếu API sản phẩm (v2)

Tóm tắt

Trang này liệt kê đầy đủ endpoint, tham số và cấu trúc response của API sản phẩm v2 (phiên bản hiện tại, khuyên dùng cho tích hợp mới): tìm kiếm theo từ khóa, tìm kiếm bằng ảnh, lấy chi tiết sản phẩm, upload ảnh và tính phí vận chuyển trên Taobao và 1688.

Nếu bạn đang dùng phiên bản v1, xem API Sản phẩm v1 (Legacy). Để làm theo từng bước, xem Hướng dẫn tìm kiếm sản phẩm.

Tất cả endpoint đều là POST, yêu cầu header xác thực (JWT hoặc API Key), và yêu cầu tham số platform với giá trị taobao hoặc alibaba.

EndpointMô tảPlatform
POST /v2/products/searchTìm kiếm sản phẩm theo từ khóa✅ Taobao ✅ 1688
POST /v2/products/search-by-imageTìm kiếm sản phẩm bằng ảnh✅ Taobao ✅ 1688
POST /v2/products/findLấy chi tiết sản phẩm✅ Taobao ✅ 1688
POST /v2/products/detailLấy chi tiết sản phẩm đầy đủ✅ Taobao ✅ 1688
POST /v2/products/upload-imageUpload ảnh lên server Alibaba✅ Taobao ✅ 1688
POST /v2/products/shipping-feeTính phí vận chuyển✅ Taobao ❌ 1688

Tìm kiếm sản phẩm bằng từ khóa

POST /v2/products/search

Ví dụ request:

{
  "platform": "taobao",
  "q": "áo thun cotton",
  "lang": "vi",
  "sort": "SALE_QTY_DESC",
  "page": 1,
  "size": 20,
  "filter": {
    "priceRange": { "min": 0, "max": 100 }
  }
}

Tham số

Tham sốKiểuBắt buộcMô tả
platformstringNền tảng: taobao hoặc alibaba
qstringTừ khóa tìm kiếm
langstringNgôn ngữ dịch tiêu đề: vi, en, ru, ko, ja. Dữ liệu dịch nằm trong key title_en; key title vẫn là tiếng Trung gốc
sortstringSắp xếp kết quả (xem bảng bên dưới)
filterobjectBộ lọc kết quả (xem bảng bên dưới)
pagenumberSố trang, bắt đầu từ 1
sizenumberSố kết quả mỗi trang: từ 20 đến 40
keywordTranslatebooleanDịch từ khóa tìm kiếm sang ngôn ngữ phù hợp với lang

Sắp xếp kết quả (sort)

Giá trịMô tảPlatform
PRICE_ASCGiá tăng dần✅ Taobao ✅ 1688
PRICE_DESCGiá giảm dần✅ Taobao ✅ 1688
SALE_QTY_ASCLượt bán tăng dần✅ Taobao ✅ 1688
SALE_QTY_DESCLượt bán giảm dần✅ Taobao ✅ 1688
RETENTION_ASCTỷ lệ mua lại tăng dần❌ Taobao ✅ 1688
RETENTION_DESCTỷ lệ mua lại giảm dần❌ Taobao ✅ 1688

Lọc kết quả (filter)

Tham sốMô tảPlatform
filter.priceRangeKhoảng giá, đơn vị CNY: { "min": 0, "max": 100 }✅ Taobao ✅ 1688
filter.shopIdSản phẩm cùng người bán. Taobao dùng shop id dạng số; 1688 dùng shopId dạng chữ-số✅ Taobao ✅ 1688
filter.sellerLevelCấp độ người bán: L1L4 (xem bảng bên dưới)❌ Taobao ✅ 1688
filter.isFactoryChỉ lấy hàng từ siêu nhà máy❌ Taobao ✅ 1688
filter.ffmOutboundTiêu chí xuất hàng nhanh: FFMO1FFMO6 (xem bảng bên dưới)❌ Taobao ✅ 1688
filter.ffmDeliveryTiêu chí giao hàng nhanh: FFMD0FFMD2 (xem bảng bên dưới)❌ Taobao ✅ 1688
filter.allowReturnCho phép hoàn hàng không lý do trong 7 ngày❌ Taobao ✅ 1688
filter.allowDropshipCho phép dropship❌ Taobao ✅ 1688
filter.freeshipForDropshipCho phép dropship + freeship❌ Taobao ✅ 1688
filter.newArrivalHàng mới cập nhật lên sàn: 7DAY, 30DAY❌ Taobao ✅ 1688
filter.platformPickNguồn hàng sàn tuyển cho thị trường nội địa❌ Taobao ✅ 1688
filter.globalPickNguồn hàng sàn tuyển cho thị trường quốc tế❌ Taobao ✅ 1688
filter.dropshipPickNguồn hàng sàn tuyển cho dropship❌ Taobao ✅ 1688
filter.categoryIdLọc theo mã danh mục❌ Taobao ✅ 1688
filter.categoryIdListLọc theo danh sách mã danh mục❌ Taobao ✅ 1688
filter.sellerOpenIdTìm kiếm trong phạm vi một shop (khi có tham số này, q là từ khóa tìm trong shop)❌ Taobao ✅ 1688

Giá trị ffmOutbound

Giá trịMô tả
FFMO1Tỷ lệ xuất hàng trong 24h < 95%
FFMO2Tỷ lệ xuất hàng trong 24h >= 95%
FFMO3Tỷ lệ xuất hàng trong 24h > 99%
FFMO4Tỷ lệ xuất hàng trong 48h < 95%
FFMO5Tỷ lệ xuất hàng trong 48h >= 95%
FFMO6Tỷ lệ xuất hàng trong 48h > 99%

Giá trị ffmDelivery

Giá trịMô tả
FFMD0Giao trong ngày
FFMD1Giao trong 24h
FFMD2Giao trong 48h

Giá trị newArrival

Giá trịMô tả
7DAYHàng mới cập nhật trong 7 ngày gần nhất
30DAYHàng mới cập nhật trong 30 ngày gần nhất

Giá trị sellerLevel

Giá trịMô tả
L1Tổng điểm đánh giá 5 sao
L2Tổng điểm đánh giá 4.5 – 5 sao
L3Tổng điểm đánh giá 4 – 4.5 sao
L4Tổng điểm đánh giá dưới 4 sao

Tìm kiếm sản phẩm bằng ảnh

Lưu ý: Tính năng này không áp dụng với gói Miễn phí.

POST /v2/products/search-by-image

Có 2 cách tìm kiếm bằng ảnh, bắt buộc truyền 1 trong 2 tham số:

1. Tìm kiếm bằng URL ảnh — dùng tham số imgUrl

Chỉ có thể dùng link ảnh từ Alibaba: *.alicdn.com.

{
  "platform": "taobao",
  "imgUrl": "https://img.alicdn.com/bao/uploaded/i3/694223667/O1CN01zSjKgp1cxXRQZsDLA_!!694223667.jpg",
  "lang": "vi",
  "page": 1,
  "size": 20
}

2. Tìm kiếm bằng ảnh upload — dùng tham số imgId

Upload ảnh trước qua API POST /v2/products/upload-image để nhận imageId, sau đó truyền vào imgId:

{
  "platform": "alibaba",
  "imgId": "image-123",
  "lang": "vi",
  "page": 1,
  "size": 20
}

Tham số

Tham sốKiểuBắt buộcMô tả
platformstringNền tảng: taobao hoặc alibaba
imgUrlstring❌*Link ảnh Alibaba (*.alicdn.com)
imgIdstring❌*Mã ảnh đã upload qua POST /v2/products/upload-image
langstringNgôn ngữ dịch tiêu đề: vi, en, ru, ko, ja
sortstringSắp xếp kết quả (cùng giá trị với sort ở phần tìm kiếm từ khóa)
filterobjectBộ lọc: hỗ trợ filter.priceRangefilter.categoryId
pagenumberSố trang, bắt đầu từ 1
sizenumberSố kết quả mỗi trang: từ 1 đến 20
keywordstringTừ khóa kèm theo khi tìm bằng ảnh
keywordTranslatebooleanDịch từ khóa tìm kiếm

* Bắt buộc truyền ít nhất một trong hai tham số imgUrl hoặc imgId.

Lấy thông tin chi tiết sản phẩm

POST /v2/products/find
POST /v2/products/detail

Cả hai endpoint dùng chung cấu trúc request và trả về thông tin chi tiết sản phẩm. detail trả về chi tiết đầy đủ hơn, phù hợp khi cần dữ liệu 1688.

{
  "platform": "taobao",
  "id": "734467086498",
  "lang": "vi"
}

Tham số

Tham sốKiểuBắt buộcMô tả
platformstringNền tảng: taobao hoặc alibaba
idstringMã sản phẩm: Taobao dùng mi_id hoặc item_url; 1688 dùng offerId
langstringNgôn ngữ dịch tiêu đề: vi, en, ru, ko, ja

Nếu gặp link rút gọn dạng https://e.tb.cn/h.hPY04k4RPfAco8F?tk=0CCI430IUqd, phải xử lý link trước để lấy link gốc — dùng API Unshorten link để lấy link gốc và ID sản phẩm.

Các loại giá sản phẩm

Thuộc tính giáMô tảPlatform
priceGiá thông thường. Đối với 1688 là giá sỉ không freeship, số lượng tùy thuộc seller cài đặt✅ Taobao ✅ 1688
promotion_priceGiá khuyến mãi, thấp hơn hoặc bằng giá thông thường✅ Taobao ✅ 1688
retail_priceGiá bán lẻ + freeship từ 1 sản phẩm, dành cho dropshipping. Thường xuất hiện ở các sản phẩm 1688 tuyển chọn❌ Taobao ✅ 1688
dropship_priceGiá bán lẻ 1 cái, thường bằng giá thông thường. Khác biệt là phụ thuộc seller có active dropship hay không❌ Taobao ✅ 1688

Cảnh báo: Nếu bạn hiển thị giá cho khách hàng trên extension/web/app, hãy bổ sung cảnh báo rằng giá có thể cao hơn giá xem trực tiếp trên Taobao/1688. Nếu phát hiện giá trên API cao hơn, liên hệ CSKH để được hỗ trợ điều chỉnh giá khi tạo đơn mua hàng.

Taobao: ưu tiên hiển thị và áp dụng giá khuyến mãi; nếu không có, dùng giá thông thường.

1688: logic áp dụng giá phụ thuộc vào trường quote_type:

Giá trịMô tả
directLấy giá sỉ theo pricepromotion_price
by_skuLấy giá theo từng SKU
by_volumeLấy giá theo price_range và phụ thuộc vào số lượng mua tối thiểu moq

Các cấp độ người bán trên 1688

Cấp độ dùng để xác định uy tín người bán trên 1688, xác định qua trường seller_type:

Giá trịMô tả
sellerNhà bán hàng phổ thông
merchantNhà bán hàng chuyên nghiệp, đã được 1688 xác thực
factoryNhà máy sản xuất, đã được 1688 xác thực và đáp ứng các tiêu chuẩn đánh giá trực tiếp từ 1688

Giải thích các trường trong extra_info

Giá trịMô tả
isOnePsaleCó hỗ trợ dropshipping hay không?
isSupportMixCó cho mua nhiều sản phẩm trong 1 đơn hàng hay không?
isOnePsaleFreePostageCó hỗ trợ dropshipping + freeship hay không?
noReason7DReturnCó cho phép hoàn hàng không lý do trong 7 ngày hay không?
1688_yxCó phải nguồn hàng tuyển chọn hay không?

Tính phí vận chuyển

Chỉ áp dụng cho Taobao.

POST /v2/products/shipping-fee
{
  "platform": "taobao",
  "id": "734467086498",
  "addressInfo": {
    "country": "VN",
    "state": "Hà Nội",
    "city": "Hà Nội",
    "district": "Hoàn Kiếm"
  }
}

Tham số

Tham sốKiểuBắt buộcMô tả
platformstringCố định taobao
idstringMã sản phẩm: mi_id hoặc item_url
addressInfo.countrystringQuốc gia nhận hàng
addressInfo.statestringTỉnh/thành
addressInfo.citystringThành phố/quận
addressInfo.districtstringQuận/huyện

Response chứa post_fee (phí vận chuyển, đơn vị CNY), currency, item_id, mi_id, item_resource.

Upload ảnh

Dùng để lấy imageId phục vụ tìm kiếm bằng ảnh (tham số imgId).

POST /v2/products/upload-image

Request dạng multipart/form-data:

TrườngKiểuBắt buộcMô tả
filefileFile ảnh cần upload
platformstringNền tảng: taobao hoặc alibaba

Response: { "imageId": "image-123" }.

Cấu trúc response

Tên field trong response dùng dạng snake_case. Mỗi platform trả về một cấu trúc sản phẩm riêng:

  • find / detail → một object sản phẩm (Product)
  • search / search-by-image{ "paginate": { "total", "current", "size" }, "items": [...] } (mục paginate có thể vắng mặt khi không có thông tin phân trang)

Các field chung (có trên cả hai platform)

FieldMô tả
idMã sản phẩm
titleTiêu đề gốc (tiếng Trung)
title_enTiêu đề đã dịch (khi gọi với lang)
descriptionMô tả sản phẩm
quote_typeLoại báo giá: direct / by_sku / by_volume
priceGiá thông thường
promotion_priceGiá khuyến mãi
quantityTồn kho
unitĐơn vị tính
shop_idMã người bán
shop_nameTên shop
moqSố lượng mua tối thiểu
category_idMã danh mục
category_nameTên danh mục
category_pathĐường dẫn danh mục
img_urlsDanh sách ảnh sản phẩm
seller_typeLoại người bán: seller / merchant / factory
statusTrạng thái sản phẩm
skusDanh sách biến thể (màu, size)
attributesThuộc tính sản phẩm

Các field riêng của 1688

Ngoài các field chung, response 1688 bổ sung thêm các field sau (nhóm theo chủ đề):

  • Giá: price_range, channel_price, promotion_model, fenxiao_sale_info, is_jxhy
  • Media: video_urls, white_image, translated_img_urls, translated_white_image
  • Dịch ngôn ngữ: description_en, unit_en
  • Lượt mua / đánh giá: sold, review, level
  • Vận chuyển: shipping_info
  • Danh mục: top_category_id, second_category_id, third_category_id
  • Định danh & link: mp_id, item_type, batch_number, product_cargo_number, original_product_url, seller_shop_url, promotion_url
  • Metadata: selling_point, offer_identities, create_date, is_select, certificate_list, seller_mix_setting
  • Khác: extra_info, sku_price_ranges

Lưu ý: Một field vắng mặt hoàn toàn trong response nghĩa là field đó không thuộc platform bạn đang gọi. Một field có giá trị null nghĩa là không có dữ liệu cho field đó trong request này.

Danh sách field đầy đủ và mô tả chi tiết: Swagger API.

Câu hỏi thường gặp (FAQ)

Tại sao giá sản phẩm lấy qua API khác với giá khi xem trên website Taobao/1688?

  1. API chúng tôi sử dụng thuộc hệ thống logistics xuyên biên giới của Alibaba, giá được xác định độc lập — tách biệt với giá hiển thị trên website.
  2. Khác với API, website phân biệt được khách mới và khách cũ, do đó có thể áp dụng khuyến mãi hoặc voucher theo nhóm người dùng — khả năng mà API không hỗ trợ.

Có môi trường thử nghiệm không?

Không. Tài khoản mặc định đã được thêm 200 requests miễn phí để tích hợp thử nghiệm.

Dữ liệu có realtime không?

Có, dữ liệu được lấy trực tiếp từ Taobao và 1688.

Có hỗ trợ tìm kiếm bằng hình ảnh không?

Có, hỗ trợ tìm kiếm bằng link ảnhảnh upload.

Liên kết liên quan