KisanShop APIkisanshop.in ↗
Search and browse KisanShop's catalogue of fertilizers, seeds, and crop protection products. Get names, brands, prices, pack sizes, and composition data.
What is the KisanShop API?
The KisanShop API gives developers programmatic access to the kisanshop.in product catalogue across 3 endpoints, returning fields like price, MRP, brand, pack-size variants, category, and product slug. Use search_products to query the full catalogue by keyword, list_category_products to page through a category such as fertilizers, or get_product to pull complete detail for a single item by its slug.
curl -X GET 'https://api.parse.bot/scraper/947e380e-cc59-4c19-be65-a147e1233553/list_category_products?category=fertilizers' \ -H 'X-API-Key: $PARSE_API_KEY'
Lists products in one KisanShop browse category (for example fertilizers), 24 products per call, in the site's own order unless a sort is chosen. Each product carries its name, slug, URL, image, current price and MRP for the default pack, discount label, and every pack-size variant with its own price, MRP and stock count. Pagination is by offset: omit or pass 0 for the first 24 products, then pass the returned next_offset until has_more is false (next_offset is null on the last page). Optional brand filter accepts one or more exact brand names as shown in the site's filter panel, comma-separated; a brand the site does not know yields an empty list. Sort values price_desc, name_asc and name_desc are honored by the site; price_asc is accepted but the site currently returns its default order for it. An unknown category slug returns a not-found error; an empty products array is a valid result for a filter with no matches.
| Param | Type | Description |
|---|---|---|
| sort | string | Result ordering. Omitted = site default order. |
| brand | string | Comma-separated exact brand names to restrict results to (e.g. Aries Agro,Katyayani). Omitted = all brands. |
| offset | integer | Zero-based index of the first product to return; pass the previous response's next_offset to continue. Pages are 24 products. |
| categoryrequired | string | Category slug as it appears in the site's browse path, e.g. fertilizers (lowercase, hyphen-separated). |
{
"type": "object",
"fields": {
"count": "number of products in this page",
"offset": "offset used for this page",
"category": "echo of the requested category slug",
"has_more": "boolean, true when another page exists",
"products": "array of product cards: product_id (string), name, slug, url, image, price (number, default pack), mrp (number or null), discount_label (string like '5% OFF' or null), pack_size (default pack), pack_sizes (all pack names), variants (array of {variant_id, pack_size, price, mrp, inventory})",
"next_offset": "offset to request next, or null when has_more is false"
},
"sample": {
"data": {
"count": 24,
"offset": 0,
"category": "fertilizers",
"has_more": true,
"products": [
{
"mrp": 70,
"url": "https://www.kisanshop.in/product/agrocel-mahalaabh-zobo",
"name": "Agrocel Mahalaabh ZoBo - Water Soluble Fertilizer",
"slug": "agrocel-mahalaabh-zobo",
"image": "https://www.kisanshop.in/uploads/agrocel-mahalaabh-zobo",
"price": 70,
"variants": [
{
"mrp": 70,
"price": 70,
"inventory": 8,
"pack_size": "200 gm",
"variant_id": 21564
},
{
"mrp": 300,
"price": 293,
"inventory": 894,
"pack_size": "1 kg",
"variant_id": 19244
}
],
"pack_size": "200 gm",
"pack_sizes": [
"200 gm",
"1 kg",
"1 kg x 2"
],
"product_id": "8192",
"discount_label": null
}
],
"next_offset": 24
},
"status": "success"
}
}About the KisanShop API
Endpoints and What They Return
list_category_products accepts a required category slug (e.g. fertilizers) and returns up to 24 product cards per call. Each card includes product_id, name, slug, url, image, price and mrp for the default pack, a discount_label, and every available pack-size variation. Supply offset (zero-based) with the previous response's next_offset to walk through additional pages; the has_more boolean tells you when more results exist. Optional brand accepts comma-separated exact brand names such as Aries Agro,Katyayani to narrow results, and sort controls ordering.
Full-Text Search
search_products searches the entire KisanShop catalogue — fertilizers, crop protection, seeds, tools, and more — by keyword. In addition to product cards, each response includes a categories array of {id, name} facets and a brands array you can pass back into the category or brand parameters to narrow subsequent calls. The match_mode field reflects the site's own matching mode label (e.g. strict) for the result set. Pagination works identically to list_category_products via offset and next_offset.
Product Detail
get_product takes a single slug (from either listing endpoint) and returns the full product record: name, brand, price, mrp, sku, image, url, rating, and category (the last breadcrumb node). The brand field is drawn from the product's specification table; where that is absent the site's own structured data is used, which may return Generic. rating is a numeric average or null when no reviews are present.
The KisanShop API is a managed, monitored endpoint for kisanshop.in — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when kisanshop.in changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official kisanshop.in API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track price and MRP changes for fertilizer SKUs across pack-size variants over time.
- Build a product comparison tool for crop protection chemicals using brand, price, and composition data.
- Aggregate seed and fertilizer availability by category to power an agri-input procurement dashboard.
- Monitor discount labels on specific brands like Aries Agro to alert buyers when promotions are active.
- Index KisanShop's catalogue by keyword for a regional agricultural e-commerce search engine.
- Extract SKU codes and category breadcrumbs to map KisanShop listings against an internal product master.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does KisanShop offer an official developer API?+
How do I filter `list_category_products` to a specific brand?+
brand parameter, for example Aries Agro,Katyayani. You can find accepted brand name strings in the brands array returned by search_products for the same keyword, then reuse those values in listing calls.Does `get_product` return customer reviews or review text?+
rating (average score) or null when no rating is present. Individual review text, reviewer names, and review counts are not currently returned. You can fork this API on Parse and revise it to add a reviews endpoint for a given product slug.Are seller information or stock availability fields exposed?+
What happens when a category or search query returns no products?+
list_category_products and search_products both return an empty products array with count set to 0 and has_more set to false. For search, the categories and brands arrays will also be empty, and match_mode may be null.