open datasetloading last run time

Daily snapshots of Gold, Silver, Rupee, Brent crude, Nifty 50

Every market day frozen at its own permanent URL. One unauthenticated GET returns JSON, CSV or plain text — no keys, ever.

read the docs →
9

datasets

21

live instruments

152,970

cities in the gazetteer

10,398

US tickers

0

API keys

requests

the whole catalogue

9 datasets, every one a single GET.

No key, no rate limit, no signup. Licences differ per dataset and are named on each card, because one of them is share-alike and that changes what you can build.

A series dataset carries trading days and dated snapshots that go immutable after 48 hours; a lookup has neither, because a ticker has no close and a city has no session.

why this exists

Agents are going to need open data they can rely on.

01

Agents rediscover the same API every time

Find a source, guess the shape, hit the key wall, retry. This is one URL an agent can simply remember.

02

Snapshots, not a live feed

A frozen daily number at a permanent URL caches forever, compares across runs, and makes a backtest reproducible.

03

Built the way covid19india was

Static JSON at stable paths, sources and licences published. If the service disappears, the dataset survives it.

quickstart

# today's gold price in INR, from the edge
curl -s /api/v1/gold/in/latest.json | jq '.observations[0]'

# a permanent, immutable URL, same bytes in 2029
curl -s /api/v1/gold/in/2026-08-11.json

# cost nothing on a repeat poll
curl -s -H 'If-None-Match: W/"..."' -i /api/v1/all/latest.json

questions

Frequently asked

Is it really free, with no key?
Yes, and permanently. No account, no token, no rate limit, no paid tier later. Everything is static files behind a CDN, so the marginal cost of another reader is close to nothing, the usual reason to meter an API does not apply here.
How fresh is the data?
Ingest runs every three hours, and the header above reports the last run that actually happened rather than the schedule. Every number carries a status: final, provisional or estimated. A dataset that looks empty is an upstream we have not got working yet — nothing is ever substituted to fill a gap. This is not a real-time feed and is not trying to be one.
Can I use it commercially?
Mostly. Code is MIT and data we originate is CC BY 4.0. The one exception is rupee gold and silver, which are the IBJA benchmark republished with attribution under their own terms, not CC BY 4.0. Everything under the world scope, World Bank, ECB, EIA, is cleanly relicensable. See sources & licences.
What happens on weekends and holidays?
You get an explicit row: is_trading_day: false, value: null, never a silently repeated Friday number. This is the single most common bug in free market-data feeds, it is invisible until someone backtests, and refusing to ship it is most of the point of this project.
Will a URL I depend on ever change?
A dated snapshot older than 48 hours is served immutable and never changes again, that is the contract, and it is what makes a backtest reproducible. Breaking changes to the shape would arrive as /api/v2, with /api/v1 left standing. And it is all open source — if this service disappears, the dataset and the pipeline that produces it are both intact and forkable.

No key. No account.Just the URL.

Paste it into a terminal, a notebook or an agent and it answers. Nothing to configure first, and nothing that expires.