1688 Search By Image
Find visually similar 1688 supplier products from an image URL.
Cost10 credits / call
POST ·
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/runMCP · nexscope_1688_search_by_imageChoose an integration method
1688 Sourcing
What this API does
Find visually similar 1688 supplier products from an image URL, including price, minimum order quantity, sales, supplier, and trade data.
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/runMCP method
nexscope_1688_search_by_imageStep 1 of 3 · Authenticate
Authentication
All run endpoints require a user API key. Send it as a bearer token in the Authorization header.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxMissing or invalid API keys return an authentication error. Manage keys from .
Step 2 of 3 · Send a request
POST
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/runRun an API
Request parameters documented by ecommerce.1688-search-by-image.
Example request
Replace YOUR_API_KEY, then run this command in your terminal.
curl -X POST 'https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/run' \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"imageUrl": "https://m.media-amazon.com/images/I/61v6nYvQ7+L._AC_SL1500_.jpg",
"page": 1,
"pageSize": 20
}'Step 3 of 3 · Inspect the result
Check the response
Read code for the request status and data for the result. Open the parameter and response reference for the full field definitions.
HTTP status codes
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API execution or upstream service failed. |
All categories/ 1688 Sourcing
POST
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/runRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/run |
| Auth | Bearer API key |
| Content-Type | application/json |
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
imageUrl | string | optional | Public HTTP/80 or HTTPS/443 URL, maximum 1,000 characters, without redirects. A sole direct source is checked for PNG/JPEG headers, at most 14.3 MiB, each dimension at most 20,000 and at most 40,000,000 pixels. This is not full pixel-integrity validation. Provide exactly one of imageUrl, imageBase64, or imageId. Example: https://m.media-amazon.com/images/I/61v6nYvQ7+L._AC_SL1500_.jpg |
imageBase64 | string | optional | Raw standard Base64 for PNG/JPEG; optional padding and outer whitespace allowed, embedded whitespace and data URI prefixes rejected for a sole direct source. Byte/header limits match imageUrl; at most 19,992,848 Base64 characters after outer whitespace trimming. Provide this as the only image source. |
imageId | string | optional | 1688 image ID. Image-search results also return this value; include it when page is greater than 1 to improve response time |
page | integer | optional | Page number starting from 1 Example: 1 |
pageSize | integer | optional | Number of products per page; default 20, maximum 50 Example: 20 |
priceStart | string | optional | Minimum price in CNY, for example 10 |
priceEnd | string | optional | Maximum price in CNY, for example 100 |
filter | string | optional | Comma-separated filter conditions. Use the supported filter values documented for this endpoint |
sort | string | optional | Sort condition as JSON in the form {field: direction}. Fields: price, rePurchaseRate, or monthSold. Directions: asc or desc |
keyword | string | optional | Keyword used to search within the results Example: phone case |
productCollectionId | string | optional | Single product-collection ID. Use a supported collection ID documented for this endpoint Example: example-id |
Code example
{
"imageUrl": "https://m.media-amazon.com/images/I/61v6nYvQ7+L._AC_SL1500_.jpg",
"page": 1,
"pageSize": 20
}Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"data": {
"imageId": "example-id",
"total": 1,
"totalPage": 1,
"columns": [],
"costToken": 1,
"products": [
{
"offerId": "example-id",
"asin": "example-id",
"imageUrl": "https://example.com/image.jpg",
"price": 1,
"consignPrice": 1,
"salesQuantity": 1,
"estimatedSalesAmount": 1,
"asinUrl": "https://detail.1688.com/offer/1040473674152.html",
"quantityBegin": 1
}
]
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}Response fields
| Name | Type | Required | Description |
|---|---|---|---|
data | any | required | Data value used by this API operation. |
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
msg | string | null | required | Msg value used by this API operation. |
ts | string | required | Epoch milliseconds. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
traceId | string | null | required | Trace id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.imageId | string | optional | Uploaded image ID; send it with paginated requests to improve response time Example: example-id |
data.total | integer | optional | Number of products on this page Example: 1 |
data.totalPage | integer | optional | Total number of pages Example: 1 |
data.sourceType | string | optional | Source type; fixed value "1688" Example: null |
data.type | string | optional | Rendering style; fixed value "productWorkbenches" Example: null |
data.columns | array | optional | Column definitions used for rendering Example: [] |
data.costToken | integer | optional | Tokens consumed Example: 1 |
data.products | array | optional | Product list; see the product fields below Example: [] |
data.products[] | object | required | Item in data products. |
data.products[].offerId | string | optional | Product ID Example: example-id |
data.products[].asin | string | optional | Product identifier, same as offerId Example: example-id |
data.products[].imageUrl | string | optional | Product image URL Example: https://example.com/image.jpg |
data.products[].title | string | optional | Product title Example: null |
data.products[].price | number | optional | Wholesale price in CNY Example: 1 |
data.products[].consignPrice | number | optional | Single-item dropshipping price in CNY Example: 1 |
data.products[].salesQuantity | integer | optional | Monthly units sold Example: 1 |
data.products[].estimatedSalesAmount | number | optional | Estimated sales revenue Example: 1 |
data.products[].asinUrl | string | optional | Product URL Example: https://detail.1688.com/offer/1040473674152.html |
data.products[].isOnePsale | string | optional | Whether single-item dropshipping is available Example: null |
data.products[].isJxhy | string | optional | Whether the product is a selected supply source Example: null |
data.products[].sellerIdentities | string | optional | Seller identities, such as Super Factory, Verified Supplier, or TrustPass member Example: null |
data.products[].offerIdentities | string | optional | Product badge, such as Strict Selection Example: null |
data.products[].repurchaseRate | string | optional | Repurchase rate Example: null |
data.products[].tradeScore | string | optional | Product transaction score Example: null |
data.products[].compositeServiceScore | string | optional | Composite service-experience score Example: null |
data.products[].sendGoodsAddressText | string | optional | Dispatch location Example: null |
data.products[].deliveryTime | string | optional | Dispatch time, such as 24 or 48 hours Example: null |
data.products[].quantityBegin | integer | optional | Minimum order quantity Example: 1 |
data.products[].hasPromotion | string | optional | Whether a promotion is active Example: null |
data.products[].promotionType | string | optional | Promotion type Example: null |
data.products[].isPatentProduct | string | optional | Whether the product is patented Example: null |
data.products[].isSelect | string | optional | Cross-border Select collection indicator Example: null |
data.products[].currency | string | optional | Currency; fixed value "¥" Example: null |
data.products[].sourceType | string | optional | Source type; fixed value "1688" Example: null |
data.products[].sourceTool | string | optional | Source tool; fixed value identifying 1688 image search Example: null |
data.products[].dataType | string | optional | Data type; fixed value "monthlyData" Example: null |
data.title | string | optional | Provider-specific response title. Example: null |
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Responses
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API execution or upstream service failed. |
Data source, freshness, and limitations
Source, freshness, coverage, rate limits, and estimation notes are not specified in this API definition unless they appear in the request or response field documentation above. Do not assume official marketplace data or real-time freshness when it is not explicitly documented.
Step 1 of 2 · Connect your MCP client
MCP
V2 recommendedConnect remote agents through the standard MCP 2025-11-25 Streamable HTTP endpoint. Use OAuth 2.1 Authorization Code with PKCE, or an API key for compatibility.
POST https://api.nexscope.ai/api/skill-api/v2/mcp
MCP-Protocol-Version: 2025-11-25
Content-Type: application/jsonAuthentication
OAuth clients request the mcp:tools scope. The endpoint's 401 response advertises protected-resource metadata for authorization discovery.
Step 2 of 2 · Call the tool
Call a tool
{
"jsonrpc": "2.0",
"id": "tool-call-1",
"method": "tools/call",
"params": {
"name": "nexscope_1688_search_by_image",
"arguments": {
"imageUrl": "https://m.media-amazon.com/images/I/61v6nYvQ7+L._AC_SL1500_.jpg",
"page": 1,
"pageSize": 20
}
}
}Legacy MCP v1
Existing API-key clients can continue using the compatibility endpoint. New integrations should use MCP v2.
GET / POST /api/skill-api/v1/mcpOnline test
Execute the current API with your API key and JSON payload.
10 credits / callAPI usage records
Try it
Send a real request with the same contract shown in the reference.
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/runMCP method
nexscope_1688_search_by_imagecURL
curl -X POST \
https://api.nexscope.ai/api/skill-api/v1/skills/1688-search-by-image/run \
-H "Authorization: Bearer nk-..." \
-H "Content-Type: application/json" \
-d '{ "imageUrl": "https://m.media-amazon.com/images/I/61v6nYvQ7+L._AC_SL1500_.jpg", "page": 1, "pageSize": 20 }'Response
No response yet. Run the request to see the response here.
Related APIs
1688 Product Detail
Retrieve public 1688 product, SKU, pricing, logistics, and supplier details.
1688 Bestselling Products
Query 1688 bestseller charts for wholesale sourcing and product research.
1688 Product Search
Search 1688 wholesale products for sourcing, supplier discovery, and product selection across Alibaba’s domestic B2B marketplace.