Amazon Data

Search Amazon products by keyword

Use to find products by keyword and filters. Rows are result snippets; for the authoritative record of one ASIN call product_details. Search Amazon products by keyword. Filters: page, sort_by, category_id (browse node), min_price / max_price (decimals), product_condition (NEW / USED / RENEWED), brand, seller_id, today_deals and deal_type (coupons, all_discounts, buy_more_save_more). Every answer carries filters_applied, filters_ignored (with the reason) and available_filters for that marketplace.

Price: $0.003 per call

Notes: Blank values and the literal string 'null' are treated as unset. Invalid page, sort_by, price, product_condition or deal_type is a free 400 naming the parameter and the allowed values. Condition and deal refinements are per marketplace; a marketplace that lacks one gets the unfiltered feed plus an entry under filters_ignored, never a silent empty page. product_num_ratings is an integer; offers_count is the "N offers" count a result card shows, an integer, and null when the card shows none (most cards; it used to default to 1); product_brand is the brand line Amazon prints above some titles (fashion and many branded listings) and null on cards without one -- product_details has brand_name for every ASIN; product_star_rating, product_price and product_original_price are decimal strings; a null field means Amazon did not show it. is_prime is true when the result carries a Prime badge or its delivery line offers Prime delivery. metadata.reachable_pages says how far page can go: Amazon serves at most 7 pages of a query even when metadata.total_pages counts more (then pagination_note says how to split the query). _links.next is the next page while there is one; a page past the end is a free 400 page_out_of_range. A full page is up to 48 results and about 54 KB; the tool returns the first 10 as light rows by default and the answer carries _truncated, _omitted_fields, _projection and _notes. filters_applied echoes the effective sort_by (RELEVANCE when none was sent). A BEST_SELLERS ordering is Amazon's query-scoped popularity, not a category rank: a row's badges / is_best_seller are what the result card showed for this query, and an ASIN that is #1 in its subcategory can carry no badge here while product_details reports best_seller=true with the rank. For a rank claim, use product_details or best_sellers. An empty products list is served as success only when Amazon itself reports 0 results (metadata.total is 0 and hint says so). Anything else that is not a usable result is an unbilled, retryable 503 with code upstream_unavailable.

get/search

Request

  • Base URL: https://dash.apiguru.app/api/v1
  • URL: https://dash.apiguru.app/api/v1/search
  • Auth: one of:
    • API key in header X-API-KEY
    • API key in query parameter api_key
    • none

Query parameters

querystring required

Search keywords. Required and must be non-empty.

pageinteger

Result page, 1-based. metadata.total_pages says how far it goes.

geo'US' | 'CA' | 'DE' | 'MX' | 'UK' | 'FR' | 'IT' | 'ES' | 'AU' | 'BR' | 'IN' | 'JP' | 'NL' | 'AE' | 'PL' | 'SA' | 'SG' | 'SE' | 'TR' | 'BE' | 'IE' | 'ZA' | 'EG'

Marketplace country code.

sort_by'RELEVANCE' | 'BEST_SELLERS' | 'LOW_HIGH_PRICE' | 'HIGH_LOW_PRICE' | 'REVIEWS' | 'NEWEST'

Result ordering.

category_idstring

Amazon browse node id to restrict to, e.g. 172282 (Electronics on US). Take one from a best_sellers answer's available_subcategories, a product's category_path, or node= in an Amazon URL. Ids differ per marketplace.

min_pricenumber

Lowest price, in the marketplace currency; decimals such as 19.99 are fine.

max_pricenumber

Highest price, in the marketplace currency.

product_condition'NEW' | 'USED' | 'RENEWED'

NEW, USED or RENEWED (case-insensitive). Applied with the marketplace's own condition node; where a marketplace does not offer one, the answer's filters_ignored says so and available_filters lists what it does offer.

brandstring

Brand name as Amazon spells it (case-insensitive), e.g. Samsung.

seller_idstring

Restrict results to one seller's offers: an Amazon seller id, 'A' followed by 9-20 letters and digits (e.g. A2A1RNLLUK3HYA).

today_dealsboolean

Only items in Today's Deals, using that marketplace's own refinement. Where a marketplace has none (amazon.fr on 2026-09-08) it is reported under filters_ignored.

deal_type'today_deals' | 'all_discounts' | 'coupons' | 'buy_more_save_more'

A specific promotion refinement: today_deals, all_discounts, coupons or buy_more_save_more. available_filters.deal_type lists the ones this marketplace has.

Response

Success.

object required

Changes

No recorded changes to this operation across all 1 revision of this API.