Org APIdata.rbi.org.in ↗
Access RBI money market operations, INR reference rates for USD/GBP/EUR/JPY, and the full index of RBI statistical data releases via a structured API.
What is the Org API?
This API exposes 5 endpoints covering the Reserve Bank of India's official monetary data, including daily money market operations and INR reference exchange rates. Use get_latest_money_market_operations to retrieve the current day's Overnight and Term segment data, or query get_reference_rate to pull USD, GBP, EUR, and JPY rates against INR for any date range. A separate index endpoint catalogues all RBI statistical releases by frequency.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/c487e89c-ad0e-48b5-bb6b-ea0f6ceee999/get_latest_money_market_operations' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace data-rbi-org-in-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""RBI Financial Data — bounded, re-runnable walkthrough."""
from parse_apis.rbi_financial_data_api import (
RBI, Month, InvalidInput
)
client = RBI()
# Fetch the latest Money Market Operations report (single object, no iteration).
report = client.moneymarketreports.latest()
print(f"Latest report: {report.title}, date: {report.date}")
for section in report.sections[:2]:
print(f" Section: {section.header}, rows: {len(section.rows)}")
# List report summaries for a specific month; limit caps total items.
for summary in client.moneymarketreportsummaries.list(
year="2024", month=Month.JANUARY, limit=3
):
print(f" {summary.pub_date} — {summary.title} (prid={summary.prid})")
# Drill down: take one summary and fetch its full detail report.
first_summary = client.moneymarketreportsummaries.list(
year="2024", month=Month.JANUARY, limit=1
).first()
if first_summary:
detail = first_summary.details()
print(f"Detail title: {detail.title}, sections: {len(detail.sections)}")
# Reference rates for a date range.
for rate in client.referencerateentries.list(
from_date="01/01/2024", to_date="05/01/2024", limit=3
):
print(f" {rate.date}: {rate.currencies}")
# Browse all data releases by frequency.
for release in client.datareleases.list(limit=5):
print(f" [{release.frequency}] {release.name}")
# Typed error handling: catch invalid input format.
try:
client.referencerateentries.list(from_date="bad-date", to_date="also-bad", limit=1).first()
except InvalidInput as exc:
print(f"Caught InvalidInput: {exc}")
print("Exercised: moneymarketreports.latest / moneymarketreportsummaries.list / .details / referencerateentries.list / datareleases.list")
Fetches the most recent Money Market Operations report from RBI. Returns the current day's structured data including Overnight and Term market segments, RBI Operations (LAF/MSF/SDF), and Reserve Position. Updated daily on trading days.
No input parameters required.
{
"type": "object",
"fields": {
"date": "string or null, publication date if available",
"title": "string, title of the report",
"sections": "array of section objects, each with a 'header' string and 'rows' array of string arrays representing tabular data"
},
"sample": {
"data": {
"date": null,
"title": "Money Market Operations",
"sections": [
{
"rows": [
[
"I. Call Money",
"18,967.63",
"5.28",
"4.60-5.40"
],
[
"II. Triparty Repo",
"5,17,947.65",
"5.18",
"5.10-5.35"
]
],
"header": "A. Overnight Segment (I+II+III+IV)"
}
]
},
"status": "success"
}
}About the Org API
Money Market Operations
get_latest_money_market_operations returns the most recent RBI money market report as structured sections. Each section object includes a header string (e.g. "Overnight Segment", "Term Segment", "RBI Operations") and a rows array of string arrays holding the tabular data. To retrieve a historical report, use get_money_market_operations_by_date with a prid parameter — a press release identifier you can discover by calling list_money_market_operations_by_month with a four-digit year and a full capitalized month name (e.g. 'January'). That listing endpoint returns each report's pub_date, title, links array, and prid string.
Reference Rates
get_reference_rate accepts from_date and to_date in DD/MM/YYYY format and returns a rates array. Each element is keyed by currency pair label such as 'USD (INR / 1 USD)' or 'EUR (INR / 1 EUR)', plus a Date field identifying the trading day. The response also echoes back from_date and to_date for validation. Currency coverage includes USD, GBP, EUR, and JPY at minimum.
Data Release Index
list_data_releases returns no inputs and produces a full catalogue of all RBI statistical publications, organized by release frequency: Daily, Weekly, Fortnightly, Monthly, Bi-monthly, Quarterly, Annual, and Occasional. Each entry contains a name and a url, giving developers a map to the breadth of RBI's published data even where dedicated fetch endpoints do not yet exist.
Source and Official API
The data originates from data.rbi.org.in, the Reserve Bank of India's official data portal. The RBI does not publish a public developer API with authentication keys or versioned REST endpoints for programmatic consumption. This API provides structured access to the same data.
The Org API is a managed, monitored endpoint for data.rbi.org.in — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when data.rbi.org.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 data.rbi.org.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?+
- Tracking daily INR/USD and INR/EUR reference rates for FX risk management using get_reference_rate
- Building a historical archive of RBI money market operations by iterating prid values from list_money_market_operations_by_month
- Monitoring overnight and term liquidity segment activity via get_latest_money_market_operations
- Alerting systems that flag when RBI publishes a new money market operations report each trading day
- Calculating rolling averages of INR/JPY rates across a custom date range using the rates array fields
- Auditing which RBI statistical releases are available at a given frequency using list_data_releases
- Feeding INR reference rate history into backtesting models for cross-currency derivatives pricing
| 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 | 100 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.