Amazon India Origin Products Scraper avatar

Amazon India Origin Products Scraper

Pricing

from $5.24 / 1,000 product extracteds

Go to Apify Store
Amazon India Origin Products Scraper

Amazon India Origin Products Scraper

Search Amazon India and export products explicitly disclosed as made in India, with ASINs, details, ratings, review counts, origin, and URLs.

Pricing

from $5.24 / 1,000 product extracteds

Rating

0.0

(0)

Developer

Automation Lab

Automation Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Search Amazon India and export only products whose public detail page explicitly identifies India as the country of origin.

This Actor turns Amazon products into a sourcing-ready dataset with ASIN, product title, description and feature bullets, price, rating, review count, manufacturer, country-of-origin evidence, search context, and canonical URL. It is designed for catalog teams that need origin-qualified records rather than an unverified keyword list.

What does Amazon India Origin Products Scraper do?

The Actor accepts Amazon.in search queries, Amazon.in product URLs, ASIN lists, or a mixture. URLs are inspected first, then ASINs, then searches. ASINs are normalized and deduplicated across all modes, including exhausted products; each is inspected at most once per run.

For a search query it:

  1. loads Amazon India search results using an India residential session;
  2. discovers product ASINs and search positions;
  3. opens each product detail page;
  4. reads the named Country of Origin specification;
  5. saves the product only when that field explicitly equals India.

For direct product URLs it applies the same strict detail-page check. A URL is not accepted merely because its title says “made in India.”

Who is it for?

  • Sourcing teams building shortlists of publicly disclosed India-origin products.
  • Marketplace analysts comparing assortment, ratings, and review signals by query.
  • Catalog operations teams enriching internal ASIN tables with origin and manufacturer fields.
  • Brands and distributors checking how relevant Amazon India listings disclose product origin.
  • Data engineers feeding normalized records into a spreadsheet, warehouse, database, or API.

Use Amazon Product Search Results Scraper when you need broad ranked Amazon search cards without detail-page origin qualification.

Why use origin-qualified Amazon products data?

Search text alone is noisy. Product titles may mention India, imported designs, or marketing terms without disclosing the manufacturing origin.

This Actor verifies the structured label on each public product detail page. The resulting dataset is smaller than a normal search export, but every emitted record carries the qualifying countryOfOrigin value and its source URL.

The Actor also preserves query and rank when a record came from search, so analysts can separate product qualification from search visibility.

What data is extracted?

FieldMeaning
asinAmazon Standard Identification Number
titleProduct title from the detail page
descriptionProduct description, or combined public feature bullets when no description block is present
featuresPublic “About this item” bullets
brandBrand when disclosed
price / priceTextNumeric and displayed INR price when available; detail price preferred, search-card fallback otherwise
priceSourcedetail, search, or null; search-card prices are discovery evidence, not a current detail quote
specificationsProduct-scoped raw {name, value} rows, at most 60; names capped at 120 and values at 1,000 characters
currencyINR
ratingCurrent displayed rating, nullable
reviewCountCurrent displayed rating/review count, or 0 when absent
countryOfOriginExact qualifying disclosure; emitted records contain India
manufacturerManufacturer disclosure when available
modelNameModel name or model number when available
imageUrlMain public image URL when available
searchQueryQuery that discovered the product, or null for a direct URL
searchRankObserved result-card position, or null for a direct URL
isSponsoredSponsored-card signal, or null for a direct URL
canonicalUrlNormalized Amazon.in /dp/<ASIN> URL
sourceUrlDetail URL inspected for the origin disclosure
scrapedAtISO 8601 collection timestamp

Missing optional fields are returned as null; a missing country-of-origin field causes the product to be excluded.

How to get started

  1. Open the Actor in Apify Console.
  2. Enter Search queries, Amazon.in ASINs, or Amazon.in product URLs (JSON strings or { "url": "..." } objects).
  3. Set Maximum matching products to the number of qualified records you want.
  4. Keep Maximum products to inspect high enough to allow non-matching products to be filtered out.
  5. Click Start.
  6. Open the default dataset to preview, download, or connect the results.

A useful first run is:

{
"searchQueries": ["steel water bottle made in India"],
"maxItems": 10,
"maxProductsToInspect": 50,
"maxPagesPerQuery": 2
}

Input parameters

searchQueries

A list of Amazon India keyword searches. Empty strings and duplicates are removed.

productUrls

Public HTTPS Amazon.in /dp/ or /gp/product/ URLs to verify directly, as strings or { "url": "..." } objects. Other marketplaces and non-product URLs fail validation instead of silently changing scope.

asins

Optional list of 10-letter/digit ASINs. Case is normalized to uppercase and whitespace trimmed. Uses the same India-origin verification, global limits, and retries as product URLs. Invalid ASINs fail clearly; this input does not enable another marketplace.

maxItems

Maximum accepted India-origin records. Range: 1–500. Default: 20.

maxProductsToInspect

Global maximum unique detail attempts, including failed and excluded products. Range: 1–2,000. An explicit value must be at least maxItems. When omitted: max(maxItems, min(100, max(20, 5 * maxItems))) — normally 100 at the default maxItems=20, 101 at maxItems=101, and 500 at maxItems=500. The editor prefill stays at 3 for its one-record example.

This is the main cost and runtime safety control because many search candidates may not disclose India as their origin.

maxPagesPerQuery

Maximum search pages loaded per query. Range: 1–20. Default: 3.

includeSponsored

When false, sponsored search cards are skipped before detail inspection. Direct product URLs are unaffected.

maxRequestRetries

Fresh India residential sessions attempted after a challenge, transient response, or incomplete page. Range: 1–8. Default: 4.

Output example

This shortened record comes from a real Amazon.in product page:

{
"asin": "B0CKYZWVZD",
"title": "Milton Sparkle 900 Thermosteel Water Bottle with Easy Sip Cap and Handle, 920 ml",
"description": "Color: Military Green; Material: Stainless Steel...",
"features": [
"Color: Military Green; Material: Stainless Steel...",
"High-Quality Materials: Vacuum insulated bottle..."
],
"brand": "MILTON",
"price": 980,
"priceText": "₹980.00",
"currency": "INR",
"rating": 4.3,
"reviewCount": 1115,
"countryOfOrigin": "India",
"manufacturer": "Hamilton Housewares P. Ltd.",
"modelName": "Sparkle 900,Military Green",
"searchQuery": "steel water bottle made in India",
"searchRank": 1,
"isSponsored": true,
"canonicalUrl": "https://www.amazon.in/dp/B0CKYZWVZD",
"sourceUrl": "https://www.amazon.in/dp/B0CKYZWVZD",
"scrapedAt": "2026-09-16T08:07:09.113Z"
}

Prices, ratings, reviews, search positions, and availability can change between runs.

How much does it cost to find India-origin Amazon products?

Pricing uses a $0.005 start charge plus one product event for each accepted India-origin record. Products inspected and rejected because origin is missing or not India do not create a product event, although their proxy and compute use still counts toward the run's platform usage.

Apify tierPrice per accepted product
FREE$0.010053
BRONZE$0.0087414
SILVER$0.0068183
GOLD$0.0052448
PLATINUM$0.0052448
DIAMOND$0.0052448

At BRONZE rates, 1 accepted product costs about $0.01374, 10 cost about $0.09241, and 100 cost about $0.87914, including one start event. Actual total can also include the normal Apify platform usage associated with your account and plan.

Control total work with maxProductsToInspect; maxItems controls accepted output, not the number of detail pages Amazon may need to serve before those matches are found.

Search, direct verification, and scheduled workflows

Use one focused query and export the default dataset to CSV or Excel.

Direct ASIN qualification

Send known ASINs through asins, for example { "asins": ["B0DCZH69PP"], "maxItems": 1, "maxProductsToInspect": 3 }, or use productUrls. Only products with explicit India origin evidence are returned.

Recurring assortment snapshot

Save an Actor task and schedule it in Apify. Store each run's dataset externally if you want to compare new, removed, or changed products over time. This Actor produces current snapshots; it does not maintain a historical database itself.

Data pipeline

Connect dataset webhooks, the Apify API, Make, Zapier, Google Sheets, or your own ETL job. Existing scalar fields remain typed for downstream loading; features and specifications are nested arrays, with explicit bounds on exported specifications.

Run from the Apify API with cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~amazon-india-origin-products/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchQueries": ["cotton bedsheet made in India"],
"maxItems": 20,
"maxProductsToInspect": 100,
"maxPagesPerQuery": 3
}'

Keep API tokens in environment variables or a secret manager.

Run with JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/amazon-india-origin-products').call({
searchQueries: ['steel water bottle made in India'],
maxItems: 10,
maxProductsToInspect: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Run with Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/amazon-india-origin-products').call(run_input={
'productUrls': [{'url': 'https://www.amazon.in/dp/B0CKYZWVZD'}],
'maxItems': 1,
'maxProductsToInspect': 1,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

Use with Apify MCP

Claude Code setup

Add this Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/amazon-india-origin-products"

Claude Desktop, Cursor, and VS Code setup

Claude Desktop, Cursor, and VS Code can use this HTTP MCP configuration:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/amazon-india-origin-products"
}
}
}

Example prompts:

  • “Search Amazon India for steel lunch boxes and return only products whose country of origin is India.”
  • “Verify whether these Amazon.in product URLs disclose India as their origin.”
  • “Create a small origin-qualified homeware dataset with ASIN, rating, reviews, and URL.”

Reliability and retry behavior

Amazon can return challenges or incomplete page variants. The Actor uses country-matched residential proxy sessions, keeps cookies and identity coherent, and rotates the complete session after a recognized failure.

Retries are bounded. An exhausted product does not prevent verification of later independent products. When requested details cannot be verified solely because of access or identity failures, the run fails even if search pages were reachable. Genuine recognized no-results searches and reachable details with missing/non-India origin remain valid empty results. A mismatched product identity is never treated as a confirmed origin negative.

Open Run completeness and diagnostics in the Output tab for RUN-SUMMARY. It records global inspected, verified, qualified, saved, excluded, failed, exhaustedSearch, exhaustedDetail, identityFailures, searchPages, pageLimitedQueries, requests, retries, and decoded responseBytes. Verified equals qualified plus excluded; inspected equals verified plus failed. Saved reflects stored output, which can be lower than qualified at a charge limit. Response bytes are decoded HTML size, not billed transfer bytes.

partial flags access failures or an early limit; useful saved rows are retained. stopReason is completed, max_items, inspection_limit, charge_limit, access_failures, search_page_limit, verification_failed, or error. pageLimitedQueries counts queries whose last allowed page contained product candidates without a higher-priority global stop. This conservatively marks unknown completeness even if pagination evidence is absent; no extra page is fetched to check. The counter persists across later queries, and partial remains true even when those queries finish naturally. Global charge/output/inspection limits and access failures take priority in stopReason; the counter still exposes prior page-cap truncation. A genuinely empty search page completes naturally without adding to this counter. Reaching a limit is not proof that all matching products were found. The product charge limit stops all subsequent searches, detail requests, writes and charges. Blocked verification is not a confirmed non-India finding.

Limits and data interpretation

  • Only public anonymous Amazon.in pages are supported.
  • The Actor does not log in, add delivery addresses, purchase products, or access personalized data.
  • It does not infer origin from brand, seller, title, address, or keywords.
  • It does not return products whose origin field is absent, ambiguous, or conflicting. India with a parenthetical qualifier is accepted, but any non-India product-scoped origin disclosure excludes the product.
  • Origin and specifications come only from recognized product-detail/overview tables and detail bullets, not recommendation tables, brand addresses, or title text. Unrecognized layouts may omit facts. Raw specifications are source disclosures, not normalized attributes or certifications; export truncation does not relax the origin check.
  • Search rank is an observed anonymous-session position, not a universal ranking.
  • Sponsored status reflects the search card at collection time.
  • Product variants may have different origin disclosures; the inspected detail variant is the evidence source.
  • Amazon may change HTML, availability, prices, ratings, and review counts.

Responsible use and legality

Use the Actor only for lawful purposes and public data you are permitted to collect. Review Amazon's terms, applicable database and consumer-protection rules, and local privacy law for your use case.

Country-of-origin disclosures are source-provided facts, not legal certificates. Validate important sourcing, customs, procurement, or compliance decisions with the manufacturer or qualified counsel.

This Actor is not affiliated with or endorsed by Amazon. It uses deterministic HTML parsing and does not send inputs or output to an AI provider. Run results remain in Apify storage under your account's retention and deletion settings. Failed operations send sanitized diagnostic input, exceptions and Actor/build/run IDs to our private GlitchTip service for repair. Secret fields and URL queries are removed; reports are retained for 30 days. Bounded request, decoded-byte, retry and outcome counters help investigate low-yield scans. No raw HTML, headers or cookies are sent.

Do not use the output to misrepresent origin, product safety, certification, or availability.

FAQ

Why did I receive fewer records than maxItems?

maxItems is a ceiling, not a guarantee. Many products do not disclose India as origin. Increase maxProductsToInspect, add another relevant query, or allow more search pages.

Why did the run return zero records successfully?

Check the logs for recognized pages and skipped ASINs. Zero is valid when the inspected public detail pages were reachable but none had an exact India disclosure.

Why did the run fail after retries?

No requested details could be verified because of exhausted access or identity checks, or input validation failed. Check RUN-SUMMARY and the log. Retry later with a smaller inspection cap. Increasing retries may increase residential transfer without guaranteeing recovery.

Why is a known product absent?

Its current detail variant may omit origin, show another country, or no longer be reachable. Submit its canonical Amazon.in URL directly to isolate the check.

Can I search other Amazon marketplaces?

No. This Actor deliberately supports Amazon.in and verifies the India-specific public detail disclosure. Use the related general search Actor for broad multi-marketplace cards.

Troubleshooting

When a run fails, open its log and identify whether validation rejected the input or every bounded Amazon request was challenged. For valid zero-output runs, compare maxProductsToInspect with the number of skipped ASINs. Share the run URL and first relevant warning with support; never share your API token.

Support

For reproducible help, include the run URL, sanitized input, expected product or query, and the first relevant warning from the run log. Do not include API tokens, account cookies, or private customer data.