TradeIndia Buyer Requirements & Buy Leads Scraper
Pricing
from $17.00 / 1,000 results
TradeIndia Buyer Requirements & Buy Leads Scraper
Scrape TradeIndia buyer requirements and buy leads: requirement title and description, quantity, buyer name and company, phone, city, state, country and posted date. Search by product keyword and filter by buyer country. Export to JSON, CSV or Excel.
Pricing
from $17.00 / 1,000 results
Rating
5.0
(1)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
18 days ago
Last modified
Categories
Share
TradeIndia Buyer Requirements & Buy Leads Scraper
Here is one real result, with every field the actor returns:
{"title": "cotton shirting fabric","requirement": "Buyer is looking for 'cotton shirting fabric'","quantity": null,"deliveryPlace": null,"buyerName": "Mr. Sunny Nayani","buyerCompany": "HARE KRISHNA ENVIROMENT LLP","buyerPhone": "+917203961706","buyerEmail": "sunnynayani18@gmail.com","city": "Ankleshwar","state": "Gujarat","country": "India","countryCode": "in","postedDate": "10 August 2026","memberSince": "2","buyerFeedback": 0,"categoryId": 685,"leadId": "17903265","searchQuery": "cotton","url": "https://www.tradeindia.com/buyoffer/17903265/cotton-shirting-fabric.html","source": "TradeIndia","observedAt": "2026-08-10T14:29:20.099Z"}
The most complete TradeIndia buyer requirements scraper available. It returns every field the buy-lead search exposes for each requirement, including the buyer's name, company, phone and email when the source shows them, and gives you a product search plus a buyer-country filter to target exactly the buy leads you need.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor searches TradeIndia's buyer requirements (buy leads) for each product keyword you pass, paginates through the matching leads, and writes one normalized record per requirement to the run's dataset. Each record carries the requirement title and description, the quantity and delivery place when stated, and the buyer's contact block: name, company, phone, email, city, state, country and the date the requirement was posted.
TradeIndia auto-generates placeholder company names for some accounts; those are normalized to null rather than returned as a fake company. Missing source values are returned as null; nothing is invented. An optional paid contact-enrichment add-on can attempt to find a public business email and contact person for buyers who ship without an email.
Quickstart
Open the actor, paste this into the input, and press Run. It returns up to 10 buyer requirements for cotton and rice.
{"searchQueries": ["cotton", "rice"],"maxRequirements": 10}
At least one searchQueries entry is required. Add countries (ISO codes) to restrict buyers by country. Leave the enrichment add-on off for the fastest, cheapest run.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
searchQueries | string[] | yes | ["cotton","rice"] | Product keywords to find buyer requirements for, for example cotton, rice, led lights. One run searches every keyword. |
countries | string[] | no | (all) | Restrict buyers by 2-letter ISO country code, for example in, us, ae. Empty includes buyers from all countries. |
maxRequirements | integer | no | 10 | Maximum buyer requirements to collect across all queries. Free plans are capped at 10. |
enrichContacts | boolean | no | false | Paid add-on. For each buyer without an email, attempt to find a public business email and contact person. Billed per attempt plus an extra charge only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the add-on tries to enrich. Free accounts are capped at 3. |
Output reference
One dataset item per buyer requirement. Types: string, integer, or null when the source value is absent. Fields prefixed enriched only appear when the contact-enrichment add-on is enabled and returns a value.
| Field | Type | Description |
|---|---|---|
title | string | Product / requirement title the buyer is looking for. |
requirement | string | Full buyer requirement description. |
quantity | string | Quantity required, when stated, else null. |
deliveryPlace | string | Buyer delivery location, when stated, else null. |
buyerName | string | Name of the buyer. |
buyerCompany | string | Buyer company name, or null when only a placeholder is present. |
buyerPhone | string | Buyer contact phone number. |
buyerEmail | string | Buyer contact email, when the source shows it. |
city | string | Buyer city. |
state | string | Buyer state / region. |
country | string | Buyer country. |
countryCode | string | Buyer country ISO code. |
postedDate | string | Date the requirement was posted. |
memberSince | string | Buyer member-since value, when available. |
buyerFeedback | integer | Buyer feedback score, or null. |
categoryId | integer | TradeIndia category id. |
leadId | string | Buy lead id. |
searchQuery | string | Search keyword that produced this record. |
url | string | Buyer requirement detail page URL. |
source | string | Always TradeIndia. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
enrichedEmail | string | Add-on: found public business email. |
enrichedContactName | string | Add-on: found contact person name. |
enrichedJobTitle | string | Add-on: found contact job title. |
enrichedEmailStatus | string | Add-on: email verification status. |
enrichedSource | string | Add-on: source URL of the found contact. |
enrichedConfidence | number | Add-on: confidence score of the match. |
error | string | Present only on a failed run: a single item with a populated error field is written and not charged. |
Example output record
Real record from a live run (input {"searchQueries":["cotton","rice"],"maxRequirements":10}):
{"title": "cotton shirting fabric","requirement": "Buyer is looking for 'cotton shirting fabric'","quantity": null,"deliveryPlace": null,"buyerName": "Mr. Sunny Nayani","buyerCompany": "HARE KRISHNA ENVIROMENT LLP","buyerPhone": "+917203961706","buyerEmail": "sunnynayani18@gmail.com","city": "Ankleshwar","state": "Gujarat","country": "India","countryCode": "in","postedDate": "10 August 2026","memberSince": "2","buyerFeedback": 0,"categoryId": 685,"leadId": "17903265","searchQuery": "cotton","url": "https://www.tradeindia.com/buyoffer/17903265/cotton-shirting-fabric.html","source": "TradeIndia","observedAt": "2026-08-10T14:29:20.099Z"}
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~tradeindia-buyers-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"searchQueries":["cotton"],"countries":["in"],"maxRequirements":25}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~tradeindia-buyers-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"searchQueries":["led lights","rice"],"maxRequirements":100}'
Apify CLI:
apify call scrapers_lat/tradeindia-buyers-scraper \--input '{"searchQueries":["cotton"],"maxRequirements":10}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per buyer requirement returned (
resultevent). See the pricing tab for the current per-result price. - Contact enrichment add-on. When
enrichContactsis on, each attempt is billed, with an extra charge only when an email is found. The add-on never charges when it finds nothing. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 requirements per run (and 3 enrichment attempts). Upgrade for higher limits.
FAQ and troubleshooting
A run returned 0 records. Why?
The keyword matched no active buyer requirements, or the countries filter excluded everything. Try a broader product keyword or remove the country filter. Zero-result runs are not charged.
Do I get the buyer's phone and email? Yes, when TradeIndia exposes them on the lead. Phone is present on most rows; email is present on many. Use the enrichment add-on to fill missing emails.
Why is buyerCompany null?
The account uses an auto-generated placeholder company name rather than a real one. The actor returns null instead of the placeholder.
Can I search multiple products at once?
Yes. Pass several keywords in searchQueries; the run collects requirements across all of them up to maxRequirements.
Is this an official TradeIndia tool? No. This actor is independent and has no affiliation with TradeIndia. It reads only data that is publicly visible on buyer requirement pages. All trademarks belong to their owners.
Related scrapers
- TradeIndia Suppliers Scraper: TradeIndia supplier and product listings with contacts.
- 1688 Wholesale Scraper: 1688 wholesale product and supplier data.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with TradeIndia. Accesses only publicly available buyer requirement data. All trademarks belong to their owners.
