Nexscope

Amazon Search By Image

Find visually similar Amazon products from an image URL across eight marketplaces, with optional sales-data enrichment. Call it via REST API or MCP.

CostRecent 32 credits / call
Try online
POST · https://api.nexscope.ai/amazon/searchByImageMCP · nexscope_amazon_search_by_image

What this API does

Find visually similar Amazon products from an image URL across eight marketplaces, with optional sales-data enrichment. The request accepts imageUrl, amazonDomain, sort, deliveryZip, countryOrAreaCode. Its documented result includes totalCount, perPage, currentPage, sourceType, products, asin, title, imageUrl.

Amazon Search By Image API use cases

Find products matching a sourcing brief

To find products matching a sourcing brief, a marketplace analyst submits imageUrl and amazonDomain to Amazon Search By Image. The returned totalCount, perPage, currentPage help identify products matching the requested search criteria.

Compare a product search shortlist

A marketplace analyst uses Amazon Search By Image with imageUrl and amazonDomain to compare a product search shortlist. The returned totalCount, perPage, currentPage help compare candidates before requesting individual product details.

Collect candidates for a market review

For this workflow, a marketplace analyst calls Amazon Search By Image with imageUrl and amazonDomain to collect candidates for a market review. The result helps choose products for a supplier or competitor review.

Amazon Search By Image API FAQ

What does the Amazon Search By Image API return?

Find visually similar Amazon products from an image URL across eight marketplaces, with optional sales-data enrichment. The documented output includes totalCount, perPage, currentPage, sourceType, products, asin, title, imageUrl. It corresponds to the supplied imageUrl, amazonDomain, sort, deliveryZip, countryOrAreaCode. Optional fields can be absent; a missing value should not be interpreted as a measured zero. Example values illustrate the response shape, rather than live account results.

How many credits does the Amazon Search By Image API cost?

The current documented cost is Recent 32 credits / call. This is the same cost shown at the top of this page. If a range or estimate is displayed, the final charge depends on the request. Review your available credits and the pricing page before calling the API, and check API usage records for the actual charge.

How do I call the Amazon Search By Image API from my app or an MCP client?

Send a POST request to https://api.nexscope.ai/amazon/searchByImage with your API key as a Bearer token and the JSON inputs shown in API integration. In a compatible MCP client such as Claude or Cursor, connect Nexscope and call nexscope_amazon_search_by_image. Use the MCP arguments shown in the MCP guide, or switch Online test to MCP to review its request before adding it to your app.

View plans and creditsConnect this API with MCP

Try this API
Endpoint
https://api.nexscope.ai/amazon/searchByImage
MCP method
nexscope_amazon_search_by_image

Step 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-xxxxxxxxxxxxxxxxx
Missing or invalid API keys return an authentication error. Manage keys from .

Step 2 of 3 · Send a request

POSThttps://api.nexscope.ai/amazon/searchByImage

Run an API

Send a JSON request body using the parameters described below.

Example request

Replace YOUR_API_KEY, then run this command in your terminal.

curl -X POST 'https://api.nexscope.ai/amazon/searchByImage' \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "amazonDomain": "amazon.com",
  "imageUrl": "https://m.media-amazon.com/images/I/61pAlIX8SZL._AC_SY575_.jpg",
  "sort": "default"
}'

Code example

{
  "amazonDomain": "amazon.com",
  "imageUrl": "https://m.media-amazon.com/images/I/61pAlIX8SZL._AC_SY575_.jpg",
  "sort": "default"
}

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

CodeDescription
200Default HTTP response for both success and many business errors. Only outer JSON code 0 indicates success or asynchronous acceptance; inspect data for the result.
429Execution admission rate limit; honor Retry-After when present.
503Execution admission is temporarily unavailable; honor Retry-After when present.
Opt-inX-Nexscope-Http-Status: semantic maps controller-handled business errors to HTTP status on run and task routes. Pre-authentication failures, such as a missing or invalid API key (code 11209, including an incomplete or corrupted copy) or an expired website login session (code 12001), may still return HTTP 200 before this mapping. Always check the outer JSON code; malformed requests and infrastructure failures may also return non-200 HTTP responses.
All categories/ Amazon Public Marketplace Data
POSThttps://api.nexscope.ai/amazon/searchByImage

Run this API

Send a JSON request to execute this API and receive the documented response payload.

Endpoint

MethodPOST
Pathhttps://api.nexscope.ai/amazon/searchByImage
AuthBearer API key
Content-Typeapplication/json

Request parameters

NameTypeRequiredDescription
imageUrlstringrequired
Valid image URL, maximum length 1000.
amazonDomainstringrequired
Site: `amazon.com`, `amazon.co.uk`, `amazon.de`, `amazon.fr`, `amazon.it`, `amazon.es`, `amazon.co.jp`, `amazon.in`.
sortstringoptional
`default`, `price-asc-rank`, `price-desc-rank`, `rating-asc-rank`, `rating-desc-rank`, `ratings-asc-rank` or `ratings-desc-rank`.
Example: default
deliveryZipstringoptional
The postal code or city of the delivery address on the site, the maximum length is 1000. The default postal codes of each site: `10001` in the United States, `EC1A 1BB` in the United Kingdom, `10115` in Germany, `75001` in France, `00100` in Italy, `28001` in Spain, `100-0001` in Japan, and `110034` in India.
countryOrAreaCodestringoptional
Off-site shipping country code, e.g. `CN`, `JP`, `KR`, `TW`, `HK`, `MO`, `SG`, `TH`, `VN`, `PH`, `MY`; cannot be specified at the same time as the postal code in the site, and the Indian site does not support it. Maximum length 1000.
aggregateByKeepaDatabooleanoptional
Whether to aggregate KP data, including sales ranking, monthly sales, FBA fees and sizes, etc.
responseFormatstringoptional
raw (default) returns the provider result; matches forces enrichment and returns ranked matches.
Example: raw
topNintegeroptional
Maximum matches in matches mode, clamped to 1-100; default 20.
Example: 20

Response example

Platform response envelope. code 0 indicates success or acceptance; data contains the business result.

No response example is published for this API. Refer to the response fields below.

Response fields

responseFormat=raw (default) returns provider product fields; matches returns query, ranked matches, and caveats.

NameTypeRequiredDescription
caveatsarrayoptional
Caveats value used by this API operation.
caveats[]stringrequired
Item in caveats.
matchesarrayoptional
Ranked visual matches with optional provider enrichment.
matches[]objectrequired
Item in matches.
matches[].asinstringoptional
Asin value used by this API operation.
matches[].estimatedMonthlySalesintegeroptional
Estimated monthly sales value used by this API operation.
matches[].imageUrlstringoptional
Image url value used by this API operation.
matches[].pricenumberoptional
Price value used by this API operation.
matches[].rankintegeroptional
Rank value used by this API operation.
matches[].ratingnumberoptional
Rating value used by this API operation.
matches[].titlestringoptional
Title value used by this API operation.
queryobjectoptional
Normalized image search query in matches mode.

Additional documented fields

NameTypeRequiredDescription
totalintegeroptional
Total number of rows.
Example: null
totalCountintegeroptional
Total quantity.
Example: null
perPageintegeroptional
Quantity per page.
Example: null
currentPageintegeroptional
Current page number.
Example: null
typestringoptional
Rendering style.
Example: null
sourceTypestringoptional
Source type.
Example: null
columnsarrayoptional
Rendered columns.
Example: null
costTokenintegeroptional
Consume Token.
Example: null
productsarrayoptional
Product list.
Example: null
asinstringoptional
ASIN。
Example: null
titlestringoptional
Product title
Example: null
imageUrlstringoptional
Image URL, that is, the request address.
Example: null
asinUrlstringoptional
Amazon ASIN details URL.
Example: null
pricenumberoptional
The current price, in the corresponding currency.
Example: null
oldPricenumberoptional
Underline price.
Example: null
currencystringoptional
Currency.
Example: null
ratingnumberoptional
Current rating, range 0.0–5.0.
Example: null
ratingsintegeroptional
Number of ratings.
Example: null
brandstringoptional
brand.
Example: null
sourceTypestringoptional
Source type.
Example: null
salesRankintegeroptional
Sales Ranking (KP).
Example: null
salesRank30integeroptional
Average sales ranking (KP) over the past 30 days.
Example: null
salesRank90integeroptional
Average sales ranking (KP) over the past 90 days.
Example: null
salesRank180integeroptional
Average sales ranking (KP) over the past 180 days.
Example: null
monthlySalesUnitsintegeroptional
Monthly sales volume (KP).
Example: null
monthlySalesRevenuenumberoptional
Monthly sales.
Example: null
reviewCountintegeroptional
Number of comments (KP).
Example: null
fbaFeesnumberoptional
FBA delivery fee, the unit is the corresponding currency.
Example: null
profitnumberoptional
Profit percentage percentage, for example 25.5 means 25.5%.
Example: null
referralFeePercentagenumberoptional
Referral fee percentage.
Example: null
fulfillmentstringoptional
Delivery method: `AMZ`, `FBA`, `FBM`.
Example: null
primePricenumberoptional
Prime Price.
Example: null
buyBoxSellerIdstringoptional
Buy button seller ID.
Example: null
sellerNumintegeroptional
Number of sellers.
Example: null
variationNumintegeroptional
Number of variants.
Example: null
parentAsinstringoptional
Parent ASIN.
Example: null
availableDatestringoptional
Shelf time, in the format of `yyyy-MM-dd HH:mm:ss`.
Example: null
lastUpdatestringoptional
Last updated time, in the format of `yyyy-MM-dd HH:mm:ss`.
Example: null
manufacturerstringoptional
manufacturer.
Example: null
modelstringoptional
model.
Example: null
colorstringoptional
color.
Example: null
materialstringoptional
Product material.
Example: null
weightstringoptional
Weight in grams.
Example: null
dimensionstringoptional
size.
Example: null
itemLengthintegeroptional
Product length in millimeters; 0 or -1 if not available.
Example: null
itemWidthintegeroptional
Product width in millimeters; 0 or -1 if not available.
Example: null
itemHeightintegeroptional
Product height in millimeters; 0 or -1 if not available.
Example: null
packageLengthintegeroptional
Package length in millimeters.
Example: null
packageWidthintegeroptional
Package width in millimeters.
Example: null
packageHeightintegeroptional
Package height in millimeters.
Example: null
packageWeightstringoptional
Packaging weight in grams.
Example: null
packageDimensionsstringoptional
Packaging size.
Example: null
packageQuantityintegeroptional
Number of items in the package; 0 or -1 if not available.
Example: null
dimensionsTypestringoptional
Size type.
Example: null
categoryTreestringoptional
Category tree.
Example: null
categoryTreeIdstringoptional
Category tree ID.
Example: null
rootCategoryintegeroptional
Root category ID.
Example: null
isAdultProductbooleanoptional
Whether it is an adult product.
Example: null
isHazmatbooleanoptional
Whether it is dangerous goods.
Example: null
urlSlugstringoptional
URL Slug。
Example: null
productImageUrlsarrayoptional
List of product images.
Example: null

Responses

CodeDescription
200Default HTTP response for both success and many business errors. Only outer JSON code 0 indicates success or asynchronous acceptance; inspect data for the result.
429Execution admission rate limit; honor Retry-After when present.
503Execution admission is temporarily unavailable; honor Retry-After when present.
Opt-inX-Nexscope-Http-Status: semantic maps controller-handled business errors to HTTP status on run and task routes. Pre-authentication failures, such as a missing or invalid API key (code 11209, including an incomplete or corrupted copy) or an expired website login session (code 12001), may still return HTTP 200 before this mapping. Always check the outer JSON code; malformed requests and infrastructure failures may also return non-200 HTTP responses.

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 recommended

Connect 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/mcp
MCP-Protocol-Version: 2025-11-25
Content-Type: application/json
Authentication

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_amazon_search_by_image",
    "arguments": {
      "aggregateByKeepaData": false,
      "amazonDomain": "amazon.com",
      "imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg"
    }
  }
}

Legacy MCP v1

Existing API-key clients can continue using the compatibility endpoint. New integrations should use MCP v2.

GET / POST /mcp/legacy

What can you do with this API?

Data explained and practical use cases

AI Guide

Question

What data can Amazon Search By Image provide, and how might I use it?

AI answer

Amazon Search By Image looks for visually similar products using a publicly accessible image URL on a selected Amazon marketplace. The returned products can include listing details and, when requested and available, additional sales and product data.

Data categoryDocumented fieldsWhat the values mean
Visual matchesproducts, asin, title, imageUrl, productImageUrls, asinUrlMatching product identifiers, names, images, and Amazon detail links when present.
Price and feedbackprice, oldPrice, currency, rating, ratingsListed prices, currency, customer rating, and rating count. Prices are observations from the returned listings.
Sales observationssalesRank, salesRank30, salesRank90, salesRank180, monthlySalesUnits, monthlySalesRevenueOptional rank and monthly sales figures, including rank averages over the named periods.
Seller and fulfillmentfulfillment, fbaFees, referralFeePercentage, buyBoxSellerId, sellerNum, primePriceOptional delivery method, fee figures, Buy Box seller identifier, seller count, and Prime price.
Product attributesbrand, manufacturer, model, color, material, dimension, weight, categoryTreeDescriptive details that can help assess whether a visual match is the same kind of item.
Variants and dimensionsparentAsin, variationNum, itemLength, itemWidth, itemHeight, packageLength, packageWidth, packageHeightOptional variant relationships and item or package measurements; documented item dimensions can use 0 or -1 when unavailable.
  • Submit a product photo to find similar Amazon listings and open their asinUrl links for closer inspection.
    • Prompt example: “I sell products on Amazon. Could you submit a product photo to find similar Amazon listings and open their asinUrl links for closer inspection? Show matching records and source links where the API provides them; ask me for any required identifier or filter.”
  • Compare the listed prices, ratings, and rating counts of visually similar products in a selected marketplace.
    • Prompt example: “I sell products on Amazon. Could you compare the listed prices, ratings, and rating counts of visually similar products in a selected marketplace? Show the returned values behind the comparison, and mark missing data.”
  • Check colors, materials, dimensions, and variants to distinguish lookalike items.
    • Prompt example: “I sell products on Amazon. Could you check colors, materials, dimensions, and variants to distinguish lookalike items? Show the relevant returned evidence and tell me what input you need from me.”
  • Request enrichment to compare available sales ranks, monthly sales figures, seller counts, or FBA fees for the matches.
    • Prompt example: “I sell products on Amazon. Could you request enrichment to compare available sales ranks, monthly sales figures, seller counts, or FBA fees for the matches? Show the returned values behind the comparison, and mark missing data.”
  • Choose a supported marketplace and delivery setting to inspect results relevant to that shopping location. Enriched fields may be missing; the documentation does not establish complete coverage.
    • Prompt example: “I sell products on Amazon. Could you choose a supported marketplace and delivery setting to inspect results relevant to that shopping location? Show the relevant returned evidence and tell me what input you need from me.”