incometaxindia.gov.in APIwww.incometaxindia.gov.in ↗
Access 60+ years of official Income Tax Department of India notifications via REST. Filter by year, search by keyword, paginate results, or bulk-fetch entire years.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/32ac21bb-58e6-45bd-ba0b-96553d77bea5/get_years' \ -H 'X-API-Key: $PARSE_API_KEY'
Get all available years for notification filtering. Returns a list of year strings from 1961 to 2026.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer count of available years",
"years": "array of year strings (e.g. '1961', '2024')"
},
"sample": {
"data": {
"total": 66,
"years": [
"1961",
"1962",
"2025",
"2026"
]
},
"status": "success"
}
}About the incometaxindia.gov.in API
This API exposes over 60 years of official notifications published by the Income Tax Department of India, covering 1961 through 2026 across 3 endpoints. Use get_notifications to search and paginate the full catalog, get_years to retrieve the complete list of available year filters, and get_all_notifications_by_year to bulk-fetch every notification for a given year in a single call. Each notification record includes its number, title, date, description, content type, and upload metadata.
What the API Returns
Each notification object across all endpoints shares a consistent shape: notification_number, title, description, summary, content_type, notification_date, and upload. The content_type field indicates the document category, and upload carries file or document reference metadata. These fields are present whether you retrieve a single page of results or an entire year's worth.
Filtering and Search
The get_notifications endpoint accepts four optional parameters: year (a string like '2024' or '1985'), search (free-text keyword matching against notification titles and content), page (1-based page number), and page_size (items per page). The response returns the current page, last_page, total_count, and page_size alongside the notifications array, giving you everything needed to drive a paginated UI or pipeline. Omitting year returns results across all years.
Bulk Year Fetch
When you need a complete year's data without manually iterating pages, get_all_notifications_by_year handles internal pagination automatically. Pass a required year string and optionally max_pages as a safety cap or page_size to tune throughput. The response reports both total_count (total notifications available for that year) and fetched_count (how many were actually returned), so you can detect truncation if a max_pages limit was hit.
Year Coverage
get_years returns a flat list of year strings and a total count — useful for populating filter dropdowns or validating year inputs before making downstream calls. The coverage runs from 1961 to 2026, reflecting the full publication history of the Income Tax Department's notification archive.
- Build a searchable archive of Indian tax notifications filtered by year and keyword using
get_notifications - Monitor newly issued notifications by querying the current year with
get_all_notifications_by_yearon a scheduled basis - Populate a year-filter dropdown in a tax research tool by calling
get_yearson app load - Audit regulatory changes over a date range by bulk-fetching multiple years and comparing
notification_numbersequences - Index notification
titleandsummaryfields into a search engine for full-text retrieval by legal or compliance teams - Track
content_typedistributions across years to analyze shifts in the types of tax directives issued - Cross-reference
notification_datevalues with historical tax events for academic or policy research
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does the Income Tax Department of India offer an official developer API?+
What does the `get_all_notifications_by_year` endpoint return, and how does truncation work?+
total_count (the full count available for the year) and fetched_count (how many were actually returned). If you set the optional max_pages parameter and the year has more pages than that limit, fetched_count will be less than total_count, signaling that the result is partial.Does the `search` parameter in `get_notifications` support filtering by `notification_number` directly?+
search parameter is a free-text field that filters notifications by keyword. It is not a structured lookup by notification_number — there is no dedicated endpoint that accepts an exact notification number and returns a single record. You can fork this API on Parse and revise it to add a targeted lookup endpoint if your use case requires exact-match retrieval by number.