Each pull becomes an updated leads.csv for Google Sheets with your notes kept, every lead scored Hot/Warm/Cold with reasons, quotation drafts with GST for matching products, reply drafts and a dated follow-up list.
Who it is for: Indian manufacturer, trader or distributor on an IndiaMART paid plan who gets 10-200 leads a week and tracks them in Excel, Google Sheets or a notebook.
Format: Claude skill pack · Version: 1.0.1 · Tested on: Python 3.13.5 (standard library only)
What it does
Leads are read from Pull API answers (or Push API bodies) and cleaned: escaped line breaks, query types (W, B, P, BIZ, WA) as plain labels, and quantity, unit and probable order value pulled out of the message. The same lead from overlapping pulls is kept once (UNIQUE_QUERY_ID); buyers are merged by mobile, or by email. Your earlier sheet is kept as it is, with your status, notes and extra columns; only new leads are added. Each lead starts at 30 points. Points are added or taken away for a direct enquiry or call, a catalogue match, a quantity given, being under your MOQ, the order value against your minimum, email and company given, a repeat buyer, being outside your delivery states or abroad, a one-line generic message, and your own rules. Hot is 70+, Warm 45-69, Cold under 45. New non-cold leads that match a product get a quotation draft at your price, never below your MOQ, with CGST+SGST for your own state and IGST for others. Follow-ups skip leads you marked won, lost, closed or spam. With --pull it calls the Pull API with your own key, one 7-day window per call, 5 minutes apart, for up to 365 days. The key is never printed or saved.
What you need
- An IndiaMART paid seller account with the Leads API (Pull API) add-on
- Claude.ai with code execution switched on (or Claude Code, or just Python 3.10+)
- Your product prices, MOQs and GST rates in a CSV
5-minute setup
- Claude.ai: open Settings → Capabilities → Skills, click Upload skill and pick
claude-ai-upload/indiamart-lead-catcher-pro.zip. - Claude Code: copy the folder
skills/indiamart-lead-catcher-prointo~/.claude/skills/. - Start a new chat. Attach your file and say: "Use indiamart-lead-catcher-pro. Add this week's IndiaMART pull to my sheet, score the leads against my catalogue and draft quotes for the hot ones".
- Claude runs the script and gives you the files listed under Outputs. Check them before you act on them.
Try it with the sample
Run the sample (two overlapping pulls for a fictional Gujarat packaging maker):
python3 skills/indiamart-lead-catcher-pro/scripts/core.py --leads samples/pull-2026-10-27-to-31.json samples/pull-2026-10-31-to-11-01.json --catalogue samples/catalogue.csv --rules samples/rules.csv --service-states "Gujarat,Maharashtra,Rajasthan,Madhya Pradesh,Punjab" --seller-state Gujarat --min-order-value 15000 --seller-name "Shree Packaging Industries" --out out
You should see 12 new leads (1 repeated lead dropped) from 10 buyers, 7 Hot, 3 Warm, 2 Cold, and 10 quotation drafts. The sample buyers, numbers and prices are fictional and GST rates are illustrative; use your own. In Claude, attach your saved pull and catalogue and use the prompt above.
Settings you can change
| Option | Default | What it is |
|---|---|---|
--leads |
(one or more) |
Pull API responses saved as .json, Push API bodies, or a leads.csv from an earlier run |
--master |
(optional) |
Your sheet downloaded as CSV; status, owner, notes, next_action, quoted_amount and your own columns are kept |
--pull |
(off) |
Call the IndiaMART Pull API with your own key from IM_PULL_KEY or --key-file; raw answers are saved in out/raw/ |
--since-days |
0 |
With --pull: fetch up to 365 past days in 7-day calls, 5 minutes apart |
--catalogue |
(optional) |
product, keywords, unit, unit_price, moq, gst_rate, lead_time_days, hsn |
--rules |
(optional) |
field, match (text or re: pattern), points, reason |
--service-states |
(all) |
Comma-separated states you deliver to |
--seller-state |
(none) |
Your GST state: same-state quotes show CGST+SGST, others IGST |
--min-order-value |
0 |
Leads under this order value lose points |
--no-export |
(off) |
Score leads from outside India as cold |
--seller-name |
`` | Name used to sign reply drafts |
--out |
out |
Output folder |
What goes in and what comes out
Inputs: IndiaMART Pull API answers saved as .json (or Push API bodies), or a live pull with your own key; Your sheet downloaded as CSV (optional); Your catalogue CSV: product, keywords, unit price, MOQ, GST rate, lead time, HSN; Delivery states, your GST state, minimum order value, export yes/no; optional scoring rules
Outputs: leads.csv and new-leads.csv (score, label, reasons, product match, all IndiaMART fields, your columns); buyers.csv: repeat buyers merged by mobile or email; follow-ups.csv: due date, overdue, action; quotes.csv, quotes/quote-
AI disclosure and limits
This product does not call an AI model at run time. It was built by Oarsman AI's AI agents and checked by the automated tests shipped with it.
Limits: - Needs IndiaMART's paid Leads API add-on; free IndiaMART accounts cannot get a Pull API key. - Writes CSV for Google Sheets or Excel; it does not write into Google Sheets for you or run on a schedule. - Never sends emails, SMS or WhatsApp messages; drafts only. - Scoring is points-based from your inputs, not a prediction; check Hot leads before you rely on it. - Quote drafts use your catalogue prices; freight, discounts and stock are not included. - Ratings, GST details and replies shown in Lead Manager are not in the API, so they are not here.
Not tested by us: - a live call to IndiaMART with a real key (the --pull code is tested against saved responses and a mocked server) - every message layout IndiaMART uses for buy-leads - Google Sheets import of files over 50,000 rows
Files
- oarsman-indiamart-lead-catcher-pro-v1.0.1.zip
- CHANGELOG.md
- QA-REPORT.json
- README.md
- SPEC.md
- SUPPORT.md
- TROUBLESHOOTING.md
- VERSION
- VIDEO-SCRIPT.md
- claude-ai-upload
- diagram.mmd
- diagram.png
- preview.png
- samples
- skills
- tests
Help
Self-serve: see TROUBLESHOOTING.md (fixes and FAQ). There is no call, chat or email support. Fixes ship as new versions at your download link. Refund: 14 days, works as described, through the checkout platform.