Barchart OnDemand
Seventy-odd REST endpoints covering equities, options and physical commodities.
by Barchart
Last updated
What it is
Barchart OnDemand is the developer half of Barchart: seventy-odd named REST endpoints —
getQuote, getHistory, getEquityOptions, getNews, getCmdtyStats — on one host, keyed by
an apikey query parameter, answering in JSON, XML or CSV. A separate event-based API pushes
alerts over REST or Socket.IO when a user-defined condition fires.
Breadth is the pitch, and it goes somewhere unusual: next to the equities endpoints sit grain cash bids, USDA grain prices, refined fuel prices, crop factors and weather — Barchart's agricultural data business, sold through the same key.
Pricing
There is no price list. Barchart's own product overview offers to build "a custom package for you" whether you want a small, medium, large or enterprise solution, and the quick start tells you to fill in a contact form to be issued a key rather than to sign up. A trial exists, but it has to be asked for and its length is not published.
Data & coverage
Equities by exchange covers Aequitas, ASX, Cboe, CSE, Euronext, LSE Group, Nasdaq, ICE/NYSE and TMX; the futures and commodities side reaches further, with Hong Kong, Osaka, Shanghai, Tokyo and NSE India in the exchange list. Quotes are real-time, delayed or end-of-day by entitlement; history is tick, minute or daily bars.
One documented limit to design around: getEquitiesByExchange refuses a fileDate more than 30
days back, so the bulk-by-exchange route is for recent snapshots rather than backfill. getHistory
publishes no record cap at all — the response follows your date range unless you set maxRecords.
Integrations
Official clients exist for Java, JavaScript, PHP, Python and MATLAB, and the docs ship an OpenAPI specification. Treat them as sample code rather than maintained SDKs: the Python client's most recent release is v1.1.1 from April 2023, and the Java client has had no commit since February 2019.
Limitations
- Redistribution is expressly prohibited: the docs say data is for internal use only. That rules out the obvious consumer product unless you negotiate separately.
- No self-serve signup, no published price, no trial you can start yourself. Evaluating it means a sales call, which prices out the weekend project entirely.
- Rate limits are published nowhere — they are whatever the contract says.
- The screening and charting endpoints are narrow: an options screener and a server-rendered chart image, not something you would hand a user.
Alternatives
Massive (formerly Polygon.io) and Alpha Vantage publish their prices and hand over a key in a minute, which matters more than breadth while you are prototyping. What Barchart has that they do not is the physical-commodity side — no close substitute among the other market data APIs.
Specs
- Interfaces
- API, Python
- Export
- CSV, JSON
- Asset classes
- Stocks, ETF, Options, Futures, Forex, Crypto, Indices, Mutual funds, Commodities
- Markets
- US, CA, UK, EU, Asia, AU
- Platforms
- Library
- AI features
- None
- Capabilities
- Charting, Screening, Alerts, News, Options analysis
- Pricing verified
- Capabilities verified
- Coverage verified
Also from Barchart
Also worth comparing
- Alpaca Market Data — Free IEX data forever, full SIP and OPRA for a flat $99 a month.
- Finnhub — Real-time US quotes and a live trade stream on a free key. OHLC candles are not free.
- IQFeed — Tick-by-tick data into a local Windows socket, with exchange fees billed on top.
- Massive — Full-tick US equities, options and futures from a direct exchange feed.
- Twelve Data — Global stocks, forex and crypto over REST and WebSocket, billed in credits per minute.
- Bigdata.com — RavenPack's self-serve retrieval API over premium news and filings, billed per token.
FAQ
Does Barchart OnDemand have a free tier?
No. The old free market data API was retired — its host now answers HTTP 410 with "The Free Market Data API service is no longer available." Every endpoint page ends in a contact form, and a trial has to be asked for.
Can I redistribute Barchart OnDemand data in my own product?
Not on the standard terms. The documentation states that data is for internal use only and that redistribution is expressly prohibited, so a consumer-facing product needs a separate commercial agreement.
How is Barchart OnDemand different from Barchart.com?
They are two products from the same vendor with different audiences. OnDemand is the REST API you buy a key for and call from your own code; it is sold and priced separately from the consumer site.
How far back does Barchart OnDemand history go, and in what granularity?
getHistory serves tick, minute and end-of-day bars across stocks, indices, funds, ETFs, futures, forex and crypto. How many records come back is set by the startDate/endDate range unless you cap it with maxRecords; the docs publish no fixed per-call limit. The vendor does not publish a history depth per exchange — that comes out of the sales conversation.