https://claw-callback.nexscope.ai/api/skill-api/v1/skills/reverse-product-image-search/runRun this API
Send a JSON request to execute this API and receive the direct response payload.
Endpoint
| Method | POST |
| Path | https://claw-callback.nexscope.ai/api/skill-api/v1/skills/reverse-product-image-search/run |
| Auth | Bearer API key |
| Content-Type | application/json |
Request body
| Name | Type | Required | Description |
|---|---|---|---|
imageUrl | string | required | Publicly accessible product image URL. Example: https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg |
amazonDomain | string | required | Amazon marketplace domain. Example: amazon.com |
topN | integer | optional | Maximum number of ranked matches to return after enrichment. Example: 20 |
sort | string | optional | Optional provider sort mode. Example: rating-desc-rank |
Request example
{
"imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg",
"amazonDomain": "amazon.com",
"topN": 20
}Response body
Returns ranked visual matches without local-file or intermediate-script output.
| Name | Type | Required | Description |
|---|---|---|---|
query | object | required | Normalized image-search query. Example: {} |
matches | array | required | Visually similar Amazon products, optionally enriched with marketplace metrics. Example: [] |
matches[].rank | integer | optional | Backend-normalized result rank. Example: 1 |
matches[].asin | string | optional | Amazon product ASIN. Example: B072MQ5BRX |
matches[].title | string | optional | Product title. Example: Example product |
matches[].imageUrl | string | optional | Matched product image URL. Example: https://example.com/image.jpg |
matches[].price | number | optional | Current marketplace price. Example: 29.99 |
matches[].rating | number | optional | Amazon rating. Example: 4.5 |
matches[].estimatedMonthlySales | integer | optional | Provider-estimated monthly sales when available. Example: 1200 |
caveats | array | optional | Limits on image similarity and provider estimates. Example: [] |
errcode | integer | optional | Upstream status code returned by the provider. |
errmsg | string | optional | Upstream status message returned by the provider. |
code | string | optional | Provider-specific status code. |
msg | string | optional | Provider-specific status message. |
message | string | optional | Provider-specific message. |
type | string | optional | Provider-specific render or payload type. |
title | string | optional | Provider-specific response title. |
sourceType | string | optional | Provider-specific source platform type. |
sourceTool | string | optional | Provider-specific source tool name. |
costToken | integer | optional | Token cost reported by the upstream provider. |
costTime | integer | optional | Execution time reported by the upstream provider. |
page | integer | optional | Current page returned by the upstream provider. |
pageSize | integer | optional | Page size returned by the upstream provider. |
pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. |
totalPage | integer | optional | Total page count returned by the upstream provider. |
dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. |
Response example
Direct response payload. No extra wrapper is added.
{
"query": {},
"matches": [
{
"rank": 1,
"asin": "B072MQ5BRX",
"title": "Example product",
"imageUrl": "https://example.com/image.jpg",
"price": 29.99,
"rating": 4.5,
"estimatedMonthlySales": 1200
}
],
"caveats": []
}Responses
| Code | Description |
|---|---|
| 200 | API executed successfully. Body is the direct response payload. |
| 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.