Discover/Barchart API
live

Barchart APIbarchart.com

Access Barchart market data via API: stock quotes, option chains, gamma exposure, futures prices, historical OHLCV, and put/call ratios across equities and commodities.

This API takes change requests — .
Endpoint health
verified 6h ago
get_options_chain
get_gamma_exposure
get_historical_data
get_top_stocks
get_nearest_put_call_ratio
8/8 passing latest checkself-healing
Endpoints
8
Updated
7d ago

What is the Barchart API?

This API exposes 8 endpoints covering equity and commodity market data sourced from Barchart.com. get_options_chain returns full call and put contracts with greeks, bid/ask, volume, and open interest for the nearest expiration. Other endpoints cover real-time stock quotes for up to ~25 symbols per call, gamma exposure grouped by strike, daily and 5-minute historical OHLCV, futures contract tables, put/call volume ratios, and current session volume metrics.

This call costs1 credit / call— charged only on success
Try it
Comma-separated list of stock or ETF symbols (e.g. 'AAPL,MSFT,SPY')
api.parse.bot/scraper/1cda4487-4915-4e6a-b0de-627d66a03c5a/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/1cda4487-4915-4e6a-b0de-627d66a03c5a/get_stock_quotes?symbols=AAPL%2CMSFT' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 8 totalmissing one? ·

Get current quotes for a list of stock symbols. Returns real-time price data including last price, price change, percent change, and symbol metadata. Accepts up to ~25 symbols per call. Each quote includes both formatted display strings and raw numeric values.

Input
ParamTypeDescription
symbolsrequiredstringComma-separated list of stock or ETF symbols (e.g. 'AAPL,MSFT,SPY')
Response
{
  "type": "object",
  "fields": {
    "data": "array of quote objects with symbol, symbolName, lastPrice, priceChange, percentChange, symbolCode, symbolType, and raw numeric values",
    "count": "integer total items returned",
    "total": "integer total items available"
  },
  "sample": {
    "data": {
      "data": [
        {
          "raw": {
            "symbol": "AAPL",
            "lastPrice": 291.58,
            "symbolCode": "STK",
            "symbolName": "Apple Inc",
            "symbolType": 1,
            "priceChange": 1.03,
            "percentChange": 0.0035
          },
          "symbol": "AAPL",
          "lastPrice": "291.58",
          "symbolCode": "STK",
          "symbolName": "Apple Inc",
          "symbolType": 1,
          "priceChange": "+1.03",
          "percentChange": "+0.35%"
        },
        {
          "raw": {
            "symbol": "MSFT",
            "lastPrice": 397.36,
            "symbolCode": "STK",
            "symbolName": "Microsoft Corp",
            "symbolType": 1,
            "priceChange": -6.05,
            "percentChange": -0.015
          },
          "symbol": "MSFT",
          "lastPrice": "397.36",
          "symbolCode": "STK",
          "symbolName": "Microsoft Corp",
          "symbolType": 1,
          "priceChange": "-6.05",
          "percentChange": "-1.50%"
        }
      ],
      "count": 2,
      "total": 2
    },
    "status": "success"
  }
}

About the Barchart API

Quotes, Rankings, and Volume

get_stock_quotes accepts a comma-separated list of symbols and returns per-symbol fields including lastPrice, priceChange, percentChange, symbolType, and both display strings and raw numeric values. The count and total fields let you check whether all requested symbols resolved. get_top_stocks returns the same quote shape plus weightedAlpha and percentChange1y, ranking equities by Barchart's weighted alpha metric. get_stock_volume_metrics gives the current session's consolidated volume, a Barchart-defined 20-day average_volume, previous_volume, and the raw Unix trade_time_raw timestamp alongside a formatted trade_time string.

Options Data

get_options_chain returns every call and put for the nearest expiration of a given symbol, including strikePrice, expirationDate, bidPrice, askPrice, volume, openInterest, and greeks. get_nearest_put_call_ratio narrows further to a single expiration row — the smallest non-negative DTE — and returns put_total_volume, call_total_volume, put_call_volume_ratio as a float, and a put_call_volume_ratio_display string matching Barchart's formatting. The source_status field signals ok, no_options_data, or no_valid_upcoming_expiration so callers can handle symbols without listed options cleanly.

get_gamma_exposure goes deeper: the response is an object keyed by strike price, where each key maps to an array of contracts across multiple expirations carrying gamma, delta, openInterest, and lastPrice. This structure is useful for aggregating net gamma across the full strike ladder rather than looking at a single expiration slice.

Historical Data and Futures

get_historical_data accepts a symbol, an interval of daily or 5min, and an optional max_records cap. Response objects carry OHLCV fields (open, high, low, close, volume) as strings alongside date and symbol. The symbol parameter accepts equity tickers like AAPL and continuous futures notation like GC*0 for the Gold front-month contract. get_futures_prices takes a root_symbol such as CL, GC, or ES and returns every listed contract with contractName, settlementPrice, openInterest, volume, and high/low fields, plus the cleaned rootSymbol and a totalContracts count.

Reliability & maintenanceVerified

The Barchart API is a managed, monitored endpoint for barchart.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when barchart.com 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 barchart.com 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.

Last verified
6h ago
Latest check
8/8 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Screen top equities by weighted alpha using get_top_stocks and filter by percentChange1y
  • Build an options flow dashboard by pulling volume and openInterest from get_options_chain across a watchlist
  • Compute net gamma-at-strike profiles for dealer hedging models using get_gamma_exposure data
  • Monitor futures curve structure for Crude Oil or Gold by iterating over contracts from get_futures_prices
  • Backtest intraday strategies with 5-minute OHLCV bars from get_historical_data using the 5min interval
  • Track put/call sentiment shifts around earnings by polling get_nearest_put_call_ratio before and after announcements
  • Alert on unusual volume by comparing volume to average_volume from get_stock_volume_metrics
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Barchart have an official developer API?+
Yes. Barchart offers an official data platform called Barchart OnDemand, documented at https://www.barchart.com/ondemand/api. It targets institutional and professional subscribers and requires a separate commercial agreement.
What does `get_options_chain` return versus `get_gamma_exposure`?+
get_options_chain returns a flat array of option contracts for the nearest single expiration, including full greeks, bid/ask spreads, and open interest. get_gamma_exposure returns data across multiple expirations, keyed by strike price, making it suited for aggregating gamma and delta exposure across the full strike ladder rather than a single expiry slice.
Does `get_historical_data` support intraday intervals beyond 5 minutes?+
Currently the endpoint supports daily and 5min intervals only. It does not expose 1-minute, 15-minute, or hourly bars. You can fork this API on Parse and revise it to add additional intraday intervals if your use case requires finer or coarser granularity.
Is earnings calendar or fundamental data (P/E ratio, revenue, EPS) available?+
Not currently. The API covers price quotes, options, futures, historical OHLCV, and volume metrics. Fundamental data such as earnings dates, EPS estimates, P/E ratios, or revenue figures are not exposed by any current endpoint. You can fork this API on Parse and revise it to add an endpoint targeting that data.
How should I handle a symbol that returns `no_options_data` from `get_nearest_put_call_ratio`?+
The source_status field will be no_options_data when the symbol has no listed options, and no_valid_upcoming_expiration when options exist but no row has a non-negative DTE. In both cases put_total_volume, call_total_volume, and put_call_volume_ratio are returned as null, so callers should check source_status before using ratio fields.
Page content last updated . Spec covers 8 endpoints from barchart.com.
Related APIs in FinanceSee all →
nasdaq.com API
Track real-time and historical stock prices, ETF and mutual fund quotes, cryptocurrency data, and comprehensive company financials including earnings, dividends, and SEC filings all from one source. Research market trends with institutional holdings, short interest data, retail trading activity, and market movers to make informed investment decisions.
optioncharts.io API
Access real-time options trading data including full option chains, strike prices, expiration dates, and market flow analytics for any ticker symbol. Analyze trending options, get detailed ticker overviews, and monitor the most active options to make informed trading decisions.
chartink.com API
Access real-time and historical stock market data from Indian exchanges (NSE/BSE) to analyze fundamentals, technical indicators, and OHLCV metrics, plus run custom stock screeners to find investment opportunities. Search for specific stocks and browse all listed symbols to build data-driven trading strategies and investment research.
benzinga.com API
Access real-time stock quotes, company fundamentals, financial news, and analyst ratings all in one place to make informed investment decisions. Track market movements and research companies with up-to-date pricing, ratings, and news coverage.
alphavantage.co API
Track stock prices, forex rates, and cryptocurrency values with real-time and historical market data, while accessing company financials, earnings reports, and technical indicators. Search tickers, monitor economic indicators, analyze news sentiment, and get global quotes all in one place.
stockanalysis.com API
Access comprehensive stock market data including real-time financials, income statements, statistics, and IPO calendars to research individual stocks and identify market movers. Search stocks, view detailed overviews, and monitor premarket activity all in structured, easy-to-use format.
marketbeat.com API
Track comprehensive stock market data including real-time overviews, analyst ratings, earnings reports, insider trades, and institutional ownership across thousands of companies. Search stocks, analyze financial statements and profitability metrics, monitor short interest, explore options chains, and stay updated with market headlines and competitor analysis.
yahoofinance.com API
Access live stock quotes, historical price data, company profiles, and financial news for any ticker symbol. Supports real-time market data, OHLCV history across configurable intervals, detailed company fundamentals, and news aggregation across global exchanges.