Purchasing Agent Software & China Logistics Solutions

How to Put Official Taobao and 1688 Product Data on Your Own Website

HIOBuy starter demo homepage with 1688/Taobao search box

For teams that already have a website or app, and need live Taobao / 1688 catalog data on their frontend — not a white-label store, and not a scraped copy of someone else’s listing.

You already have a site, or you are about to build one. Search works. Product pages work. The piece that is not there yet is putting live catalog data from Taobao and 1688 onto that frontend: keyword search, image search, paste a product link, then SKU and detail. On your domain. In your UI. Without scraping either marketplace yourself.

That is a product-data problem. It is not a “launch a purchasing-agent brand” problem. If the storefront is yours, you need an official catalog API your backend can call, and a working example of how the browser talks to it without ever seeing the key.

On 26 August 2026 we published that example. The HIOBuy starter is a minimal open-source Next.js app: github.com/hiobuy/starter (MIT). There is a live demo at starter.demo.hiobuy.com. The rest of this post is how to run it, what the four Product API calls actually do, and where the starter stops.

HIOBuy starter demo homepage with 1688/Taobao search box
The live demo at starter.demo.hiobuy.com. Keyword, image, and product-link search in one box.

Why official product data instead of scraping

Copy-pasting a listing once is fine for a one-off SKU. It falls apart the moment price, stock, or variants change on 1688 or Taobao and your page still shows last week’s screenshot.

Scraping is the other common shortcut. It is unofficial, it breaks when the source page changes, and it is a poor fit if you are building something you intend to keep. HIOBuy is an official authorized technology partner of Taobao, 1688, and Weidian. The Product API is a unified interface across those channels — not a scraper sitting on HTML.

You still render the catalog on your site. The API is the data layer. Your routing, your copy, your checkout later.

What “product data” actually means

In the starter, product data is four flows, each mapped 1:1 to a public endpoint:

What the user does on your site HIOBuy Product API
Keyword search and a product listing POST /v1/products/search
Upload a photo, or paste an image URL POST /v1/products/search-by-image
Paste a Taobao or 1688 product link POST /v1/products/parse
Open a listing: images, SKU, variants POST /v1/products/detail
Searching phone case on 1688 in the HIOBuy starter demo
A real 1688 search for “phone case” in the starter. Titles and CNY prices come from the Product API.

That is the catalog loop: find an item, open it, read the variant matrix. Search (or parse) returns an id. You pass that id into detail. Do not invent your own identifier.

One practical trap on Taobao: id / mi_id rotates. Do not cache it long-term. A stale id fails on the next detail call. Re-fetch from search or parse before you treat a listing as current.

Prices on the Product API are CNY yuan. These endpoints do not convert currency. If you need FX or a markup, that lives in your application, not in the starter.

HIOBuy demo product detail with SKU color and model variants
Opening one listing: in stock, ¥1.30, color and model variants from the detail endpoint.

Hands-on: get a key, clone, run

1. Get an API key

Create a developer account at developers.hiobuy.com, create an App, and issue an API key.

An API key alone is not enough. The App also has to be authorized for the marketplace channels you want — 1688, Taobao, or both. If a channel is not authorized, product calls return 401 CHANNEL_NOT_AUTHORIZED. For local work, use a test or sandbox key where the portal offers one.

2. Clone the starter

MIT licensed. Next.js.

git clone https://github.com/hiobuy/starter.git
cd starter
github.com/hiobuy/starter README
The MIT repo. Clone it, put the key in .env.local, run localhost.

3. Keep the key on the server

Copy the example env file:

cp .env.example .env.local

Then set:

HIOBUY_API_KEY=your_api_key_here

Optional:

HIOBUY_DEFAULT_LANGUAGE=en

Never commit .env.local. Never put the key in frontend code, and never prefix it NEXT_PUBLIC_.

4. Install and run

With pnpm:

pnpm install
pnpm dev

Or with npm:

npm install
npm run dev

Open http://localhost:3000. You should get the same four flows as the public demo, against your own App.

The demo at starter.demo.hiobuy.com is for evaluation. It sits behind gateway rate limits and usage quotas. Do not point production traffic at it as a proxy.

How the request actually travels

The starter never lets the browser talk to HIOBuy with your key. The browser only hits this app’s own routes:

Browser
   │
   ▼
Next.js Route Handler  (/api/products/*)
   │
   │  Authorization: Bearer <HIOBUY_API_KEY>
   ▼
HIOBuy Product API

lib/hiobuy.ts is the server-side client. The handlers under app/api/products/search, search-by-image, parse, detail — are the proxy. Frontend code should call those routes (for example POST /api/products/search), not the HIOBuy host.

A typical search body looks like this:

{
  "channel": "1688",
  "keyword": "phone case",
  "page": 1,
  "page_size": 20
}

If you already have a frontend in another stack, keep the same split: secret on the server, product routes as a thin proxy, your UI as the only thing users see.

Catalog is not checkout

Read this before you treat the starter as a store.

It is an integration example for the Product API. It does not include:

  • Order creation
    • Procurement
      • Warehouse fulfillment
        • International shipping
          • Payment

          It is not a production-ready storefront. You still own cart, checkout, auth, FX, and whatever you wrap around a listing.

          If you later need the purchase loop — a customer buys on your site, your backend procures on 1688 or Taobao — that is a different set of APIs (/v1/orders/, and optionally /v1/fulfillment/ in warehouse mode). Start from the HIOBuy developer documentation and the authentication notes. Do not expect the starter to grow those features by itself.

          One related platform rule is worth knowing early: HIOBuy’s product APIs are meant to support real sourcing, not a read-only catalog with no purchase path. Wire discovery first; add procurement when you actually take orders.

          Deploy only if you need to

          You do not need Cloudflare to run this locally or to self-host. It is a standard Next.js app.

          The official demo happens to run on Cloudflare Workers via OpenNext. That path is optional. If you use it, set the key as a Cloudflare Secret at deploy time — do not bake .env.local into the Worker bundle:

          wrangler secret put HIOBUY_API_KEY

          Where to go next

Table of Contents