The API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs. These APIs are only available for customers with Global Plan. Navigate to the account page to upgrade.
Base URL: /api
Swagger schema: Download
All GET request require an api_key
in the URL. You can find your API Key under My Profile in the account page. If you are logged in, your API key will be automatically used in the examples so you can copy and paste them as is. The rate limit is 60 API calls/minute.
Get the fair price and upside of all valuation models for one or more stock tickers.
Method: GET
Examples:
Arguments:
Ticker(s). If more than 1 ticker are provided, use a comma to separate them. You can request up to 50 tickers at one time.
API Key.
Response Attributes:
Price currency.
Latest stock price.
A map of key, value pairs containing the fair price and upside of each valuation model.
WACC and related components.
1import requests
2r = requests.get('https://valueinvesting.io/api/valuation?tickers=AAPL,JPM&api_key=')
3print(r.json())
1{
2 "AAPL": {
3 "price_currency": "USD",
4 "stock_price": 176.28,
5 "valuation": {
6 "fair_price_dcf_ebitda_10": 106.522934,
7 "fair_price_dcf_ebitda_5": 78.680466,
8 "fair_price_dcf_growth_10": 206.92052,
9 "fair_price_dcf_growth_5": 182.09157,
10 "fair_price_ddm_multi": 147.4993,
11 "fair_price_ddm_stable": 207.95847,
12 "fair_price_epv": 53.036533,
13 "fair_price_ev_ebitda": 57.642834,
14 "fair_price_pe": 124.20023,
15 "upside_dcf_ebitda_10": -0.3957174,
16 "upside_dcf_ebitda_5": -0.553662,
17 "upside_dcf_growth_10": 0.17381737,
18 "upside_dcf_growth_5": 0.032967843,
19 "upside_ddm_multi": -0.16326697,
20 "upside_ddm_stable": 0.17970537,
21 "upside_epv": -0.6991347,
22 "upside_ev_ebitda": -0.67300415,
23 "upside_pe": -0.29543772
24 },
25 "wacc_components": {
26 "beta": 1.20203,
27 "cost_of_debt": 0.0425,
28 "cost_of_equity": 0.07312996,
29 "wacc": 0.0715791
30 }
31 },
32 "JPM": {
33 "price_currency": "USD",
34 "stock_price": 157.26,
35 "valuation": {
36 "fair_price_ddm_multi": 194.65211,
37 "fair_price_ddm_stable": 278.0936,
38 "fair_price_pe": 160.81259,
39 "upside_ddm_multi": 0.23777257,
40 "upside_ddm_stable": 0.76836836,
41 "upside_pe": 0.022590548
42 },
43 "wacc_components": {
44 "beta": 1.12705,
45 "cost_of_debt": 0.05,
46 "cost_of_equity": 0.06565522,
47 "wacc": 0.05173176
48 }
49 }
50}
Get filters and data of one of your screeners.
Method: GET
Examples:
/screener?screener_name=Your first screener
Arguments:
Your screener name.
APi Key.
Response Attributes:
Columns.
Screener currency.
An array of map of key, value pairs containing the data of the screener.
An array of the screener filters.
Screener name.
1import requests
2r = requests.get('https://valueinvesting.io/api/screener?screener_name=Your first screener&api_key=')
3print(r.json())
1{
2 "columns": [
3 "Ticker",
4 "Company Name",
5 "Exchange Name",
6 "Dividend Yield"
7 ],
8 "currency": "USD",
9 "data": [
10 {
11 "Dividend Yield": 0.06540358,
12 "Exchange Name": "TORONTO STOCK EXCHANGE",
13 "Ticker": "PPL.TO"
14 },
15 {
16 "Company Name": "Swedbank AB",
17 "Dividend Yield": 0.056603774,
18 "Exchange Name": "NASDAQ OMX NORDIC",
19 "Ticker": "SWED A.ST"
20 },
21 {
22 "Company Name": "Cheniere Energy Partners LP",
23 "Exchange Name": "NYSE MKT LLC",
24 "Ticker": "CQP"
25 },
26 {
27 "Dividend Yield": 0.10744811,
28 "Exchange Name": "NEW YORK STOCK EXCHANGE, INC.",
29 "Ticker": "NLY"
30 },
31 ],
32 "filters": [
33 {
34 "condition": "between",
35 "field_code": "Revenue",
36 "value": [
37 3000,
38 10000
39 ]
40 },
41 {
42 "condition": "greater than or equal to",
43 "field_code": "Dividend Yield",
44 "value": [
45 0.05
46 ]
47 }
48 ],
49 "screener_name": "Your first screener"
50}
Get data of one of your watchlist
Method: GET
Examples:
/watchlist?watchlist_name=Your first watchlist
Arguments:
Your watchlist name
API Key
Response Attributes:
Columns.
Watchlist currency.
An array of map of key, value pairs containing the data of the watchlist.
Watchlist name.
1import requests
2r = requests.get('https://valueinvesting.io/api/watchlist?watchlist_name=Your first watchlist&api_key=')
3print(r.json())
1{
2 "columns": [
3 "Ticker",
4 "Company Name",
5 "Exchange Name",
6 "Revenue_TTM",
7 "Market Capitalization"
8 ],
9 "currency": "USD",
10 "data": [
11 {
12 "Company Name": "Apple Inc",
13 "Exchange Name": "NASDAQ NMS - GLOBAL MARKET",
14 "Market Capitalization": 2881620,
15 "Revenue_TTM": 365817,
16 "Ticker": "AAPL"
17 },
18 {
19 "Company Name": "Alibaba Group Holding Ltd",
20 "Exchange Name": "NEW YORK STOCK EXCHANGE, INC.",
21 "Market Capitalization": 320228.7,
22 "Revenue_TTM": 127820.79249114076,
23 "Ticker": "BABA"
24 },
25 {
26 "Company Name": "Alphabet Inc",
27 "Exchange Name": "NASDAQ NMS - GLOBAL MARKET",
28 "Market Capitalization": 1947094,
29 "Revenue_TTM": 239210,
30 "Ticker": "GOOGL"
31 }
32 ],
33 "watchlist_name": "Your first watchlist"
34}