Agro Sathi API
🌾
v1.0 — Production Ready

Agro Sathi
Advisory API

Weekly crop advisory data for West Bengal — sourced from IMD, structured, bilingual, and ready to integrate into your agri-tech product.

6
Agro Zones
23
Districts
2
Languages
~1s
Response Time

Overview

The Agro Sathi API provides structured weekly crop advisory data for West Bengal, sourced from the India Meteorological Department (IMD). Data includes crop-specific advisories, growth stage, and weather impact — available in both English and Bengali.

Updated every week automatically. Query by date, zone, or district. Built for agri-tech apps, precision farming platforms, and government portals.

ℹ️ All responses include requested_date and bulletin_date — so you always know which bulletin was returned and why, even when nearest-date resolution is applied.

Authentication

All requests must include your API key in the request header. Never pass it as a query parameter.

http
x-api-key: ask_live_your_key_here
⚠️ Keep your API key secret. Do not expose it in frontend code or public repositories. To get a key, contact contact@agro-sathi.in

Base URL

All endpoints are relative to this base URL. Current version is v1.

BASEhttps://agro-sathi-app.vercel.app/api/v1

Quickstart

Get the latest crop advisory for Nadia district in under a minute.

bash
curl -H "x-api-key: ask_live_your_key" \
  "https://agro-sathi-app.vercel.app/api/v1/bulletin?date=latest&district=nadia&lang=en"

Endpoints

All data is served through a single flexible endpoint.

GET/bulletin

Fetch crop advisory bulletin. Returns full bulletin, zone-specific, or district-specific data based on parameters.

Query Parameters

ParamTypeRequiredDescription
datestringoptionalYYYY-MM-DD or latest. Defaults to latest. Returns nearest bulletin on or before the given date.
districtstringoptionalDistrict ID e.g. nadia, darjeeling. Cannot be used with zone.
zonestringoptionalZone ID e.g. GAZ, NHZ. Cannot be used with district.
langstringoptionalen, bn, or all. Defaults to all.
⚠️ zone and district cannot be used together. Use one or the other.

Response — By District

json
{
  "success": true,
  "district": {
    "id": "nadia",
    "zone_id": "GAZ"
  },
  "crops": [
    {
      "crop_id": "boro-rice",
      "crop": { "en": "Boro Rice", "bn": "বোরো ধান" },
      "stage": { "en": "Transplantation", "bn": "রোপণ" },
      "impact": { "en": "Brown Spot risk", "bn": "বাদামি দাগ" },
      "advisory": {
        "en": "Apply FYM before transplanting...",
        "bn": "রোপণের আগে জৈব সার প্রয়োগ..."
      }
    }
  ],
  "meta": {
    "requested_date": "2026-02-27",
    "bulletin_date": "2026-02-27",
    "week": "27 February, 2026 - 03 March, 2026",
    "note": "Exact bulletin found",
    "total_crops": 4,
    "lang": "all",
    "requested_at": "2026-03-01T10:00:00.000Z"
  }
}

Response — Full Bulletin

json
{
  "success": true,
  "zones": {
    "GAZ": [ /* array of crops */ ],
    "NHZ": [ /* array of crops */ ],
    "TTAZ": [ /* array of crops */ ],
    "VAZ": [ /* array of crops */ ],
    "RLZ": [ /* array of crops */ ],
    "CSZ": [ /* array of crops */ ]
  },
  "meta": {
    "requested_date": "latest",
    "bulletin_date": "2026-02-27",
    "week": "27 February, 2026 - 03 March, 2026",
    "note": "Exact bulletin found",
    "total_zones": 6,
    "lang": "all",
    "requested_at": "2026-03-01T10:00:00.000Z"
  }
}

Zones & Districts

West Bengal is divided into 6 agro-climatic zones. Each district belongs to exactly one zone. When querying by district, the zone is resolved automatically.

NHZ
Northern Hill Zone
Darjeeling, Kalimpong
TTAZ
Terai-Teesta Alluvial Zone
Alipurduar, Cooch Behar, Jalpaiguri, Uttar Dinajpur
VAZ
Vindhyan Alluvial Zone
Dakshin Dinajpur, Malda
GAZ
Gangetic Alluvial Zone
Hooghly, Howrah, Kolkata, Murshidabad, Nadia, North 24 Parganas, Paschim Bardhaman, Purba Bardhaman
RLZ
Undulating Red & Laterite Zone
Bankura, Birbhum, Jhargram, Paschim Medinipur, Purulia
CSZ
Coastal Saline Zone
Purba Medinipur, South 24 Parganas

District IDs

Use these exact IDs in the district parameter.

alipurduarbankhurabirbhumcooch-bihardakshin-dinajpurdarjeelinghooghlyhowrahjalpaigurijhargramkalimpongkolkatamaldamurshidabadnadianorth-24-parganaspaschim-bardhamanpaschim-medinipurpurba-bardhamanpurba-medinipurpuruliasouth-24-parganasuttar-dinajpur

Error Codes

All errors follow a consistent structure with a machine-readable code and human-readable message.

json
{
  "success": false,
  "error": "INVALID_API_KEY",
  "message": "API key is invalid, inactive or quota exceeded.",
  "meta": {
    "requested_at": "2026-03-01T10:00:00.000Z"
  }
}
Error CodeStatusDescription
MISSING_API_KEY401No API key provided in request headers
INVALID_API_KEY403Key is invalid, inactive, or quota exceeded
INVALID_PARAMS400Both zone and district passed together
INVALID_LANG400lang value is not en, bn, or all
INVALID_DISTRICT400District ID not recognised
NO_BULLETIN_FOUND404No bulletin available for requested date
NO_DATA_FOR_ZONE404Zone has no data in this bulletin
NO_DATA_FOR_DISTRICT404District zone has no data in this bulletin
BULLETIN_FETCH_ERROR500Internal error fetching bulletin data

Pricing

Simple, transparent pricing. Start free, scale as you grow.

Free
₹0/ month
100 calls / month
Full bulletin access
District & zone filters
EN + BN languages
Email support
Most Popular
Basic
₹799/ month
2,000 calls / month
Everything in Free
Higher quota
Priority email support
Integration guidance
Pro
₹2,499/ month
10,000 calls / month
Everything in Basic
Dedicated support
Custom integration help
Ideal for production apps

Rate Limits

Quota is counted per calendar month and resets automatically on the 1st of each month. Exceeding quota returns a 403 INVALID_API_KEY response. To upgrade your plan, email contact@agro-sathi.in.

Interested?

Tell us about your use case and we will set up your API key within 24 hours.

contact@agro-sathi.in
© 2026 Agro Sathi · Built for Indian Agriculture · contact@agro-sathi.in