Barchart Charts and Analytics API
The Charts and Analytics API from Barchart — 5 operation(s) for charts and analytics.
The Charts and Analytics API from Barchart — 5 operation(s) for charts and analytics.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/barchart-charts-and-analytics-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: OnDemand Charts and Analytics API
version: 1.0.1
description: Barchart features a diverse set of market and information APIs that can be easily integrated into your website. Whether you're looking for a small, medium, large or enterprise solution, we'll create a custom package for you that exceeds your expectations.
contact:
name: onDemand API Support
url: https://www.barchart.com/ondemand
email: support@barchart.com
termsOfService: https://www.barchart.com/solutions/company/terms-and-privacy
servers:
- url: https://ondemand.websol.barchart.com
tags:
- name: Charts and Analytics
paths:
/getChart.json:
get:
tags:
- Charts and Analytics
summary: getChart
operationId: get-getChart
description: The getChart API from Barchart OnDemand is used to request a custom chart image with variables such as chart type, size, period and technical indicators, based on a symbol.
parameters:
- in: query
name: apikey
description: Enter the secret API key.
required: true
schema:
type: string
example: YOUR_API_KEY
- in: query
name: symbols
description: A symbol or code that identifies a financial instrument.
required: true
schema:
type: string
example: TSLA,MSFT
- in: query
name: type
description: 'The type of chart, includes: bar chart ("BAR"), candlestick ("CANDLE"), area ("AREA") or line ("LINE") chart.
'
required: false
schema:
type: string
enum:
- BAR
- LINE
- CANDLE
- AREA
example: LINE
- in: query
name: width
description: The width of chart in pixels.
required: false
schema:
type: integer
example: 700
- in: query
name: height
description: The height of the chart, in pixels, with no indicators in pixels.
required: false
schema:
type: integer
example: 550
- in: query
name: volume
description: An option to display the volume indicator on the chart.
required: false
schema:
type: string
example: 'false'
- in: query
name: period
description: The period to display the chart.
required: false
schema:
type: string
enum:
- 1d
- 5d
- 3d
- 10d
- 1m
- 3m
- 6m
- 1y
- 2y
- 3y
- 5y
- 10y
- 15y
- 20y
- 25y
- ytd
example: 1d
- in: query
name: interval
description: 'Period type: DO (Daily Contract), DN (Daily Nearest), WO (Weekly Contract), WN (Weekly Nearest), MO (Monthly Contract), MN (Monthly Nearest).
'
required: false
schema:
type: string
enum:
- DO
- DN
- WO
- WN
- MO
- MN
example: DO
- in: query
name: indicators
description: A semi-colon delimited list of indicators.
required: false
schema:
type: string
example: BBANDS(20,2);MACD(12,26,9)
- in: query
name: frequencyType
description: 'Frequency type: DO (Daily Contract), DN (Daily Nearest), DC (Daily Continuation), WO (Weekly Contract), WN (Weekly Nearest), WC (Weekly Continuation), MO (Monthly Contract), MN (Monthly Nearest), MC (Monthly Continuation)
'
required: false
schema:
type: string
- in: query
name: gradientTop
description: The HTML color code without the preceding hashtag for the AREA chart.
required: false
schema:
type: string
- in: query
name: gradientBottom
description: The HTML color code without the preceding hashtag for the AREA chart.
required: false
schema:
type: string
- in: query
name: bgColor
description: The HTML color code without the preceding hashtag for chart background color.
required: false
schema:
type: string
responses:
'200':
description: OK (Success)
content:
application/json:
schema:
type: object
properties:
status:
type: object
description: The status object when an error occurs or when a response is successful.
required:
- code
- message
properties:
code:
description: The status code of the response.
type: integer
example: 200
message:
description: The status message corresponding to the status code.
type: string
example: Success.
results:
description: The results object of the API operation.
type: array
uniqueItems: true
items:
type: object
properties:
symbol:
description: A symbol or code that identifies a financial instrument.
type:
- string
- 'null'
example: YHOO
imageURL:
description: The URL for the chart image.
type:
- string
- 'null'
example: ////ondemand.websol.barchart.com/chart.png??symbol=YHOO\u0026barType=LINE\u0026time=1d\u0026width=700\u0026height=550\u0026volume=0\u0026indicators=BBANDS%2820%2C2%29%3BMACD%2812%2C26%2C9%29\u0026period=DO\u0026startDate=1499058000\u0026endDate=1499101199
required:
- symbol
- imageURL
'204':
description: No Content
'400':
description: Bad Request
'500':
description: Internal Server Error
/getTechnicals.json:
get:
tags:
- Charts and Analytics
summary: getTechnicals
operationId: get-getTechnicals
description: Barchart OnDemand's getTechnicals API provides technical data and statistics for equities, indices, futures, currencies, cryptocurrencies and mutual funds based on symbol. Fields include moving averages, percent changes over different time periods and stochastics.
parameters:
- in: query
name: apikey
description: Enter the secret API key.
required: true
schema:
type: string
example: YOUR_API_KEY
- in: query
name: symbols
description: A symbol or code that identifies a financial instrument.
required: true
schema:
type: string
example: AAPL,GOOG
- in: query
name: fields
description: The fields requested.
required: false
schema:
type: string
example: averageVolumeFiveDay,averageVolumeTwentyDay,averageVolumeFiftyDay
responses:
'200':
description: OK (Success)
content:
application/json:
schema:
type: object
properties:
status:
type: object
description: The status object when an error occurs or when a response is successful.
required:
- code
- message
properties:
code:
description: The status code of the response.
type: integer
example: 200
message:
description: The status message corresponding to the status code.
type: string
example: Success.
results:
description: The results object of the API operation.
type: array
uniqueItems: true
items:
type: object
properties:
symbol:
description: A symbol or code that identifies a financial instrument.
type:
- string
- 'null'
example: AAPL
movingAverageFiveDay:
description: The average price of the instrument over 5 days.
type:
- number
- 'null'
format: double
example: 127.69
movingAverageTenDay:
description: The average price of the instrument over 10 days.
type:
- number
- 'null'
format: double
example: 185.86
movingAverageTwentyDay:
description: The average price of the instrument over 20 days.
type:
- number
- 'null'
format: double
example: 134.1
movingAverageFiftyDay:
description: The average price of the instrument over 50 days.
type:
- number
- 'null'
format: double
example: 131.9
movingAverageOneHundredDay:
description: The average price of the instrument over 100 days.
type:
- number
- 'null'
format: double
example: 124.69
movingAverageOneHundredFiftyDay:
description: The average price of the instrument over 150 days.
type:
- number
- 'null'
format: double
example: null
movingAverageTwoHundredDay:
description: The average price of the instrument over 200 days.
type:
- number
- 'null'
format: double
example: 112.09
movingAverageOneMonth:
description: The average price of the instrument over 1 month.
type:
- number
- 'null'
format: double
example: null
movingAverageThreeMonths:
description: The average price of the instrument over 3 months.
type:
- number
- 'null'
format: double
example: null
movingAverageSixMonths:
description: The average price of the instrument over 6 months.
type:
- number
- 'null'
format: double
example: null
movingAverageNineMonths:
description: The average price of the instrument over 9 months.
type:
- number
- 'null'
format: double
example: null
movingAverageFiftyTwoWeeks:
description: The average price of the instrument over 52 weeks.
type:
- number
- 'null'
format: double
example: null
movingAverageYTD:
description: The average price of the instrument since the start of the year.
type:
- number
- 'null'
format: double
example: 133.01
priceChangeFiveDay:
description: The change in price over 5-days
type:
- number
- 'null'
format: double
example: -11.14
priceChangeTwentyDay:
description: The change in price over 20-days.
type:
- number
- 'null'
format: double
example: -20.86
priceChangeFiftyDay:
description: The change in price over 50-days.
type:
- number
- 'null'
format: double
example: 0.28
priceChangeOneHundredDay:
description: The change in price over 100-days.
type:
- number
- 'null'
format: double
example: 7.97
priceChangeTwoHundredDay:
description: The change in price over 200-days.
type:
- number
- 'null'
format: double
example: 46.12
priceChangeYTD:
description: The change in price since the start of the year.
type:
- number
- 'null'
format: double
example: -10.64
priceChangeOneMonth:
description: The change in price over 1 month.
type:
- number
- 'null'
format: double
example: -17.02
priceChangeThreeMonth:
description: The change in price over 3 months.
type:
- number
- 'null'
format: double
example: 8.21
priceChangeSixMonth:
description: The change in price over 6 months.
type:
- number
- 'null'
format: double
example: -2.32
priceChangeNineMonth:
description: The change in price over 9 months.
type:
- number
- 'null'
format: double
example: 42.33
priceChangeFiftyTwoWeek:
description: The change in price over 52 weeks.
type:
- number
- 'null'
format: double
example: 43.79
priceChangeTwoYears:
description: The change in price over 2 years.
type:
- number
- 'null'
format: double
example: 78.81
percentChangeFiveDay:
description: The percentage change in price over 5-days
type:
- number
- 'null'
format: double
example: -8.36
percentChangeTwentyDay:
description: The percentage change in price over 20-days.
type:
- number
- 'null'
format: double
example: -14.6
percentChangeFiftyDay:
description: The percentage change in price over 50-days.
type:
- number
- 'null'
format: double
example: 0.23
percentChangeOneHundredDay:
description: The percentage change in price over 100-days.
type:
- number
- 'null'
format: double
example: 6.98
percentChangeTwoHundredDay:
description: The percentage change in price over 200-days.
type:
- number
- 'null'
format: double
example: 60.74
percentChangeYTD:
description: The percentage change in price since the start of the year.
type:
- number
- 'null'
format: double
example: -8.01
percentChangeOneMonth:
description: The percentage change in price over 1 month.
type:
- number
- 'null'
format: double
example: -12.23
percentChangeThreeMonth:
description: The percentage change in price over 3 months.
type:
- number
- 'null'
format: double
example: 7.21
percentChangeSixMonth:
description: The percentage change in price over 6 months.
type:
- number
- 'null'
format: double
example: -1.86
percentChangeNineMonth:
description: The percentage change in price over 9 months.
type:
- number
- 'null'
format: double
example: 53.1
percentChangeFiftyTwoWeek:
description: The percentage change in price over 52 weeks.
type:
- number
- 'null'
format: double
example: 55.96
percentChangeTwoYears:
description: The percentage change in price over 2 years.
type:
- number
- 'null'
format: double
example: 182.26
averageVolumeFiveDay:
description: The average daily volume calculated over the past 5-days.
type:
- number
- 'null'
format: double
example: 95174617
averageVolumeTwentyDay:
description: The average daily volume calculated over the past 20-days.
type:
- number
- 'null'
format: double
example: 95033719
averageVolumeFiftyDay:
description: The average daily volume calculated over the past 50-days.
type:
- number
- 'null'
format: double
example: 104940797
averageVolumeOneHundredDay:
description: The average daily volume calculated over the past 100-days.
type:
- number
- 'null'
format: double
example: 110668281
averageVolumeTwoHundredDay:
description: The average daily volume calculated over the past 200-days.
type:
- number
- 'null'
format: double
example: 135862438
averageVolumeYTD:
description: The average daily volume calculated since the start of the year.
type:
- number
- 'null'
format: double
example: 102347750
nineDayRawStochastic:
description: A 9-day raw stochastic indicator.
type:
- number
- 'null'
format: double
example: 19.7
fourteenDayRawStochastic:
description: A 14-day raw stochastic indicator.
type:
- number
- 'null'
format: double
example: 18.81
twentyDayRawStochastic:
description: A 20-day raw stochastic indicator.
type:
- number
- 'null'
format: double
example: 14.15
fiftyDayRawStochastic:
description: A 50-day raw stochastic indicator.
type:
- number
- 'null'
format: double
example: 13.73
oneHundredDayRawStochastic:
description: A 100-day raw stochastic indicator.
type:
- number
- 'null'
format: double
example: 39.01
nineDayStochasticK:
description: A 9-day stochastic %k indicator.
type:
- number
- 'null'
format: double
example: 15.49
fourteenDayStochasticK:
description: A 14-day stochastic %k indicator.
type:
- number
- 'null'
format: double
example: 15.19
twentyDayStochasticK:
description: A 20-day stochastic %k indicator.
type:
- number
- 'null'
format: double
example: 10.04
fiftyDayStochasticK:
description: A 50-day stochastic %k indicator.
type:
- number
- 'null'
format: double
example: 25.39
oneHundredDayStochasticK:
description: A 100-day stochastic %k indicator.
type:
- number
- 'null'
format: double
example: 49.39
nineDayStochasticD:
description: A 9-day stochastic %d indicator.
type:
- number
- 'null'
format: double
example: 17.44
fourteenDayStochasticD:
description: A 14-day stochastic %d indicator.
type:
- number
- 'null'
format: double
example: 16.75
twentyDayStochasticD:
description: A 20-day stochastic %d indicator.
type:
- number
- 'null'
format: double
example: 11.1
fiftyDayStochasticD:
description: A 50-day stochastic %d indicator.
type:
- number
- 'null'
format: double
example: 33.01
oneHundredDayStochasticD:
description: A 100-day stochastic %d indicator.
type:
- number
- 'null'
format: double
example: 55.56
nineDayATR:
description: A 9-day average true range indicator.
type:
- number
- 'null'
format: double
example: 3.68
fourteenDayATR:
description: A 14-day average true range indicator.
type:
- number
- 'null'
format: double
example: 3.63
twentyDayATR:
description: A 20-day average true range indicator.
type:
- number
- 'null'
format: double
example: 3.61
fiftyDayATR:
description: A 50-day average true range indicator.
type:
- number
- 'null'
format: double
example: 3.59
oneHundredDayATR:
description: A 100-day average true range indicator.
type:
- number
- 'null'
format: double
example: 3.37
twoDayRelativeStrength:
description: A 2-day relative strength indicator.
type:
- number
- 'null'
format: double
example: null
fiveDayRelativeStrength:
description: A 5-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 68.43
nineDayRelativeStrength:
description: A 9-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 19.25
fourteenDayRelativeStrength:
description: A 14-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 30.16
twentyDayRelativeStrength:
description: A 20-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 37.37
fiftyDayRelativeStrength:
description: A 50-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 48.51
oneHundredDayRelativeStrength:
description: A 100-day relative strength indicator.
type:
- number
- 'null'
format: double
example: 52.37
nineDayPercentR:
description: A 9-day percent R indicator
type:
- number
- 'null'
format: double
example: 80.3
fourteenDayPercentR:
description: A 14-day percent R indicator
type:
- number
- 'null'
format: double
example: 81.19
twentyDayPercentR:
description: A 20-day percent R indicator
type:
- number
- 'null'
format: double
example: 85.85
fiftyDayPercentR:
description: A 50-day percent R indicator
type:
- number
- 'null'
format: double
example: 86.27
oneHundredDayPercentR:
description: A 100-day percent R indicator
type:
- number
- 'null'
format: double
example: 60.99
nineDayHistoricVolatility:
description: The 9-day historic or realized volatility.
type:
- number
- 'null'
format: double
example: 16.43
fourteenDayHistoricVolatility:
description: The 14-day historic or
# --- truncated at 32 KB (130 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/barchart/refs/heads/main/openapi/barchart-charts-and-analytics-api-openapi.yml