Introduction

IEX Cloud is a platform that makes financial data and services accessible to everyone.

API Reference

The IEX Cloud API is based on REST, has resource-oriented URLs, returns JSON-encoded responses, and returns standard HTTP response codes.

Authentication

API Tokens

IEX Cloud authenticates your API requests using your account’s API tokens. To use any IEX Cloud API, you must pass an API token with each request. If you do not include your API token when making an API request, or use one that is incorrect or disabled, IEX Cloud returns an error.

IEX Cloud provides two types of API tokens: publishable and secret.

Protecting your API tokens

Data Weighting

Certain products, such as the Core Financial API, measure usage in message counts. We calculate message counts by multiplying the type of data object by that data object’s weight. Data objects are commonly understood units, such as a single stock quote, company fundamentals, or news headline. Weights are determined by taking two factors into consideration: frequency of distribution and acquisition costs. Weighting can be found in the Data Weighting section of each API endpoint.

We built a pricing calculator to help you estimate how many messages you can expect to use based on your app and number of users. You should consider the following inputs that will impact your final cost:

API calls will return iexcloud-messages-used in the header to indicate the total number of messages consumed for the call.

Versioning

IEX Cloud will release new versions when we make backwards-incompatible changes to the API. We plan to support up to three active versions and will give advanced notice before releasing a new version or retiring an old version.

Backwards compatible changes:

Versions are added to the base url:

Current Version is v1 https://cloud.iexapis.com/v1/

Naming convention

stable can be used to access the latest stable API version. For example, https://cloud.iexapis.com/stable/

latest can be used to access the latest API version which may be in beta. For example, https://cloud.iexapis.com/latest/

Beta versions will include a -beta, for example, https://cloud.iexapis.com/v2-beta/

Sandbox

Every account will be assigned two test tokens available via the Console. All the same endpoints as production will be available in the Sandbox Environment. Please note API data will be manipulated to scramble values and is not suitable for production usage. We’ve also updated the Usage Report to allow you to view the number of test messages the same way as production message usage.

How to use

Test tokens look like Tpk_ and Tsk_.

To make a call for test data, use the same url, but pass your test token.

Limits

IEX Cloud only applies request limits per IP address to ensure system stability. We limit requests to 100 per second per IP measured in milliseconds, so no more than 1 request per 10 milliseconds. We do allow bursts, but this should be sufficient for almost all use cases.

SSE endpoints are limited to 50 symbols per connection. You can make multiple connections if you need to consume more than 50 symbols.

Errors

IEX Cloud uses HTTP response codes to indicate the success or failure of an API request.

General HTML status codes

2xx Success.

4xx Errors based on information provided in the request

5xx Errors on IEX Cloud servers

IEX Cloud HTTP status codes

HTTP Code Type Description
400 Incorrect Values Invalid values were supplied for the API request
400 No Symbol No symbol provided
400 Type Required Batch request types parameter requires a valid value
401 Authorization Restricted Hashed token authorization is restricted
401 Authorization Required Hashed token authorization is required
401 Restricted The requested data is marked restricted and the account does not have access.
401 No Key An API key is required to access the requested endpoint.
401 Secret Key Required The secret key is required to access to requested endpoint.
401 Denied Referer The referer in the request header is not allowed due to API token domain restrictions.
402 Over Limit You have exceeded your allotted message quota and pay-as-you-go is not enabled.
402 Free tier not allowed The requested endpoint is not available to free accounts.
402 Tier not allowed The requested data is not available to your current tier.
403 Authorization Invalid Hashed token authorization is invalid.
403 Disabled Key The provided API token has been disabled
403 Invalid Key The provided API token is not valid.
403 Test token in production A test token was used for a production endpoint.
403 Production token in sandbox A production token was used for a sandbox endpoint.
403 Circuit Breaker Your pay-as-you-go circuit breaker has been engaged and further requests are not allowed.
403 Inactive Your account is currently inactive.
404 Unknown Symbol Unknown symbol provided
404 Not Found Resource not found
413 Max Types Maximum number of types values provided in a batch request.
429 Too many requests Too many requests hit the API too quickly. An exponential backoff of your requests is recommended.
451 Enterprise Permission Required The requested data requires additional permission to access.
500 System Error Something went wrong on an IEX Cloud server.

Query Parameters

Data Formats

Most endpoints support a format parameter to return data in a format other than the default JSON.

Supported formats

Format Content Type Example
json application/json ?format=json or by not passing the format parameter.
csv text/csv ?format=csv
psv text/plain ?format=psv

Filter results

Most endpoints support a filter parameter to return a subset of data. Pass a comma-delimited list of response attributes to filter. Response attributes are case-sensitive and are found in the Response Attributes section of each endpoint.

Example: ?filter=symbol,volume,lastSalePrice will return only the three attributes specified.

SSE Streaming

NOTE: Only included with paid subscription plans

We support Server-sent Events (SSE Streaming) for streaming data as an alternative to WebSockets. You will need to decide whether SSE streaming is more efficient for your workflow than REST calls. In many cases streaming is more efficient since you will only receive the latest available data. If you need to control how often you receive updates, then you may use REST to set a timed interval.

When you connect to an SSE endpoint, you should receive a snapshot of the latest message, then updates as they are available. You can disable this feature by passing a url parameter of nosnapshot=true

Curl Example

curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/stocksUS\?symbols\=spy\&token\=YOUR_TOKEN

Curl Firehose Example

curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/stocksUS\?token\=YOUR_TOKEN

Curl Example (Not authorized by UTP)

curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/stocksUSNoUTP\?symbols\=spy\&token\=YOUR_TOKEN

Curl Firehose Example (Not authorized by UTP)

curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/stocksUSNoUTP\?token\=YOUR_TOKEN

How messages are counted

We use a reserve system for streaming endpoints due to high data rates. This is similar to how a credit card puts a hold on an account and reconciles the amount at a later time.

When you connect to an SSE endpoint, we will validate your API token, then attempt to reserve an amount of messages from your account. For example, 1000 messages.

If you have enough messages in your quota, or you have pay-as-you-go enabled, we will allow data to start streaming.

We keep track of the number of messages streamed to your account during our reserve interval.

Once our reserve interval expires, we will reconcile usage. This means we will compare how many messages were sent versus the number of messages we reserved. For example, if we delivered 1200 messages, you would have used 200 more than we reserved, so we will apply 200 additional messages to your account. If we only delivered 100 messages, we would credit the 900 unused messages back to your account.

After we reconcile the messages, we will attempt another reserve.

The reserve and reconcile process is seamless and does not impact your data stream. If we attempt to reserve messages and your account does not have enough quota and pay-as-you-go disabled, then we will disconnect your connection. You can avoid service disruptions by enabling pay-as-you-go in the Console.

When you disconnect from an endpoint, we will reconcile your message usage immediately.

SSE

Firehose

Scale users can firehose stream all symbols (excluding DEEP endpoints) by leaving off the symbols parameter.

Interval Streaming

Some SSE endpoints are offered on set intervals such as 1 second, 5 seconds, or 1 minute. This means we will send out messages no more than the interval subscribed to. This helps make message delivery more predictable.

Supported Endpoints

# Stock Quotes no UTP
# Firehose can be about 100 million messages per day
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/stocksUSNoUTP?token=YOUR_TOKEN&symbols=spy'

# Stock Quotes
# Firehose can be about 100 million messages per day
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/stocksUS?token=YOUR_TOKEN&symbols=spy'

# Stock Quotes every 1 second
# Can be up to 54,000 messages per symbol per day
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/stocksUS1Second?token=YOUR_TOKEN&symbols=spy'

# Stock Quotes every 5 seconds
# Can be up to 10,800 messages per symbol per day
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/stocksUS5Second?token=YOUR_TOKEN&symbols=spy'

# Stock Quotes every 1 minute
# Can be up to 900 messages per symbol per day
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/stocksUS1Minute?token=YOUR_TOKEN&symbols=spy'

# Cryptocurrency Quote
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/cryptoQuotes?token=YOUR_TOKEN&symbols=btcusd'

# Cryptocurrency Book
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/cryptoBook?token=YOUR_TOKEN&symbols=btcusd'

# Cryptocurrency Events
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/cryptoEvents?token=YOUR_TOKEN&symbols=btcusd'

# Social Sentiment
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/sentiment?token=YOUR_TOKEN&symbols=spy'

# Forex / Currencies
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/forex?token=YOUR_TOKEN&symbols=USDCAD'

# News
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/news-stream?token=YOUR_TOKEN&symbols=spy'

# IEX TOPS
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/tops?token=YOUR_TOKEN&symbols=spy'

# IEX LAST
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/last?token=YOUR_TOKEN&symbols=spy,aapl,tsla'

# IEX DEEP
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=deep'

# IEX DEEP by channel
curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=auction'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=book'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=op-halt-status'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=official-price'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=security-event'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=trades'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=trade-breaks'

curl --header 'Accept: text/event-stream' 'https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=spy&channels=trading-status'

Node.js SSE client example

'use strict';
const request = require('request');
var stream;

function connect() {
    stream = request({
        url: 'https://cloud-sse.iexapis.com/stable/stocksUS?token=YOUR_TOKEN&symbols=spy',
        headers: {
            'Content-Type': 'text/event-stream'
        }
    })
}
connect();

stream.on('socket', () => {
    console.log("Connected");
});

stream.on('end', () => {
    console.log("Reconnecting");
    connect();
});

stream.on('complete', () => {
    console.log("Reconnecting");
    connect();
});

stream.on('error', (err) => {
    console.log("Error", err);
    connect();
});

stream.on('data', (response) => {
    var str = response.toString();
    var obj = JSON.parse(str.replace('data:', ''));

    console.log(obj);
});

function wait () {
    setTimeout(wait, 1000);
};

wait();

Attribution

Attribution is required for all users. It is as simple as putting “Data provided by IEX Cloud” somewhere on your site or app and linking that text to https://iexcloud.io. In case of limited screen space, or design constraints, the attribution link can be included in your terms of service.

<a href="https://iexcloud.io">Data provided by IEX Cloud</a>

Disclaimers

A note on currency

Prices and monetary values such as historical financials are returned in a symbol’s associated currency. You can see the currency for any given symbol in the reference data.

SSL

We provide a valid, signed certificate for our API methods. Be sure your connection library supports HTTPS with the SNI extension.

Support

If you find any issues with our API or have any questions, please file an issue at Github. If your account includes support, you’ll find additional support options when logged into your Console.

Libraries

Below is a list of known unofficial IEX API libraries and integrations. If you’d like to have your library, integration, or app added, email us at support@iexcloud.io.

Libraries and applications that support IEX Cloud

Language URL
C# IEXCloudDotNet
Excel IEX-Excel-Sharp
Go goinvest
Haskell iexcloud
Hubot hubot-stock-checker
KDB iex_q
Java IEXTrading4j
NodeJS iexcloud-api-wrapper
Outlook IEX-Outlook-Sharp
PHP iex-cloud-sdk
PowerPoint IEX-PowerPoint-Sharp
Python pyEX
iexfinance
R iexcloudR
Riex
Ruby iex-ruby-client
Word IEX-Word-Sharp

Applications that support IEX Cloud

Application URL
Perspective GitHub Link
Postman Collections GitHub Link
Stock Analysis Engine GitHub Link Docs
TOP - an HTML5 Trading Terminal from SoftCapital Top - By SoftCapital

Libraries that support the original IEX API v1

Reach out to the developer and ask about supporting IEX Cloud.

Language URL
C++ IEX_CPP_API
C# IEXTrading API
IEXDotNetWrapper
Excel Stock Connector by Michael Saunders
2Investing
Go go-iex
Haskell stocks
HTML Stocks!
Java IEXTrading4j
KDB iex_q
Perl Finance::Quote::IEX
Python iexfinance
iex-api-python
pyEX
iex_data
pandas-datareader
PyPI IEX
IEX with Bokeh
.NET IEXTradingApi
NodeJS iex-api
PHP iex-trading
R IEX API for R
React ticker-react
iex-api
Ruby iex-ruby-client
Rust iex-rs

How To

REST How-To

Making your first REST API call is easy and can be done from your browser.

You will need:

REST calls are made up of:

Free IEX price for Apple

https://cloud.iexapis.com/stable/tops?token=YOUR_TOKEN_HERE&symbols=aapl

Stock quote for Apple

https://cloud.iexapis.com/stable/stock/aapl/quote?token=YOUR_TOKEN_HERE

Curl quote for Apple from the command line

curl -k 'https://cloud.iexapis.com/stable/stock/aapl/quote?token=YOUR_TOKEN_HERE'

Excel How-To

IEX Cloud supports Excel and Google Sheets data import methods.

Excel

Excel provides the Webservice function to import data into a cell. We support this in endpoints like quote, stats, financials, cash-flow, balance-sheet, income, and dividends.

Example:

This will pull just the latest price for Apple
=WEBSERVICE("https://cloud.iexapis.com/stable/stock/aapl/quote/latestPrice?token=YOUR_TOKEN_HERE")

IEX Cloud provides an example Excel file that can be used to see how the Webservice function works. Download it here - the Excel webservice function only works on Excel for Windows.

Please note, the highlighted column for latestUpdate is a formula that converts the Unix timestamp into an excel date/time. To get this to work you’ll have to put your token in column B1. And don’t forget that you need to refresh the workbook to update (CTRL + ALT + F9)

Google Sheets

Google Sheets provides IMPORT functions to populate cells with data.

This will pull just the latest price for Apple
=IMPORTDATA("https://cloud.iexapis.com/stable/stock/aapl/quote/latestPrice?token=YOUR_TOKEN_HERE")

Next earnings report date for Apple
=IMPORTDATA("https://cloud.iexapis.com/stable/stock/aapl/estimates/1/reportDate?token=YOUR_TOKEN_HERE")

CSV Files

You can also return most endpoints as CSV by passing a query parameter of format=csv.
https://cloud.iexapis.com/stable/stock/aapl/quote?token=YOUR_TOKEN_HERE&format=csv

Account

Metadata

Used to retrieve account details such as current tier, payment status, message quote usage, etc.

HTTP Request

GET /account/metadata

JSON Response

{
    "payAsYouGoEnabled": true,
    "effectiveDate": 1547590582000,
    "endDateEffective": 1547830921000,
    "subscriptionTermType": "monthly",
    "tierName": "launch",
    "messageLimit": 1000000000,
    "messagesUsed": 215141655,
    "circuitBreaker": 3000000000
}

Data Weighting

Free

Data Timing

Start users End of day
Launch, Grow, and Scale users Real-time

Notes

Requires SK token to access

Available Methods

GET /account/metadata

Usage

Used to retrieve current month usage for your account.

HTTP Request

GET /account/usage/{type}

JSON Response

{
    "monthlyUsage": 215200,
    "monthlyPayAsYouGo": 0,
    "dailyUsage": {
        "20190120": 115200, 
        "20190121": 100000
    },
    "tokenUsage": {
        "pk_123": 215200
    },
    "keyUsage": {
        "IEX_STATS": 0, 
        "EARNINGS": 115200, 
        "STOCK_QUOTES": 100000
    }
}

Data Weighting

Free

Data Timing

Real-time

Notes

Available Methods

GET /account/usage/{type}

Path Parameters

Option Description
type Optional. Used to specify which quota to return. Ex: messages, rules, rule-records, alerts, alert-records

Pay as you go

Used to toggle Pay-as-you-go on your account.

HTTP Request

POST /account/payasyougo

Data Weighting

Free

Notes

Requires SK token to access

Available Methods

POST /account/payasyougo

Query Parameters

Option Description
token Required (Boolean) Your SK API token.
allow Required (Boolean) Pass true to enable Pay-as-you-go, or false to disable.

Message Budget

Used to set an upper limit, “message budget”, on pay as you go messages where you want to make sure not to go above a certain amount. Set the total messages you wish to consume for the month, and once that limit is reached, all API calls will stop until the limit is removed or increased.

HTTP Request

POST /account/messagebudget

Data Weighting

Free

Notes

Requires SK token to access

Available Methods

POST /account/messagebudget

Query Parameters

Option Description
token Required (Boolean) Your SK API token.
totalMessages Required (Number) The total messages your account is allowed to consume for the current month above your quota. For example: If your account is allowed 5 million messages, and you do not want to exceed 10 million for the month, then you will pass 10000000 as total messages.

Signed Requests

Making your first Signed REST API requires a little more effort. This approach has been heavily based on Amazon’s V4 signing approach. The basic idea is to take your secret key, and use that to generate a cryptographic fingerprint of all aspects of your request, so they can be verified by the server, so the interception of the data over the network does not compromise your account. However, you must take care that your secret key for your publishable key is not compromised!

You will need:

Signed REST calls are made up of:

Setting up signed token

Signs a token, so it will require signed headers when a request is made using this token.

HTTP request

POST content-type:application/json { "token" : "SK_TOKEN", "tokenToSign" : "PK/SK_TOKEN_TO_BE_SIGNED", ("unsign" : true) } /account/signed

JSON response

{
    "secret" : "e2700e6b-3be0-4f31-a408-61365caa263a",
    "signedToken" : "pk_6b95e1fac3114f0392a5becd4d8f08e1"
}

Data Weighting

Free

Notes

Examples

See below

Response Attributes

Key Type Description
secret string The secret key for the token
signedToken string The token that has just been signed

Getting the secret for a signed token

Returns the secret for a token, thus making it “signed”.

HTTP request

GET /account/signed?token=SK_TOKEN&signedToken=TOKEN

JSON example

{
     "secret" : "e2700e6b-3be0-4f31-a408-61365caa263a",
}

Data Weighting

Free

Notes

Examples

See below

Response Attributes

Key Type Description
secret string The secret key for the token

Examples on how to make a signed request:

Node.js Example

#!/usr/bin/env node

/*
Copyright 2019-2020 iexcloud. or its affiliates. All Rights Reserved.

This file is licensed under the Apache License, Version 2.0 (the "License").
You may not use this file except in compliance with the License. A copy of the
License is located at

https://www.apache.org/licenses/LICENSE-2.0

This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License.
*/

const moment = require('moment');
const crypto = require('crypto');
const https  = require('https');

const method = 'GET'
const host = 'cloud.iexapis.com'

const access_key = process.env.IEX_PUBLIC_KEY // public key
const secret_key = process.env.IEX_SECRET_KEY // secret key for public key

const canonical_querystring = 'token=' + access_key ;
const canonical_uri = '/v1/stock/aapl/company'

var ts = moment.utc();
const iexdate = ts.format("YYYYMMDDTHHmmss") + 'Z';
const datestamp = ts.format("YYYYMMDD");

function sign(secret, data) {
    return crypto.createHmac('sha256', secret).update(data, "utf8").digest('hex');
};

function getSignatureKey(key, datestamp) {
    const signedDate = sign(key, datestamp);
    return sign(signedDate, 'iex_request');
}

if ( ! access_key || ! secret_key ) {
    console.warn('No access key is available.')
    process.exit(1);
}

const canonical_headers = 'host:' + host + '\n' + 'x-iex-date:' + iexdate + '\n';
const signed_headers = 'host;x-iex-date'
const payload = '';
const payload_hash = crypto.createHash('sha256').update(payload).digest('hex');
const canonical_request = method + '\n' + canonical_uri + '\n' + canonical_querystring + '\n' + canonical_headers + '\n' + signed_headers + '\n' + payload_hash;
const algorithm = 'IEX-HMAC-SHA256';
const credential_scope = datestamp + '/' + 'iex_request';
const string_to_sign = algorithm + '\n' +  iexdate + '\n' +  credential_scope + '\n' + crypto.createHash('sha256').update(canonical_request, "utf8").digest('hex');
const signing_key = getSignatureKey(secret_key, datestamp)
const signature = crypto.createHmac('sha256', signing_key).update(string_to_sign, "utf8").digest('hex');
const authorization_header = algorithm + ' ' + 'Credential=' + access_key + '/' + credential_scope + ', ' +  'SignedHeaders=' + signed_headers + ', ' + 'Signature=' + signature
const headers = {'x-iex-date':iexdate, 'Authorization':authorization_header}

const options = {
    host: host,
    port: 443,
    path: canonical_uri + "?" + canonical_querystring,
    method: 'GET',
    headers: headers
};

const req = https.request(options, function(res) {
    res.setEncoding('utf8');
    res.on('data', function(chunk) {
        var parsed = JSON.parse(chunk);
        console.log(parsed);
    });
});
req.end();

Python Example

#!/usr/bin/env python

# Copyright 2019-2020 iexcloud. or its affiliates. All Rights Reserved.
#
# This file is licensed under the Apache License, Version 2.0 (the "License").
# You may not use this file except in compliance with the License. A copy of the
# License is located at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
# OF ANY KIND, either express or implied. See the License for the specific
# language governing permissions and limitations under the License.

import sys, os, base64, datetime, hashlib, hmac
import requests # pip install requests

# ************* REQUEST VALUES *************
method = 'GET'
host = 'cloud.iexapis.com'

access_key = os.environ.get('IEX_PUBLIC_KEY')
secret_key = os.environ.get('IEX_SECRET_KEY')

canonical_querystring = 'token=' + access_key
canonical_uri = '/v1/stock/aapl/company'
endpoint = "https://" + host + canonical_uri

def sign(key, msg):
    return hmac.new(key, msg.encode('utf-8'), hashlib.sha256).hexdigest()

def getSignatureKey(key, dateStamp):
    kDate = sign(key, dateStamp)
    return sign(kDate, 'iex_request')

if access_key is None or secret_key is None:
    print('No access key is available.')
    sys.exit()

t = datetime.datetime.utcnow()
iexdate = t.strftime('%Y%m%dT%H%M%SZ')
datestamp = t.strftime('%Y%m%d') # Date w/o time, used in credential scope
canonical_headers = 'host:' + host + '\n' + 'x-iex-date:' + iexdate + '\n'
signed_headers = 'host;x-iex-date'
payload_hash = hashlib.sha256(('').encode('utf-8')).hexdigest()
canonical_request = method + '\n' + canonical_uri + '\n' + canonical_querystring + '\n' + canonical_headers + '\n' + signed_headers + '\n' + payload_hash
algorithm = 'IEX-HMAC-SHA256'
credential_scope = datestamp + '/' + 'iex_request'
string_to_sign = algorithm + '\n' +  iexdate + '\n' +  credential_scope + '\n' +  hashlib.sha256(canonical_request.encode('utf-8')).hexdigest()
signing_key = getSignatureKey(secret_key, datestamp)
signature = hmac.new(signing_key, (string_to_sign).encode('utf-8'), hashlib.sha256).hexdigest()
authorization_header = algorithm + ' ' + 'Credential=' + access_key + '/' + credential_scope + ', ' +  'SignedHeaders=' + signed_headers + ', ' + 'Signature=' + signature

headers = {'x-iex-date':iexdate, 'Authorization':authorization_header}

# ************* SEND THE REQUEST *************
request_url = endpoint + '?' + canonical_querystring

print('\nBEGIN REQUEST++++++++++++++++++++++++++++++++++++')
print('Request URL = ' + request_url)
r = requests.get(request_url, headers=headers)

print('\nRESPONSE++++++++++++++++++++++++++++++++++++')
print('Response code: %d\n' % r.status_code)
print(r.text)

Data APIs

IEX Cloud data can be organized into three generic data APIs: time-series, data-tables, and data-points. Each API type is self describing and the docs can be accessed without an API token.

Data Points

Data points are available per symbol and return individual plain text values. Retrieving individual data points is useful for Excel and Google Sheet users, and applications where a single, lightweight value is needed. We also provide update times for some endpoints which allow you to call an endpoint only once it has new data.

To use this endpoint, you’ll first make a free call to list all available data points for your desired symbol, which can be a security or data category.

HTTP request

# List available data keys
GET /data-points/{symbol}

JSON request

[
  {
    "key": "QUOTE-LATESTPRICE",
    "weight": 1,
    "description": "Quote: latestPrice",
    "lastUpdated": "2019-04-15T13:56:39+00:00"
  },
  {
    "key": "LATEST-FINANCIAL-REPORT-DATE",
    "weight": 0,
    "description": "Latest financials report date available",
    "lastUpdated": "2019-04-15T08:08:10+00:00"
  },
  {
    "key": "LATEST-NEWS",
    "weight": 0,
    "description": "Timestamp of the latest available news item",
    "lastUpdated": "2019-04-15T13:50:11+00:00"
  },
  {
    "key": "PRICE-TARGET",
    "weight": 500,
    "description": "Price target average",
    "lastUpdated": "2019-04-15T12:00:08+00:00"
  },
]

Once you find the data point you want, use the key to fetch the individual data point.

HTTP request

# Get a data point
GET /data-points/{symbol}/{key}

Data Weighting

List available data keys Free
Get a data point: The weight specified in the data list.

Data Timing

Varies

Data Schedule

Varies

Data Source(s)

Varies

Notes

Access to each data point will be based on the source Stocks endpoint

Available Methods

Examples

Response Attributes

Data point call returns a single plain text value Available data keys call returns:

Name Type Description
key string Data key used to call a specific data point
weight number Data weight to call the individual data point in number of messages.
description string Description of the data point
lastUpdated string ISO 8601 formatted date time the data point was last updated.

Data Tables In Dev

The data tables endpoint provides structured data that is not date or time dependent. Data can contain a variety of rows, columns, and data types and is structured as a JSON array of objects.

Time Series

Time series is the most common type of data available, and consists of a collection of data points over a period of time. Time series data is indexed by a single date field, and can be retrieved by any portion of time.

To use this endpoint, you’ll first make a free call to get an inventory of available time series data.

HTTP request

# List all available time series data
GET /time-series

JSON response

{
  "id": "REPORTED_FINANCIALS",
  "description": "Reported financials",
  "key": "a valid symbol",
  "subkey": "10-K,10-Q",    
  "schema": {
    "type": "object",
    "properties": {
      "formFiscalYear": {
        "type": "number"
      },
      "formFiscalQuarter": {
        "type": "number"
      },
      "version": {
        "type": "string"
      },
      "periodStart": {
        "type": "string"
      },
      "periodEnd": {
        "type": "string"
      },
      "dateFiled": {
        "type": "string"
      },
      "reportLink": {
        "type": "string"
      },
      "adsh": {
        "type": "string"
      },
      "stat": {
        "type": "object"
      }
    }
  },
  "weight": 5000,
  "created": "2019-06-04 21:32:20",
  "lastUpdated": "2019-06-04 21:32:20"
}

A full inventory of time series data is returned by calling /time-series without a data id. The data structure returned is an array of available data sets that includes the data set id, a description of the data set, the data weight, a data schema, date created, and last updated date. The schema defines the minimum data properties for the data set, but note that additional properties can be returned. This is possible when data varies between keys of a given data set.

Each inventory entry may include a key and subkey which describes what can be used for the key or subkey parameter.

Once you find the data set you want, use the id to query the time series data.

HTTP request

# Get time series data
GET /time-series/{id}/{key?}/{subkey?}

Time series data is queried by a required data set id. For example, “REPORTED_FINANCIALS”. Some time series data sets are broken down further by a data set key. This may commonly be a symbol. For example, REPORTED_FINANCIALS accepts a symbol such as “AAPL” as a key. Data sets can be even further broken down by sub key. For example, REPORTED_FINANCIALS data set with the key “AAPL” can have a sub key of “10-Q” or “10-K”.

Keys and sub keys will be defined in the data set inventory.

Data Weighting

The time series inventory call is Free
Time series data weight is specified in the inventory call and applied per array item (row) returned.

Data Timing

Varies

Data Schedule

Varies

Data Source(s)

Varies

Notes

Access to each data point will be based on the source Stocks endpoint

Available Methods

GET /time-series
GET /time-series/{id}/{key?}/{subkey}

Examples

Path Parameters

Parameter Details
id Required
ID used to identify a time series dataset.
key Required
Key used to identify data within a dataset. A common example is a symbol such as AAPL.
subkey Optional
The optional subkey can used to further refine data for a particular key if available.

Query String Parameters

Parameter Details
from Optional
Returns data on or after the given from date. Format YYYY-MM-DD. Used together with the to parameter to define a date range.
to Optional
Returns data on or before the given to date. Format YYYY-MM-DD
on Optional
Returns data on the given date. Format YYYY-MM-DD
last Optional
Returns the latest n number of records in the series
first Optional
Returns the first n number of records in the series
filter Optional
The standard filter parameter. Filters return data to the specified comma delimited list of keys (case-sensitive)
format Optional
The standard format parameter. Returns data as JSON by default. See the data format section for supported types.

Response Attributes

Time series call returns an array of objects. The data returned varies by dataset ID, but each will contain common attributes.

Name Type Description
id string The dataset ID
source string source of the data if available
key string The requested dataset key
subkey string The requested dataset subkey
date number The date field of the time series as epoch timestamp

Time series inventory call returns:

Name Type Description
id string Dataset ID
description string Description of the dataset
key string Dataset key
subkey string Dataset subkey
schema object Data weight to call the individual data point in number of messages.
weight number Data weight to call the time series in number of messages per array item (row) returned.
created string ISO 8601 formatted date time the time series dataset was created.
lastUpdated string ISO 8601 formatted date time the time series dataset was last updated.

Stocks

Use the /ref-data/symbols endpoint to find the symbols that we support.

Advanced Stats

Returns everything in key stats plus additional advanced stats such as EBITDA, ratios, key financial data, and more.

HTTP request

GET /stock/{symbol}/advanced-stats

JSON response

{
    // ...key stats
    "totalCash": 66301000000,
    "currentDebt": 20748000000,
    "revenue": 265809000000,
    "grossProfit": 101983000000,
    "totalRevenue": 265809000000,
    "EBITDA": 80342000000,
    "revenuePerShare": 0.02,
    "revenuePerEmployee": 2013704.55,
    "debtToEquity": 1.07,
    "profitMargin": 22.396157,
    "enterpriseValue": 1022460690000,
    "enterpriseValueToRevenue": 3.85
    "priceToSales": 3.49,
    "priceToBook": 8.805916432564608,
    "forwardPERatio": 18.14,
    "pegRatio": 2.19,
    "beta": 1.4661365583766115
}

Data Weighting

3,000 per symbol + Key Stats weight

Data Timing

End of day

Data Schedule

4am, 5am ET

Data Source(s)

Primary Partner

Notes

Only included with paid subscription plans

Available Methods

GET /stock/{symbol}/advanced-stats/

Examples

Response Attributes

Key Type Description
Inherited stats See key stats
totalCash number Cash on hand
currentDebt number The current debt
revenue number In accounting, revenue is the income that a business has from its normal business activities, usually from the sale of goods and services to customers
grossProfit number Gross profit is the profit a company makes after deducting the costs associated with making and selling its products, or the costs associated with providing its services
totalRevenue number Calculated as the sum of gross income (the difference between sales or revenues and cost of goods sold and depreciation) and cost of goods sold for the period
EBITDA number Earnings before interest, tax, depreciation and amoritzation
revenuePerShare number Amount of revenue over common shares outstanding
revenuePerEmployee number Net Income per employee (NIPE) is a company’s net income divided by the number of employees
debtToEquity number The debt-to-equity (D/E) ratio is calculated by dividing a company’s total liabilities by its shareholder equity
profitMargin number A measure of profitability by finding the net profit as a percentage of the revenue
enterpriseValue number Enterprise value (EV) is a measure of a company’s total value, often used as a more comprehensive alternative to equity market capitalization
enterpriseValueToRevenue number The enterprise value-to-revenue multiple (EV/R) is a measure of the value of a stock that compares a company’s enterprise value to its revenue
priceToSales number Price–sales ratio, P/S ratio, or PSR, is a valuation metric for stocks. It is calculated by dividing the company’s market capitalization by the revenue in the most recent year; or, equivalently, divide the per-share stock price by the per-share revenue
priceToBook number The price-to-book ratio, or P/B ratio, is a financial ratio used to compare a company’s current market price to its book value
forwardPERatio number Forward price-to-earnings (forward P/E) is a version of the ratio of price-to-earnings (P/E) that uses forecasted earnings for the P/E calculation
pegRatio number The PEG ratio is calculated easily and represents the ratio of the P/E to the expected future earnings per share (EPS) growth rate of a company
beta number Beta is a measure used in fundamental analysis to determine the volatility of an asset or portfolio in relation to the overall market. Levered beta calculated with 1 year historical data and compared to SPY.
peHigh string 52 week high of the symbol’s PE Ratio.
peLow string 52 week low of the symbol’s PE Ratio.

Balance Sheet

Pulls balance sheet data. Available quarterly or annually with the default being the last available quarter.

HTTP request

GET /stock/{symbol}/balance-sheet

JSON response

{
  "symbol": "AAPL",
  "balancesheet": [
    {
      "reportDate": "2017-03-31",
      "currentCash": 25913000000,
      "shortTermInvestments": 40388000000,
      "receivables": 23186000000,
      "inventory": 3956000000,
      "otherCurrentAssets": 12087000000,
      "currentAssets": 131339000000,
      "longTermInvestments": 170799000000,
      "propertyPlantEquipment": 41304000000,
      "goodwill": null,
      "intangibleAssets": null,
      "otherAssets": 22283000000,
      "totalAssets": 365725000000,
      "accountsPayable": 55888000000,
      "currentLongTermDebt": 8784000000,
      "otherCurrentLiabilities": 40230000000,
      "totalCurrentLiabilities": 116866000000,
      "longTermDebt": 93735000000,
      "otherLiabilities": 4268000000,
      "minorityInterest": 0,
      "totalLiabilities": 258578000000,
      "commonStock": 40201000000,
      "retainedEarnings": 70400000000,
      "treasuryStock": null,
      "capitalSurplus": null,
      "shareholderEquity": 107147000000,
      "netTangibleAssets": 107147000000
    } // , { ... }
  ]
}

Data Weighting

3000 per symbol per period

Data Timing

End of day

Data Schedule

Updates at 8am, 9am UTC daily

Data Source(s)

Primary Partner

Notes

Examples

Query String Parameters

Option Details
period Optional
string. Allows you to specify annual or quarterly balance sheet. Defaults to quarterly. Values should be annual or quarter
last • Optional
• number. Specify the number of quarters or years to return. One quarter is returned by default. You can specify up to 12 quarters with quarter, or up to 4 years with annual.

Response Attributes

Key Type Description
reportDate string The last day of the relevant fiscal period.
currentCash number Represents current cash excluding short-term investments. Current cash excludes commercial paper issued by unconsolidated subsidiaries to the parent company, amount due from sale of debentures, checks written by the company but not yet deposited and charged to the company’s bank account, and promissory notes.
shortTermInvestments number Total short-term investments.
receivables number Represents net claims against customers for merchandise sold or services performed in the ordinary course of business. Investopedia
inventory number Represents tangible items or merchandise net of advances and obsolescence acquired for either resale directly or included in the production of finished goods manufactured for sale in the normal course of operation. Excludes tools that are listed in current assets, supplies and prepaid expenses for companies that lump these items together, advances from customers, and contract billings. For non-U.S. companies, if negative inventories arise from advances from customers greater than costs on long-term contracts, it is reclassified to current liabilities.
otherCurrentAssets number Represents other current assets for the period. Investopedia
currentAssets number Represents cash and other assets that are reasonably expected to be realized in cash, sold or consumed within one year or one operating cycle. Generally, the sum of cash and equivalents, receivables, inventories, prepaid expenses, and other current assets. For non-U.S. companies, long term receivables are excluded from current assets even though included in net receivables. Investopedia
longTermInvestments number Represents total investments and advances for the period. Calculated as long term investment minus affiliate companies and other long term investments. Investopedia
propertyPlantEquipment number Represents gross property, plant, and equipment less accumulated reserves for depreciation, depletion, and ammortization. Investopedia
goodwill number Represents the excess cost over the fair market value of the net assets purchased. Is excluded from other intangible assets. Investopedia
intangibleAssets number Represents other assets not having a physical existence. The value of these assets lie in their expected future return. This excludes goodwill. Investopedia
otherAssets number Returns other assets for the period calculated as other assets including intangibles minus intangible other assets.
totalAssets number Represents the sum of total current assets, long-term receivables, investment in unconsolidated subsidiaries, other investments, net property plant and equipment, deferred tax assets, and other assets.
accountsPayable number Represents the claims of trade creditors for unpaid goods and services that are due within the normal operating cycle of the company. Investopedia
currentLongTermDebt number Represents the amount of long term debt due within the next twelve months. Excludes notes payable arising from short term borrowings, current maturities of participation and entertainment obligation, contracts payable for broadcast rights, current portion of advances and production payments Bank overdrafts, advances from subsidiaries/associated companies, and current portion of preferred stock of a subsidiary. Investopedia
otherCurrentLiabilities number Represents other current liabilities and calculated as the sum of misc current liabilities, dividends payable, and accrued payroll.
totalCurrentLiabilities number Represents debt or other obligations that the company expects to satisfy within one year.
longTermDebt number Represents all interest-bearing financial obligations, excluding amounts due within one year, net of premium or discount. Excludes current portion of long-term debt, pensions, deferred taxes, and minority interest. Investopedia
otherLiabilities number Returns other liabilities for the period calculated as the sum of other liabilities excluding deferred revenue, deferred income, and deferred tax liability in untaxed reserves.
minorityInterest number Represents the portion of earnings/losses of a subsidiary pertaining to common stock not owned by the controlling company or other members of the consolidated group. Minority Interest is subtracted from consolidated net income to arrive at the company’s net income.
totalLiabilities number Represents all short and long term obligations expected to be satisfied by the company. Excludes minority interest preferred stock equity, preferred stock equity, common stock equity, and non-equity reserves.
commonStock number Represents the par or stated value of the issued common shares of the company. It includes the value of all multiple shares. Along with capital surplus it is the equity capital received from parties outside the company. Excess involuntary liquidation value of preferred stock over stated value when common stock value and capital surplus are reported combined. Investopedia
retainedEarnings number Represents the accumulated after tax earnings of the company which have not been distributed as dividends to shareholders or allocated to a reserve amount. Excess involuntary liquidation value over stated value of preferred stock is deducted if there is an insufficient amount in the capital surplus account. Investopedia
treasuryStock number Represents the acquisition cost of shares held by the company. For non-U.S. companies treasury stock may be carried at par value. This stock is not entitled to dividends, has no voting rights, and does not share in the profits in the event of liquidation. Investopedia
capitalSurplus number Represents the amount received in excess of par value from the sale of common stock. Along with common stock it is the equity capital received from parties outside the company.
shareholderEquity number Total shareholders’ equity for the period calculated as the sum of total common equity and preferred stock carrying value.
netTangibleAssets number Calculated as shareholder equity less goodwill and less

Batch Requests

HTTP request

GET /stock/{symbol}/batch

JSON response

// .../symbol
{
  "quote": {...},
  "news": [...],
  "chart": [...]
}

// .../market
{
  "AAPL" : {
    "quote": {...},
    "news": [...],
    "chart": [...]
  },
  "FB" : {
    "quote": {...},
    "news": [...],
    "chart": [...]
  },
}

Data Weighting

Based on each type of call

Examples

Path Parameters

Option Description
symbol Use market to query multiple symbols (i.e. .../market/batch?...)

Query String Parameters

Option Details
types • Required
• Comma delimited list of endpoints to call. The names should match the individual endpoint names. Limited to 10 endpoints.
symbols • Optional
• Comma delimited list of symbols limited to 100. This parameter is used only if market option is used.
range • Optional
• Used to specify a chart range if chart is used in types parameter.
* • Optional
• Parameters that are sent to individual endpoints can be specified in batch calls and will be applied to each supporting endpoint. For example, last can be used for the news endpoint to specify the number of articles

Response Attributes

Responses will vary based on types requested. Refer to each endpoint for details.

Book

HTTP request

GET /stock/{symbol}/book

JSON response

{
  "quote": {...},
  "bids": [...],
  "asks": [...],
  "trades": [...],
  "systemEvent": {...},
}

Data Weighting

1 per quote returned

Data Timing

Real-time + 15min delayed

Data Schedule

Real-time during Investors Exchange market hours

Data Source(s)

Investors Exchange Primary Partner Consolidated Tape

Available Methods

GET /stock/{symbol}/book

Examples

Response Attributes

Response includes data from deep and quote. Refer to each endpoint for details.

Cash Flow

Pulls cash flow data. Available quarterly or annually, with the default being the last available quarter.

HTTP request

GET /stock/{symbol}/cash-flow

JSON response

{
  "symbol": "AAPL",
  "cashflow": [
    {
      "reportDate": "2018-09-30",
      "netIncome": 14125000000,
      "depreciation": 2754000000,
      "changesInReceivables": -9082000000,
      "changesInInventories": 1942000000,
      "cashChange": -6058000000,
      "cashFlow": 19523000000,
      "capitalExpenditures": -3041000000,
      "investments": -926000000,
      "investingActivityOther": 1566000000,
      "totalInvestingCashFlows": -3001000000,
      "dividendsPaid": -3530000000,
      "netBorrowings": -27000000,
      "otherFinancingCashFlows": -260000000,
      "cashFlowFinancing": -22580000000,
      "exchangeRateEffect": null
    } // , { ... }
  ]
}

Data Weighting

1000 per symbol per period

Data Timing

End of day

Data Schedule

Updates at 8am, 9am UTC daily

Data Source(s)

Primary Partner

Notes

Only included with paid subscription plans

Examples

Query String Parameters

Option Details
period • Optional
• string. Allows you to specify annual or quarterly cash flow. Defaults to quarterly. Values should be annual or quarter
last • Optional
• number. Specify the number of quarters or years to return. One quarter is returned by default. You can specify up to 12 quarters with quarter, or up to 4 years with annual.

Response Attributes

Key Type Description
reportDate string The last day of the relevant fiscal period.
netIncome number Represents income before extraordinary items and preferred and common dividends, but after operating and non-operating income and expenses, minority interest and equity in earnings.
depreciation number Depreciation represents the process of allocating the cost of a depreciable asset to the accounting periods covered during its expected useful life to a business. Depletion refers to cost allocation for natural resources such as oil and mineral deposits. Amortization relates to cost allocation for intangible assets such as patents and leasehold improvements, trademarks, book plates, tools & film costs. This item includes dry-hole expense, abandonments and oil and gas property valuation provision for extractive companies. This item excludes amortization of discounts or premiums on financial instruments owned or outstanding and depreciation on discontinued operations.
changesInReceivables number
changesInInventories number Represents the change in the amount of inventories from one year to the next as reported in the cash flow statement.
cashChange number Represents the change in cash and short term investments from one year to the next. This item is available only when the Statement of Changes in Financial Position is based on cash and short term investments.
cashFlow number Returns net cash from operating activities for the period calculated as the sum of funds from operations, extraordinary items, and funds from other operating activities.
capitalExpenditures number Returns total capital expenditures for the period calculated as the sum of capital expenditures additions to fixed assets, and additions to other assets.
investments number Returns purchase/sale of investments for the period calculated as the sum of the negative of increase in investments, and decrease in investments
investingActivityOther number Represents any other funds employed in investing activities and not included in capital expenditures, net assets from acquisitions, increase in investments, decrease in investments or additions to property.
totalInvestingCashFlows number Returns net cash from investing activities for the period calculated as (Cash Flow from Investing Activity) - Net. If this is not available, then it is calculated as (Other Uses/(Sources) Investing) + (Disposal of fixed assets) + (decrease in investments) - (net assets from acquisitions) - (capital expenditures other assets) - (increase in investments) - (capital expenditures additions to fixed assets)
dividendsPaid number Represents the total common and preferred dividends paid to shareholders of the company. Excludes dividends paid to minority shareholders.
netBorrowings number Returns net issuance/reduction of debt for the period calculated as (increase/decrease in short term borrowings) + (long term borrowings - reduction in long term debt)
otherFinancingCashFlows number Returns other financing activities for the period.
cashFlowFinancing number Returns net cash from financing activities for the period.
exchangeRateEffect number Represents the effect of translating from one currency to another on the cash flow of the company.

Collections

Returns an array of quote objects for a given collection type. Currently supported collection types are sector, tag, and list

HTTP request

GET /stock/market/collection/{collectionType}

JSON response

[
    quote,
    ...
]

Data Weighting

Weight of /stock/quote per quote returned

Examples

Query String Parameters

Option Details
collectionName
  • Required
  • Name of the sector, tag, or list to return and is case sensitive.
  • Supported lists can be found under the list section.
  • Supported sectors can be found in the sector ref data.
  • Supported tags can be found in the tag ref data.
  • * You must URL encode the collection name before sending

    Response Attributes

    Key Type Description
    quote object See the quote section.

    Company

    HTTP request

    GET /stock/{symbol}/company
    

    JSON response

    {
      "symbol": "AAPL",
      "companyName": "Apple Inc.",
      "exchange": "NASDAQ",
      "industry": "Telecommunications Equipment",
      "website": "http://www.apple.com",
      "description": "Apple, Inc. engages in the design, manufacture, and marketing of mobile communication, media devices, personal computers, and portable digital music players. It operates through the following geographical segments: Americas, Europe, Greater China, Japan, and Rest of Asia Pacific. The Americas segment includes North and South America. The Europe segment consists of European countries, as well as India, the Middle East, and Africa. The Greater China segment comprises of China, Hong Kong, and Taiwan. The Rest of Asia Pacific segment includes Australia and Asian countries. The company was founded by Steven Paul Jobs, Ronald Gerald Wayne, and Stephen G. Wozniak on April 1, 1976 and is headquartered in Cupertino, CA.",
      "CEO": "Timothy Donald Cook",
      "securityName": "Apple Inc.",
      "issueType": "cs",
      "sector": "Electronic Technology",
      "primarySicCode": 3663,
      "employees": 132000,
      "tags": [
        "Electronic Technology",
        "Telecommunications Equipment"
      ],
      "address": "One Apple Park Way",
      "address2": null,
      "state": "CA",
      "city": "Cupertino",
      "zip": "95014-2083",
      "country": "US",
      "phone": "1.408.974.3123"
    }
    

    Data Weighting

    1 per symbol

    Data Timing

    End of Day

    Data Schedule

    Updates at 4am and 5am UTC every day

    Data Source(s)

    Primary Partner

    Examples

    Response Attributes

    Key Type Description
    symbol string
    companyName string Name of the company
    employees number Number of employees
    exchange string
    industry string
    website string
    description string
    CEO string
    securityName string Name of the security
    issueType string refers to the common issue type of the stock.
    ad – American Depository Receipt (ADR’s)
    re – Real Estate Investment Trust (REIT’s)
    ce – Closed end fund (Stock and Bond Fund)
    si – Secondary Issue
    lp – Limited Partnerships
    cs – Common Stock
    et – Exchange Traded Fund (ETF)
    wt – Warrant
    rt – Right
    (blank) – Not Available, i.e., Note, or (non-filing) Closed Ended Funds
    ut - Unit
    temp - Temporary
    sector string
    primarySicCode string Primary SIC Code for the symbol (if available)
    tags array an array of strings used to classify the company.
    address string street address of the company if available
    address2 string street address of the company if available
    state string state of the company if available
    city string city of the company if available
    zip string zip of the company if available
    country string country of the company if available
    phone string phone number of the company if available

    Delayed Quote

    This returns the 15 minute delayed market quote.

    HTTP request

    GET /stock/{symbol}/delayed-quote
    

    JSON response

    {
      "symbol": "AAPL",
      "delayedPrice": 143.08,
      "delayedSize": 200,
      "delayedPriceTime": 1498762739791,
      "high": 143.90,
      "low": 142.26,
      "totalVolume": 33547893,
      "processedTime": 1498763640156
    }
    

    Data Weighting

    1 per symbol per quote

    Data Timing

    15min delayed

    Data Schedule

    4:30am - 8pm ET M-F when market is open

    Data Source(s)

    Primary Partner

    Notes

    Available Methods

    GET /stock/{symbol}/delayed-quote

    Examples

    Response Attributes

    Key Type Description
    symbol string refers to the stock ticker.
    delayedPrice number refers to the 15 minute delayed market price.
    delayedSize number refers to the 15 minute delayed last trade size.
    delayedPriceTime number refers to the time of the delayed market price.
    processedTime number refers to when IEX processed the SIP price.

    Dividends

    HTTP request

    GET /stock/{symbol}/dividends/{range}
    

    JSON response

    [
        {
            "symbol": "AAPL",
            "exDate": "2017-08-10",
            "paymentDate": "2017-08-17",
            "recordDate": "2017-08-14",
            "declaredDate": "2017-08-01",
            "amount": 0.63,
            "flag": "Dividend income",
            "currency": "USD",
            "description": "Apple declares dividend of .63",
            "frequency": "quarterly"
        } // , { ... }
    ]
    

    Data Weighting

    10 per symbol per period returned

    Data Timing

    End of day

    Data Schedule

    Updated at 9am UTC every day

    Data Source(s)

    Data Partner

    Notes

    Dividends prior to last reported are only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/dividends/{range}

    Examples

    Path Parameters

    Range Description Source
    5y Five years Historical market data
    2y Two years Historical market data
    1y One year Historical market data
    ytd Year-to-date Historical market data
    6m Six months Historical market data
    3m Three months Historical market data
    1m One month (default) Historical market data
    next The next upcoming dividend Historical market data

    Response Attributes

    Key Type Description
    exDate string refers to the dividend ex-date
    paymentDate string refers to the payment date
    recordDate string refers to the dividend record date
    declaredDate string refers to the dividend declaration date
    amount number refers to the payment amount
    flag string Type of dividend event
    currency string Currency of the dividend
    description string Description of the dividend event
    frequency string Frequency of the dividend

    Earnings

    Earnings data for a given company including the actual EPS, consensus, and fiscal period. Earnings are available quarterly (last 4 quarters).

    HTTP request

    GET /stock/{symbol}/earnings/{last}/{field}
    

    JSON response

    {
        "symbol": "AAPL",
        "earnings": [
            {
                "actualEPS": 2.46,
                "consensusEPS": 2.36,
                "announceTime": "AMC",
                "numberOfEstimates": 34,
                "EPSSurpriseDollar": 0.1,
                "EPSReportDate": "2019-04-30",
                "fiscalPeriod": "Q1 2019",
                "fiscalEndDate": "2019-03-31",
                "yearAgo": 2.73,
                "yearAgoChangePercent": -0.0989
            },
            {
                "actualEPS": 4.18,
                "consensusEPS": 4.17,
                "announceTime": "AMC",
                "numberOfEstimates": 35,
                "EPSSurpriseDollar": 0.01,
                "EPSReportDate": "2019-01-29",
                "fiscalPeriod": "Q4 2018",
                "fiscalEndDate": "2018-12-31",
                "yearAgo": 3.89,
                "yearAgoChangePercent": 0.0746
            }
        ]
    }
    

    Data Weighting

    1000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 9am, 11am, 12pm UTC every day

    Data Source(s)

    Primary Partner

    Notes

    Earnings prior to last quarter are only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/earnings
    GET /stock/{symbol}/earnings/{last}
    GET /stock/{symbol}/earnings/{last}/{field}

    Examples

    Path Parameters

    Option Details
    last Optional (Number) - Number of quarters or years to return. Default is 1.
    field Optional (String) - case sensitive string matching a response attribute below. Returns raw value of field specified. Useful for Excel Webservice calls.

    Query Parameters

    Option Details
    last Optional (Number) - Number of quarters or years to return. Default is 1.

    Response Attributes

    Key Type Description
    actualEPS number Actual earnings per share for the period. EPS data is split-adjusted by default. Earnings data accounts for all corporate actions including dilutions, splits, reverse splits, spin-offs, exceptional dividends, and rights issues.
    consensusEPS number Consensus EPS estimate trend for the period
    announceTime string Time of earnings announcement. BTO (Before open), DMT (During trading), AMC (After close)
    numberOfEstimates number Number of estimates for the period
    EPSSurpriseDollar number Dollar amount of EPS surprise for the period
    EPSReportDate string Expected earnings report date YYYY-MM-DD
    fiscalPeriod string The fiscal quarter the earnings data applies to Q# YYYY
    fiscalEndDate string Date representing the company fiscal quarter end YYYY-MM-DD
    yearAgo number Represents the EPS of the quarter a year ago
    yearAgoChangePercent number Represents the percent difference between the quarter a year ago actualEPS and current period actualEPS.

    Earnings Today

    Returns earnings that will be reported today as three arrays: before the open bto, after market close amc and during the trading day other. Each array contains an object with all keys from earnings, a quote object, and a headline key.

    HTTP request

    GET /stock/market/today-earnings
    

    JSON response

    {
      "bto": [
        {
            "consensusEPS": "-0.03",
            "announceTime": "BTO",
            "numberOfEstimates": 4,
            "fiscalPeriod": "Q4 2018",
            "fiscalEndDate": "2018-12-31",
            "symbol": "Z",
            "quote": {
              ...
            },
        },
        ...
      ],
      "amc": [
        {
            "consensusEPS": "-0.03",
            "announceTime": "AMC",
            "numberOfEstimates": 4,
            "fiscalPeriod": "Q4 2018",
            "fiscalEndDate": "2018-12-31",
            "symbol": "NBEV",
            "quote": {
              ...
            },
        },
        ...
      ],
      "dmt": []
    }
    

    Data Weighting

    1000 per symbol returned + 1 per quote returned

    Data Timing

    End of day

    Data Schedule

    Updates at 9am, 11am, 12pm UTC daily

    Data Source(s)

    Primary Partner

    Available Methods

    GET /stock/market/today-earnings

    Examples

    Response Attributes

    Key Type Description
    actualEPS number Actual earnings per share for the period
    consensusEPS number Consensus EPS estimate trend for the period
    announceTime string Time of earnings announcement. BTO (Before open), DMT (During trading or if the time is unknown), AMC (After close)
    numberOfEstimates number Number of estimates for the period
    EPSSurpriseDollar number Dollar amount of EPS surprise for the period
    EPSReportDate string Expected earnings report date YYYY-MM-DD
    fiscalPeriod string The fiscal quarter the earnings data applies to Q# YYYY
    fiscalEndDate string Date representing the company fiscal quarter end YYYY-MM-DD
    yearAgo number Represents the EPS of the quarter a year ago
    yearAgoChangePercent number Represents the percent difference between the quarter a year ago actualEPS and current period actualEPS
    estimatedChangePercent number Represents the percent difference between the quarter a year ago actualEPS and current period consensusEPS
    symbol string The symbol the earning relates to
    quote object See quote

    Estimates

    Provides the latest consensus estimate for the next fiscal period

    HTTP request

    GET /stock/{symbol}/estimates
    

    JSON response

    {
      "symbol": "AAPL",
      "estimates": [
        {
          "consensusEPS": 2.02,
          "numberOfEstimates": 14,
          "fiscalPeriod": "Q2 2017",
          "fiscalEndDate": "2017-03-31",
          "reportDate": "2017-04-15",
        }
      ]
    }
    

    Data Weighting

    10,000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 9am, 11am, 12pm UTC every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/estimates

    Examples

    Response Attributes

    Key Type Description
    consensusEPS number Consensus EPS estimate trend for the period. EPS data is split-adjusted by default. Earnings data accounts for all corporate actions including dilutions, splits, reverse splits, spin-offs, exceptional dividends, and rights issues. Investopedia
    numberOfEstimates number Number of estimates for the period
    fiscalPeriod string The fiscal quarter the earnings data applies to Q# YYYY
    fiscalEndDate string Date representing the company fiscal quarter end YYYY-MM-DD
    reportDate string Expected report date of next earnings

    Financials

    Pulls income statement, balance sheet, and cash flow data from the most recent reported quarter.

    HTTP request

    GET /stock/{symbol}/financials/
    

    JSON response

    {
      "symbol": "AAPL",
      "financials": [
        {
          "reportDate": "2019-03-31",
          "grossProfit": 21648000000,
          "costOfRevenue": 36270000000,
          "operatingRevenue": 57918000000,
          "totalRevenue": 57918000000,
          "operatingIncome": 13242000000,
          "netIncome": 11561000000,
          "researchAndDevelopment": 3948000000,
          "operatingExpense": 44676000000,
          "currentAssets": 123346000000,
          "totalAssets": 341998000000,
          "totalLiabilities": 236138000000,
          "currentCash": 38329000000,
          "currentDebt": 22429000000,
          "shortTermDebt": 22429000000,
          "longTermDebt": 90201000000,
          "totalCash": 80433000000,
          "totalDebt": 112630000000,
          "shareholderEquity": 105860000000,
          "cashChange": -4954000000,
          "cashFlow": 11155000000
        } // , { ... }
      ]
    }
    

    Data Weighting

    5000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 8am, 9am UTC daily

    Data Source(s)

    Primary Partner

    Notes

    Examples

    Query String Parameters

    Option Details
    period • Optional
    • string. Allows you to specify annual or quarterly financials. Defaults to quarterly. Values should be annual or quarterly

    Response Attributes

    Key Type Description
    reportDate string The last day of the relevant fiscal period.
    grossProfit number
    costOfRevenue number
    operatingRevenue number
    totalRevenue number
    operatingIncome number
    netIncome number
    researchAndDevelopment number
    operatingExpense number
    currentAssets number
    totalAssets number
    totalLiabilities number
    currentCash number
    currentDebt number
    currentDebt number
    shortTermDebt number
    longTermDebt number
    totalCash number
    totalDebt number
    shareholderEquity number
    cashChange number
    cashFlow number
    operatingGainsLosses string

    Financials As Reported

    As reported financials are available through the Time Series endpoint. Returns financials reported directly in 10-K and 10-Q filings.

    Go to time-series to get as reported financial data.

    JSON response

    [
      {
        "id": "REPORTED_FINANCIALS",
        "source": "SEC",
        "key": "GOOGL",
        "subkey": "10-K",
        "date": 1549324800,
        "updated": 1560349214,
        "DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible": 600000000,
        "formFiscalYear": 2018,
        "version": "us-gaap",
        "periodStart": 1514764800000,
        "periodEnd": 1546214400000,
        "dateFiled": 1549324800000,
        "formFiscalQuarter": null,
        "reportLink": "",
        "OtherAccruedLiabilitiesCurrent": 7394000000,
        "OtherAssetsCurrent": 4236000000,
        "DeferredFederalStateAndLocalTaxExpenseBenefit": 907000000,
        "OtherAssetsNoncurrent": 2693000000,
        "DeferredForeignIncomeTaxExpenseBenefit": -134000000,
        "DeferredIncomeTaxAssetsNet": 737000000,
        "DeferredIncomeTaxesAndTaxCredits": 778000000,
        "DeferredIncomeTaxExpenseBenefit": 773000000,
        "DeferredIncomeTaxLiabilities": 3491000000,
        "DeferredIncomeTaxLiabilitiesNet": 1264000000,
        "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": -823000000,
        "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesTax": -156000000,
        "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": 388000000,
        "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax": 103000000,
        "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": 290000000,
        "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": -98000000,
        "DeferredTaxAssetsGross": 5781000000,
        "DeferredTaxAssetsLiabilitiesNet": 250000000,
        "DeferredTaxAssetsNet": 2964000000,
        "DeferredTaxAssetsOperatingLossCarryforwards": 557000000,
        "DeferredTaxAssetsOther": 251000000,
        "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": -781000000,
        "OtherComprehensiveIncomeLossNetOfTax": -1216000000,
        "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": -1314000000,
        "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax": 911000000,
        "DeferredTaxAssetsTaxCreditCarryforwardsOther": 1979000000,
        "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits": 387000000,
        "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": 291000000,
        "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther": 1062000000,
        "DeferredTaxAssetsValuationAllowance": 2817000000,
        "DeferredTaxLiabilities": 527000000,
        "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": 229000000,
        "DeferredTaxLiabilitiesInvestments": 1143000000,
        "DeferredTaxLiabilitiesOther": 237000000,
        "DeferredTaxLiabilitiesPropertyPlantAndEquipment": 1382000000,
        "LossContingencyAccrualCarryingValueCurrent": 7754000000,
        "DefinedContributionPlanCostRecognized": 691000000,
        "InventoryNet": 1107000000,
        "EmployeeRelatedLiabilitiesCurrent": 6839000000,
        "LossContingencyLossInPeriod": 5071000000,
        "IncreaseDecreaseInIncomeTaxes": -2251000000,
        "ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months": 247000000,
        "AccountsPayableCurrent": 4378000000,
        "IncreaseDecreaseInOtherOperatingAssets": 1207000000,
        "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": 88000000,
        "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": 1500000000,
        "ForeignCurrencyTransactionGainLossBeforeTax": -80000000,
        "ForeignCurrencyTransactionLossBeforeTax": 195000000,
        "AccountsReceivableNetCurrent": 20838000000,
        "ContractWithCustomerLiabilityCurrent": 1784000000,
        "ContractWithCustomerLiabilityNoncurrent": 396000000,
        "ContractWithCustomerLiabilityRevenueRecognized": 1500000000,
        "Assets": 232792000000,
        "AssetsCurrent": 135676000000,
        "ImpairmentOfInvestments": 0,
        "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": 15800000000,
        "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": 19100000000,
        "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": 34913000000,
        "IncomeTaxesPaidNet": 5671000000,
        "IncomeTaxesReceivable": 355000000,
        "IncomeTaxExpenseBenefit": 4177000000,
        "CommercialPaper": 0,
        "CommitmentsAndContingencies": 0,
        "MarketableSecuritiesCurrent": 92439000000,
        "CommonStockCapitalSharesReservedForFutureIssuance": 31848134,
        "MarketingAndAdvertisingExpense": 6400000000,
        "PreferredStockParOrStatedValuePerShare": 0.001,
        "PreferredStockSharesAuthorized": 100000000,
        "PreferredStockSharesIssued": 0,
        "PreferredStockSharesOutstanding": 0,
        "DerivativeAssetFairValueGrossLiability": 56000000,
        "DerivativeAssetFairValueOffsetAgainstCollateralNetOfNotSubjectToMasterNettingArrangementPolicyElection": 102000000,
        "AssetsNoncurrent": 97116000000,
        "CommonStockParOrStatedValuePerShare": 0.001,
        "CommonStockSharesAuthorized": 15000000000,
        "CommonStockSharesIssued": 695556000,
        "CommonStockSharesOutstanding": 695556000,
        "CommonStocksIncludingAdditionalPaidInCapital": 45049000000,
        "AccruedIncomeTaxesCurrent": 69000000,
        "AccruedIncomeTaxesNoncurrent": 11327000000,
        "AccruedLiabilitiesCurrent": 16958000000,
        "IncreaseDecreaseInAccountsPayable": 1067000000,
        "IncreaseDecreaseInAccountsReceivable": 2169000000,
        "IncreaseDecreaseInAccruedLiabilities": 8614000000,
        "ConvertiblePreferredStockNonredeemableOrRedeemableIssuerOptionValue": 0,
        "LongTermDebt": 4062000000,
        "LongTermDebtAndCapitalLeaseObligations": 4012000000,
        "ComprehensiveIncomeNetOfTax": 29520000000,
        "LongTermDebtFairValue": 3900000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": 3039000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": 0,
        "NetCashProvidedByUsedInFinancingActivities": -13179000000,
        "NetCashProvidedByUsedInInvestingActivities": -28504000000,
        "NetCashProvidedByUsedInOperatingActivities": 47971000000,
        "DerivativeAssetNotOffsetPolicyElectionDeduction": 90000000,
        "DerivativeAssets": 513000000,
        "EntityPublicFloat": 680000000000,
        "NetIncomeLoss": 30736000000,
        "IncreaseDecreaseInCollateralHeldUnderSecuritiesLending": 0,
        "IncreaseDecreaseInContractWithCustomerLiability": 371000000,
        "DerivativeCollateralObligationToReturnCash": 307000000,
        "DerivativeCollateralObligationToReturnSecurities": 14000000,
        "DerivativeCollateralRightToReclaimCash": 0,
        "DerivativeCollateralRightToReclaimSecurities": 0,
        "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": 22788000000,
        "PaymentsForRepurchaseOfCommonStock": 9075000000,
        "LeaseAndRentalExpense": 1300000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": 3000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": 3000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": 1003000000,
        "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": 14000000,
        "LongTermDebtNoncurrent": 3950000000,
        "DerivativeFairValueOfDerivativeAsset": 569000000,
        "DerivativeFairValueOfDerivativeLiability": 289000000,
        "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": 213000000,
        "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": 1054000000,
        "AccumulatedOtherComprehensiveIncomeLossNetOfTax": -2306000000,
        "ProceedsFromCollectionOfNotesReceivable": 0,
        "ProceedsFromDebtNetOfIssuanceCosts": 6766000000,
        "IntangibleAssetsNetExcludingGoodwill": 2220000000,
        "UnrecognizedTaxBenefits": 4652000000,
        "UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions": 623000000,
        "UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities": 191000000,
        "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": 490000000,
        "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": 449000000,
        "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": 321000000,
        "AvailableForSaleSecuritiesDebtMaturitiesAfterFiveThroughTenYearsFairValue": 2236000000,
        "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": 54504000000,
        "AvailableForSaleSecuritiesDebtMaturitiesAfterTenYearsFairValue": 10808000000,
        "EquityMethodInvestments": 1300000000,
        "CapitalLeasedAssetsGross": 648000000,
        "CapitalLeaseObligationsNoncurrent": 62000000,
        "ProceedsFromMinorityShareholders": 950000000,
        "ProceedsFromPaymentsForSecuritiesPurchasedUnderAgreementsToResell": 0,
        "DerivativeLiabilities": 233000000,
        "DerivativeLiabilityFairValueGrossAsset": 56000000,
        "DerivativeLiabilityFairValueOffsetAgainstCollateralNetOfNotSubjectToMasterNettingArrangementPolicyElection": 143000000,
        "DerivativeLiabilityNotOffsetPolicyElectionDeduction": 90000000,
        "EquitySecuritiesFvNiGainLoss": 5460000000,
        "EquitySecuritiesFvNiRealizedGainLoss": 1458000000,
        "EquitySecuritiesFvNiUnrealizedGainLoss": 4002000000,
        "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": 23669000000,
        "AvailableForSaleSecuritiesDebtSecurities": 91217000000,
        "ProceedsFromSaleAndMaturityOfMarketableSecurities": 48507000000,
        "ProceedsFromSaleAndMaturityOfOtherInvestments": 1752000000,
        "PaymentsToAcquireMarketableSecurities": 50158000000,
        "PaymentsToAcquireOtherInvestments": 2073000000,
        "PaymentsToAcquirePropertyPlantAndEquipment": 25139000000,
        "EquitySecuritiesWithoutReadilyDeterminableFairValueAmount": 12275000000,
        "EquitySecuritiesWithoutReadilyDeterminableFairValueDownwardPriceAdjustmentAnnualAmount": 178000000,
        "EquitySecuritiesWithoutReadilyDeterminableFairValueDownwardPriceAdjustmentCumulativeAmount": -178000000,
        "EquitySecuritiesWithoutReadilyDeterminableFairValueUpwardPriceAdjustmentAnnualAmount": 4285000000,
        "EquitySecuritiesWithoutReadilyDeterminableFairValueUpwardPriceAdjustmentCumulativeAmount": -4285000000,
        "CashAndCashEquivalentsAtCarryingValue": 16701000000,
        "CashAndCashEquivalentsFairValueDisclosure": 3493000000,
        "CashAndCashEquivalentsPeriodIncreaseDecrease": 5986000000,
        "CashCashEquivalentsAndShortTermInvestments": 109140000000,
        "PurchaseObligation": 7400000000,
        "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": 9353000000,
        "NoncontrollingInterestIncreaseFromSaleOfParentEquityInterest": 659000000,
        "Liabilities": 55164000000,
        "LiabilitiesAndStockholdersEquity": 232792000000,
        "LiabilitiesCurrent": 34620000000,
        "ProceedsFromSaleOfPropertyPlantAndEquipment": 98000000,
        "InterestCostsCapitalized": 92000000,
        "InterestExpense": 114000000,
        "GeneralAndAdministrativeExpense": 8126000000,
        "PropertyPlantAndEquipmentGross": 82507000000,
        "PropertyPlantAndEquipmentNet": 59719000000,
        "AllocatedShareBasedCompensationExpense": 10000000000,
        "CostMethodInvestments": 4500000000,
        "CostMethodInvestmentsFairValueDisclosure": 8800000000,
        "InterestIncomeOther": 1878000000,
        "InterestPaidNet": 69000000,
        "SellingAndMarketingExpense": 16333000000,
        "Goodwill": 17888000000,
        "GoodwillAcquiredDuringPeriod": 1227000000,
        "AllowanceForDoubtfulAccountsReceivableCurrent": 729000000,
        "NonoperatingIncomeExpense": 8592000000,
        "StockholdersEquity": 177628000000,
        "GoodwillImpairmentLoss": 0,
        "GoodwillTransfers": 0,
        "GoodwillTranslationAndPurchaseAccountingAdjustments": -86000000,
        "FiniteLivedIntangibleAssetsAccumulatedAmortization": 3957000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": 182000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": 712000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": 7000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": 201000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": 533000000,
        "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": 585000000,
        "FiniteLivedIntangibleAssetsGross": 6177000000,
        "FiniteLivedIntangibleAssetsNet": 2220000000,
        "EarningsPerShareBasic": 44.22,
        "EarningsPerShareDiluted": 43.7,
        "RevenueFromContractWithCustomerExcludingAssessedTax": 136819000000,
        "OciBeforeReclassificationsNetOfTaxAttributableToParent": -527000000,
        "EffectiveIncomeTaxRateContinuingOperations": 0.12,
        "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": 0.21,
        "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": -0.02,
        "EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate": -0.012,
        "EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential": -0.049,
        "CostOfRevenue": 59549000000,
        "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": 0.022,
        "EffectiveIncomeTaxRateReconciliationOtherAdjustments": 0.007,
        "EffectiveIncomeTaxRateReconciliationTaxCreditsResearch": 0.024,
        "RetainedEarningsAccumulatedDeficit": 134885000000,
        "CostsAndExpenses": 110498000000,
        "RepaymentsOfDebtAndCapitalLeaseObligations": 6827000000,
        "EffectOfExchangeRateOnCashAndCashEquivalents": -302000000,
        "CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption": -697000000,
        "CurrentFederalStateAndLocalTaxExpenseBenefit": 2153000000,
        "OperatingIncomeLoss": 26321000000,
        "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": 2900000000,
        "StockIssuedDuringPeriodValueNewIssues": 148000000,
        "StockRepurchasedAndRetiredDuringPeriodValue": 9075000000,
        "CurrentForeignTaxExpenseBenefit": 1251000000,
        "CurrentIncomeTaxExpenseBenefit": 3404000000,
        "OperatingLeasesFutureMinimumPaymentsDue": 10102000000,
        "OperatingLeasesFutureMinimumPaymentsDueCurrent": 1319000000,
        "OperatingLeasesFutureMinimumPaymentsDueInFiveYears": 980000000,
        "OperatingLeasesFutureMinimumPaymentsDueInFourYears": 1153000000,
        "OperatingLeasesFutureMinimumPaymentsDueInThreeYears": 1337000000,
        "OperatingLeasesFutureMinimumPaymentsDueInTwoYears": 1397000000,
        "OperatingLeasesFutureMinimumPaymentsDueThereafter": 3916000000,
        "OperatingLeasesFutureMinimumPaymentsReceivable": 55000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableCurrent": 16000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableInFiveYears": 3000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableInFourYears": 8000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableInThreeYears": 10000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableInTwoYears": 13000000,
        "OperatingLeasesFutureMinimumPaymentsReceivableThereafter": 5000000,
        "DebtAndEquitySecuritiesGainLoss": 6650000000,
        "VariableInterestEntityConsolidatedAssetsPledged": 2400000000,
        "VariableInterestEntityConsolidatedLiabilitiesNoRecourse": 909000000,
        "ResearchAndDevelopmentExpense": 21419000000,
        "DebtInstrumentUnamortizedDiscount": 50000000,
        "DebtSecuritiesAvailableForSaleRealizedLoss": 143000000,
        "DebtSecuritiesAvailableForSaleUnrealizedLossPosition": 71665000000,
        "DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss": 1054000000,
        "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss": 267000000,
        "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months": 27724000000,
        "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss": 787000000,
        "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger": 43941000000,
        "DebtSecuritiesAvailableForSaleRealizedGain": 1300000000,
        "DebtSecuritiesRealizedGainLoss": 1190000000,
        "ShareBasedCompensation": 9353000000,
        "TaxCreditCarryforwardAmount": 2400000000,
        "OtherLiabilitiesNoncurrent": 3545000000,
        "OtherLongTermInvestments": 13859000000,
        "OtherNoncashIncomeExpense": 189000000,
        "OtherNonoperatingIncomeExpense": 378000000,
        "ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent": 813000000
      }
    ]
    

    Data Weighting

    Reported in the time series inventory

    Data Source(s)

    IEX Cloud SEC Filings

    Examples

    Fund Ownership

    Returns the top 10 fund holders, meaning any firm not defined as buy-side or sell-side such as mutual funds, pension funds, endowments, investment firms, and other large entities that manage funds on behalf of others.

    HTTP request

    GET /stock/{symbol}/fund-ownership
    

    JSON response

    [
        {
            "adjHolding": 150,
            "adjMv": 87,
            "entityProperName": "Random Corporation",
            "reportDate": 1490918400000,
            "reportedHolding": 100,
            "reportedMv": 100 
        }
    ]
    

    Data Weighting

    10000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 5am, 6am ET every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/fund-ownership

    Examples

    Response Attributes

    Key Type Description
    adjHolding number Share amount held by the fund as of the report date, adjusted for corporate actions
    adjMv number Total share amount multiplied by the latest month-end share price, adjusted for corporate actions in USD
    entityProperName string Name of the entity
    reportDate number refers to the update time of report_date in milliseconds since midnight Jan 1, 1970.
    reportedHolding number Share amount held by the fund as reported in the source
    reportedMv number Market value held by the fund as reported in the source, represented in USD.

    Historical Prices

    Returns adjusted and unadjusted historical data for up to 15 years. Useful for building charts.

    HTTP request

    GET /stock/{symbol}/chart/{range}/{date}
    

    JSON response

    // .../3m
    [
        {
            "date": "2017-04-03",
            "open": 143.1192,
            "high": 143.5275,
            "low": 142.4619,
            "close": 143.1092,
            "volume": 19985714,
            "uOpen": 143.1192,
            "uHigh": 143.5275,
            "uLow": 142.4619,
            "uClose": 143.1092,
            "uVolume": 19985714,
            "change": 0.039835,
            "changePercent": 0.028,
            "label": "Apr 03, 17",
            "changeOverTime": -0.0039
        } // , { ... }
    ]
    
    // .../dynamic
    {
      "range": "1m",
      "data": [
          {
              "date": "2017-04-03",
              "open": 143.1192,
              "high": 143.5275,
              "low": 142.4619,
              "close": 143.1092,
              "volume": 19985714,
              "uOpen": 143.1192,
              "uHigh": 143.5275,
              "uLow": 142.4619,
              "uClose": 143.1092,
              "uVolume": 19985714,
              "change": 0.039835,
              "changePercent": 0.028,
              "label": "Apr 03, 17",
              "changeOverTime": -0.0039
          } // , { ... }
      ]
    }
    

    Data Weighting

    Adjusted + Unadjusted
    10 per symbol per time interval returned (Excluding 1d)
    Example: If you query for AAPL 5 day, it will return 5 days of prices for AAPL for a total of 50.

    Adjusted close only
    2 per symbol per time interval returned (Excluding 1d)
    use chartCloseOnly param

    NOTE: For minute-bar historical prices when a specific date is used in the range parameter, the weight is 50 messages
    Example: If you query for AAPL minute-bar for 20190610, it will return 390 minutes of data at a cost of 50 messages.

    Data Timing

    End of Day

    Data Schedule

    Prior trading day adjusted data available after 4am ET Tue-Sat

    Data Source(s)

    Primary Partner
    Investors Exchange

    Notes

    Access to Historical Prices from more than 5 years ago is only included with paid subscriptions

    Available Methods

    GET /stock/{symbol}/chart/{range}/{date}

    Examples

    Path Parameters

    Option Description
    symbol Valid symbol
    range See below
    Range Description Source
    max All available data up to 15 years Historically adjusted market-wide data
    5y Five years Historically adjusted market-wide data
    2y Two years Historically adjusted market-wide data
    1y One year Historically adjusted market-wide data
    ytd Year-to-date Historically adjusted market-wide data
    6m Six months Historically adjusted market-wide data
    3m Three months Historically adjusted market-wide data
    1m One month (default) Historically adjusted market-wide data
    1mm One month Historically adjusted market-wide data in 30 minute intervals
    5d Five Days Historically adjusted market-wide data by day.
    5dm Five Days Historically adjusted market-wide data in 10 minute intervals
    date Specific date If used with the query parameter chartByDay, then this returns historical OHLCV data for that date. Otherwise, IEX-only data by minute for a specified date if available. Date format YYYYMMDD. Currently supporting trailing 30 calendar days of minute bar data.
    dynamic One day Will return 1d or 1m data depending on the day or week and time of day. Intraday per minute data is only returned during market hours.

    Query String Parameters

    Option Details
    chartCloseOnly • Optional
    • boolean. Will return adjusted data only with keys date, close, and volume.
    chartByDay • Optional
    • boolean. Used only when range is date to return OHLCV data instead of minute bar data.
    chartSimplify • Optional
    • boolean. If true, runs a polyline simplification using the Douglas-Peucker algorithm. This is useful if plotting sparkline charts.
    chartInterval • Optional
    • number. If passed, chart data will return every Nth element as defined by chartInterval
    changeFromClose • Optional
    • boolean. If true, changeOverTime and marketChangeOverTime will be relative to previous day close instead of the first value.
    chartLast • Optional
    • number. If passed, chart data will return the last N elements from the time period defined by the range parameter
    range • Optional
    • string. Same format as the path parameter. This can be used for batch calls.
    exactDate • Optional
    • string. Formatted as YYYYMMDD. This can be used for batch calls when range is 1d or date.
    sort • Optional
    • string. Can be asc or desc to sort results by date. Defaults to desc
    includeToday • Optional
    • boolean. If true, current trading day data is appended

    Response Attributes

    Key Type Description
    date string Formatted as YYYY-MM-DD
    high number Adjusted data for historical dates. Split adjusted only.
    low number Adjusted data for historical dates. Split adjusted only.
    volume number Adjusted data for historical dates. Split adjusted only.
    open number Adjusted data for historical dates. Split adjusted only.
    close number Adjusted data for historical dates. Split adjusted only.
    uHigh number Unadjusted data for historical dates.
    uLow number Unadjusted data for historical dates.
    uVolume number Unadjusted data for historical dates.
    uOpen number Unadjusted data for historical dates.
    uClose number Unadjusted data for historical dates.
    changeOverTime number Percent change of each interval relative to first value. Useful for comparing multiple stocks.
    label number A human readable format of the date depending on the range.
    change number Change from previous trading day.
    changePercent number Change percent from previous trading day.

    Income Statement

    Pulls income statement data. Available quarterly or annually with the default being the last available quarter.

    HTTP request

    GET /stock/{symbol}/income
    

    JSON response

    {
      "symbol": "AAPL",
      "income": [
        {
          "reportDate": "2017-03-31",
          "totalRevenue": 62681000000,
          "costOfRevenue": 39086000000,
          "grossProfit": 23595000000,
          "researchAndDevelopment": 3750000000,
          "sellingGeneralAndAdmin": 4216000000,
          "operatingExpense": 47052000000,
          "operatingIncome": 15629000000,
          "otherIncomeExpenseNet": 792000000,
          "ebit": 15629000000,
          "interestIncome": 868000000,
          "pretaxIncome": 16421000000,
          "incomeTax": 2296000000,
          "minorityInterest": 0,
          "netIncome": 14125000000,
          "netIncomeBasic": 14125000000
        } // , { ... }
      ]
    }
    

    Data Weighting

    1000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 8am, 9am UTC daily

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Examples

    Query String Parameters

    Option Details
    period • Optional
    • string. Allows you to specify annual or quarterly income statement. Defaults to quarterly. Values should be annual or quarter
    last • Optional
    • number. Specify the number of quarters or years to return. One quarter is returned by default. You can specify up to 12 quarters with quarter, or up to 4 years with annual.

    Response Attributes

    Key Type Description
    reportDate string The last day of the relevant fiscal period.
    totalRevenue number Refers to the sum of both operating and non-operating revenues . Investopedia
    costOfRevenue number Represents the cost of goods sold for the period including depletion and amortization. Investopedia
    grossProfit number Represents the difference between sales or revenues and cost of goods sold and depreciation. Investopedia
    researchAndDevelopment number Represents all direct and indirect costs related to the creation and development of new processes, techniques, applications and products with commercial possibilities. Excludes customer or government sponsored research, purchase of mineral rights (for oil, gas, coal, drilling and mining companies), engineering expense, and contributions by government, customers, partnerships or other corporations to the company’s research and development expense
    sellingGeneralAndAdmin number Represents expenses not directly attributable to the production process but relating to selling, general and administrative functions. Excludes research and development.
    operatingExpense number Calculated as cost of revenue minus selling, general & administrative expense. Investopedia
    operatingIncome number Represents operating income for the period calculated as (net sales or revenue) - (cost of goods sold) - (selling, general & administrative expenses) - (other operating expenses). This will only return for industrial companies.
    otherIncomeExpenseNet number Calculated as income before tax minus operating income.
    ebit number Represents operating income for the period calculated as (net sales or revenue) - (cost of goods sold) - (selling, general & administrative expenses) - (other operating expenses). This will only return for industrial companies. Investopedia
    interestIncome number Represents interest expense, net of interest capitalized for the period calculated as (interest expense on debt) - (interest capitalized) Investopedia
    pretaxIncome number Represents all income/loss before any federal, state or local taxes. Extraordinary items reported net of taxes are excluded.
    incomeTax number Represents all income taxes levied on the income of a company by federal, state and foreign governments. Excludes domestic international sales corporation taxes, ad valorem taxes, excise taxes, windfall profit taxes, taxes other than income, and general and services taxes.
    minorityInterest number Represents the portion of earnings/losses of a subsidiary pertaining to common stock not owned by the controlling company or other members of the consolidated group.
    netIncome number Represents income before extraordinary items and preferred and common dividends, but after operating and non-operating income and expenses, minority interest and equity in earnings. Investopedia
    netIncomeBasic number Represents net income available to common basic EPS before extraordinaries for the period calculated as (net income after preferred dividends) - (discontinued operations)

    Insider Roster

    Returns the top 10 insiders, with the most recent information.

    HTTP request

    GET /stock/{symbol}/insider-roster
    

    JSON response

    [
        {
            'entityName' : "Random insider",
            'position' : 12345,
            'reportDate' : 1546387200000
        }
    ]
    

    Data Weighting

    5000 per symbol

    Data Timing

    End of day

    Data Schedule

    Updates at 5am, 6am ET every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/insider-roster

    Examples

    Response Attributes

    Key Type Description
    entityName string Name of the entity
    reportDate number refers to the update time of report_date in milliseconds since midnight Jan 1, 1970.
    position number Number of shares held, adjusted for corporate actions

    Insider Summary

    Returns aggregated insiders summary data for the last 6 months.

    HTTP request

    GET /stock/{symbol}/insider-summary
    

    JSON response

    [
        {
            "fullName": "John Appleseed",
            "netTransacted": -15,
            "reportedTitle": "General Counsel",
            "totalBought": 0,
            "totalSold": -15
        },
    ]
    

    Data Weighting

    5000 per symbol

    Data Timing

    End of day

    Data Schedule

    Updates at 5am, 6am ET every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/insider-summary

    Examples

    Response Attributes

    Key Type Description
    fullName string Full name of the individual. This field concatenates the individuals First Name, Middle Name, Last Name and Suffix.
    netTransacted number As-reported (unadjusted) number of shares acquired or disposed
    reportedTitle string Insiders job title per the sourced filing
    totalBought number Total shares purchased
    totalSold number Total shares sold

    Insider Transactions

    Returns insider transactions.

    HTTP request

    GET /stock/{symbol}/insider-transactions
    

    JSON response

    [
        {
            "effectiveDate": 1522540800000,
            "fullName": "Joe Smith",
            "reportedTitle": "Vice President",
            "tranPrice": 0,
            "tranShares": 10000,
            "tranValue": 0
        }
    ]
    

    Data Weighting

    50 per transaction

    Data Timing

    End of day

    Data Schedule

    Updates at UTC every day

    Data Source(s)

    Primary Partner

    Notes

    Available Methods

    GET /stock/{symbol}/insider-transactions

    Examples

    Response Attributes

    Key Type Description
    effectiveDate number Effective date of the transaction.
    fullName string Full name of the individual. This field concatenates the individuals First Name, Middle Name, Last Name and Suffix.
    reportedTitle string Insiders job title per the sourced filing
    tranPrice number As-reported (unadjusted) unit price at which shares were acquired or disposed, represented in USD.
    tranShares number As-reported (unadjusted) number of shares acquired or disposedValue of the transaction, calculated as Tran_Shares * Tran_Price, represented in USD. This value is not adjusted for corporate actions.
    tranValue number Value of the transaction, calculated as Tran_Shares * Tran_Price, represented in USD. This value is not adjusted for corporate actions.
    directIndirect letter (D)irect or (I)ndirect
    tranCode letter Transaction Codes

    Institutional Ownership

    Returns the top 10 institutional holders, defined as buy-side or sell-side firms.

    HTTP request

    GET /stock/{symbol}/institutional-ownership
    

    JSON response

    [
        {
            "adjHolding": 10085320,
            "adjMv": 59188155,
            "entityProperName": "Random Corp.",
            "reportDate": 1548892800000,
            "reportedHolding": 2085320
        }
    ]
    

    Data Weighting

    10000 per symbol per period

    Data Timing

    End of day

    Data Schedule

    Updates at 5am, 6am ET every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/institutional-ownership

    Examples

    Response Attributes

    Key Type Description
    adjHolding number Share amount held by the fund as of the report date, adjusted for corporate actions
    adjMv number Total share amount multiplied by the latest month-end share price, adjusted for corporate actions in USD
    entityProperName string Name of the entity
    reportDate number refers to the update time of report_date in milliseconds since midnight Jan 1, 1970.
    reportedHolding number Share amount held by the institution as reported in the source

    Intraday Prices

    This endpoint will return aggregated intraday prices in one minute buckets

    HTTP request

    GET /stock/{symbol}/intraday-prices
    

    JSON response

    [
        {
            "date": "2017-12-15",
            "minute": "09:30",
            "label": "09:30 AM",
            "marketOpen": 143.98,
            "marketClose": 143.775,
            "marketHigh": 143.98,
            "marketLow": 143.775,
            "marketAverage": 143.889,
            "marketVolume": 3070,
            "marketNotional": 441740.275,
            "marketNumberOfTrades": 20,
            "marketChangeOverTime": -0.004,
            "high": 143.98,
            "low": 143.775,
            "open": 143.98,
            "close": 143.775,
            "average": 143.889,
            "volume": 3070,
            "notional": 441740.275,
            "numberOfTrades": 20,
            "changeOverTime": -0.0039,
        } // , { ... }
    ]
    

    Data Weighting

    1 per symbol per time interval up to a max use of 50 messages
    Example: If you query for twtr 1d at 11:00am, it will return 90 minutes of data for a total of 50.

    IEX Only intraday minute bar
    Free This will only return IEX data with keys minute, high, low, average, volume, notional, and numberOfTrades
    Use the chartIEXOnly param

    Data Timing

    No delay for IEX data
    15 minutes delayed for market data

    Data Schedule

    9:30-4pm ET Mon-Fri on regular market trading days
    9:30-1pm ET on early close trading days

    Data Source(s)

    Primary Partner Investors Exchange

    Notes

    All response attributes related to 15 minute delayed market-wide price data are only available to paid subscribers

    Available Methods

    GET /stock/{symbol}/intraday-prices

    Examples

    Path Parameters

    Option Details
    symbol Valid symbol

    Query String Parameters

    Option Details
    chartIEXOnly • Optional
    • boolean. Limits the return of intraday prices to IEX only data.
    chartReset • Optional
    • boolean. If true, chart will reset at midnight instead of the default behavior of 9:30am ET.
    chartSimplify • Optional
    • boolean. If true, runs a polyline simplification using the Douglas-Peucker algorithm. This is useful if plotting sparkline charts.
    chartInterval • Optional
    • number. If passed, chart data will return every Nth element as defined by chartInterval
    changeFromClose • Optional
    • boolean. If true, changeOverTime and marketChangeOverTime will be relative to previous day close instead of the first value.
    chartLast • Optional
    • number. If passed, chart data will return the last N elements
    exactDate • Optional
    • string. Formatted as YYYYMMDD. This can be used for batch calls when range is 1d or date.
    chartIEXWhenNull • Optional
    • boolean. By default, all market prefixed fields are 15 minute delayed, meaning the most recent 15 objects will be null. If this parameter is passed as true, all market prefixed fields that are null will be populated with IEX data if available.

    Response Attributes

    Key Type Description
    date string
    minute string Formatted as HHmm
    marketAverage number 15 minute delayed data. Average price during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketNotional number 15 minute delayed data. Total notional value during the minute for trades across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketNumberOfTrades number 15 minute delayed data. Number of trades during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketOpen number 15 minute delayed data. First price during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketClose number 15 minute delayed data. Last price during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketHigh number 15 minute delayed data. Highest price during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketLow number 15 minute delayed data. Lowest price during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketVolume number 15 minute delayed data. Total volume of trades during the minute across all markets. This represents data from all markets. If the value is null, then the market did not trade during the minute.
    marketChangeOverTime number Percent change of each interval relative to first value. 15 minute delayed consolidated data.
    simplifyFactor array Only when chartSimplify is true. The first element is the original number of points. Second element is how many remain after simplification.
    changeOverTime number Percent change of each interval relative to first value. Useful for comparing multiple stocks.
    label number A human readable format of the date depending on the range.
    average number IEX only data. Average price during the minute for trades on IEX.
    notional number IEX only data. Total notional value during the minute for trades on IEX.
    numberOfTrades number IEX only data. Number of trades during the minute on IEX.
    high number IEX only data. Highest price during the minute on IEX.
    low number IEX only data. Lowest price during the minute on IEX.
    volume number IEX only data. Total volume during the minute on IEX.
    open number IEX only data. First price during the minute on IEX.
    close number IEX only data. Last price during the minute on IEX.

    IPO Calendar

    This returns a list of upcoming or today IPOs scheduled for the current and next month. The response is split into two structures: rawData and viewData. rawData represents all available data for an IPO. viewData represents data structured for display to a user.

    HTTP request

    GET /stock/market/upcoming-ipos
    GET /stock/market/today-ipos
    

    JSON response

    {
        "rawData": [
            {
                "symbol": "VCNX",
                "companyName": "VACCINEX, INC.",
                "expectedDate": "2018-08-09",
                "leadUnderwriters": [
                    "BTIG, LLC",
                    "Oppenheimer & Co. Inc."
                ],
                "underwriters": [
                    "Ladenburg Thalmann & Co. Inc."
                ],
                "companyCounsel": [
                    "Hogan Lovells US LLP and Harter Secrest & Emery LLP"
                ],
                "underwriterCounsel": [
                    "Mintz, Levin, Cohn, Ferris, Glovsky and Popeo, P.C."
                ],
                "auditor": "Computershare Trust Company, N.A",
                "market": "NASDAQ Global",
                "cik": "0001205922",
                "address": "1895 MOUNT HOPE AVE",
                "city": "ROCHESTER",
                "state": "NY",
                "zip": "14620",
                "phone": "585-271-2700",
                "ceo": "Maurice Zauderer",
                "employees": 44,
                "url": "www.vaccinex.com",
                "status": "Filed",
                "sharesOffered": 3333000,
                "priceLow": 12,
                "priceHigh": 15,
                "offerAmount": null,
                "totalExpenses": 2400000,
                "sharesOverAlloted": 499950,
                "shareholderShares": null,
                "sharesOutstanding": 11474715,
                "lockupPeriodExpiration": "",
                "quietPeriodExpiration": "",
                "revenue": 206000,
                "netIncome": -7862000,
                "totalAssets": 4946000,
                "totalLiabilities": 6544000,
                "stockholderEquity": -133279000,
                "companyDescription": "",
                "businessDescription": "",
                "useOfProceeds": "",
                "competition": "",
                "amount": 44995500,
                "percentOffered": "29.05"
            },
            ...
        ],
        "viewData": [
            {
                "Company": "VACCINEX, INC.",
                "Symbol": "VCNX",
                "Price": "$12.00 - 15.00",
                "Shares": "3,333,000",
                "Amount": "44,995,500",
                "Float": "11,474,715",
                "Percent": "29.05%",
                "Market": "NASDAQ Global",
                "Expected": "2018-08-09"
            },
            ...
        ]
    }
    

    Data Weighting

    100 per IPO returned for upcoming-ipos
    500 per IPO returned for today-ipos

    Data Timing

    End of day

    Data Schedule

    10am, 10:30am UTC daily

    Data Source(s)

    IEX Cloud

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/market/upcoming-ipos
    GET /stock/market/today-ipos

    Examples

    Response Attributes

    Key Type Description
    symbol string refers to the IPO symbol.
    companyName string refers to the name of the IPO company.
    expectedDate string refers to the date the IPO is expected to start trading.
    leadUnderwriters array refers to the list of investment banks leading the IPO.
    underwriters array refers to the list of investment banks underwriting the IPO.
    companyCounsel array refers to the list of legal firms representing the company.
    underwriterCounsel array refers to the list of legal firms representing the underwriter.
    auditor string refers to the auditing firm for the company.
    market string refers to the exchange listing the IPO.
    cik string refers to the Central Index Key assigned by the SEC to identify filings.
    address string refers to the company address.
    city string refers to the company city.
    state string refers to the company state.
    zip string refers to the company zip code.
    phone string refers to the company phone number.
    ceo string refers to the name of the company CEO.
    employees number refers to the number of employees in the company.
    url string refers to the URL of the company website.
    status string refers to the filing status of the SEC Form S-1.
    sharesOffered number refers to the number of shares offered in the IPO.
    priceLow number refers to the low end estimate of IPO share price. On the day of the IPO, this will be the syndicate price which is used similarly to previousClose to determine change versus current price.
    priceHigh number refers to the high end estimate of IPO share price. On the day of the IPO, this value may be null.
    offerAmount number refers to the notional value of the IPO in dollars.
    totalExpenses number refers to company total expenses in dollars.
    sharesOverAlloted number refers to number of shares alloted by underwriters in excess of IPO offering.
    shareholderShares number refers to number of shares offered by existing shareholders.
    sharesOutstanding number refers to the total number of company shares outstanding.
    lockupPeriodExpiration string refers to the date of insider lockup period expiration.
    quietPeriodExpiration string refers to the date following IPO when company quiet period expires.
    revenue number refers to company revenue in dollars.
    netIncome number refers to company net income in dollars.
    totalAssets number refers to company total assets in dollars.
    totalLiabilities number refers to company total liabilities in dollars.
    stockholderEquity number refers to stock holder equity in dollars.
    companyDescription string description of the company.
    businessDescription string description of the company’s business.
    useOfProceeds string description of the company’s planned use of proceeds from the IPO.
    competition string description of the company’s competition.
    amount number refers to the notional value of shares offered * average share price in dollars.
    percentOffered string refers to the percent of outstanding shares being offered as a whole number.
    Company string same as companyName
    Symbol string same as symbol
    Price string formatted as $priceLow - priceHigh
    Shares string same as sharesOffered
    Amount string same as amount
    Float string same as sharesOutstanding
    Percent string same as percentOffered
    Market string same as market
    Expected string same as expectedDate

    Key Stats

    HTTP request

    GET /stock/{symbol}/stats/{stat?}
    

    JSON response

    {
      "companyName": "Apple Inc.",
      "marketcap": 760334287200,
      "week52high": 156.65,
      "week52low": 93.63,
      "week52change": 58.801903,
      "sharesOutstanding": 5213840000,
      "float": 5203997571,
      "avg10Volume": 2774000,
      "avg30Volume": 12774000,
      "day200MovingAvg": 140.60541,
      "day50MovingAvg": 156.49678,
      "employees": 120000,
      "ttmEPS": 16.5,
      "ttmDividendRate": 2.25,
      "dividendYield": .021,
      "nextDividendDate": '2019-03-01',
      "exDividendDate": '2019-02-08',
      "nextEarningsDate": '2019-01-01',
      "peRatio": 14,
      "beta": 1.25,
      "maxChangePercent": 153.021,
      "year5ChangePercent": 0.5902546932200027,
      "year2ChangePercent": 0.3777449874142869,
      "year1ChangePercent": 0.39751716851558366,
      "ytdChangePercent": 0.36659492036160124,
      "month6ChangePercent": 0.12208398133748043,
      "month3ChangePercent": 0.08466584665846649,
      "month1ChangePercent": 0.009668596145283263,
      "day30ChangePercent": -0.002762605699968781,
      "day5ChangePercent": -0.005762605699968781
    }
    

    Data Weighting

    5 per call per symbol for full stats
    1 per call per symbol for single stat filter

    Data Timing

    End of day

    Data Schedule

    8am, 9am ET

    Data Source(s)

    Primary Partner

    Available Methods

    GET /stock/{symbol}/stats/{stat?}

    Examples

    Path Parameter

    Option Details
    stat Optional. Case sensitive string matching the name of a single key to return one value. Ex: If you only want the next earnings date, you would call /stock/aapl/stats/nextEarningsDate

    Response Attributes

    Key Type Description
    companyName string Company name of the security
    marketcap number Market cap of the security calculated as shares outstanding * previous day close.
    week52high number
    week52low number
    week52change number Percentage change
    sharesOutstanding number Number of shares outstanding as the difference between issued shares and treasury shares. Investopedia
    avg30Volume number Average 30 day volume
    avg10Volume number Average 10 day volume
    float number Returns the annual shares outstanding minus closely held shares.
    employees number
    ttmEPS number Trailing twelve month earnings per share. Investopedia
    ttmDividendRate number Trailing twelve month dividend rate per share
    dividendYield number The ratio of trailing twelve month dividend compared to the previous day close price. The dividend yield is represented as a percentage calculated as (ttmDividendRate) / (previous day close price) Investopedia
    nextDividendDate string Expected ex date of the next dividend
    exDividendDate string Ex date of the last dividend
    nextEarningsDate string Expected next earnings report date
    peRatio number Price to earnings ratio calculated as (previous day close price) / (ttmEPS)
    beta number Beta is a measure used in fundamental analysis to determine the volatility of an asset or portfolio in relation to the overall market. Levered beta calculated with 1 year historical data and compared to SPY.
    day200MovingAvg number
    day50MovingAvg number
    maxChangePercent number
    year5ChangePercent number
    year2ChangePercent number
    year1ChangePercent number
    ytdChangePercent number
    month6ChangePercent number
    month3ChangePercent number
    month1ChangePercent number
    day30ChangePercent number
    day5ChangePercent number

    Largest Trades

    This returns 15 minute delayed, last sale eligible trades.

    HTTP request

    GET /stock/{symbol}/largest-trades
    

    JSON response

    [
      {
        "price": 186.39,
        "size": 10000,
        "time": 1527090690175,
        "timeLabel": "11:51:30",
        "venue": "EDGX",
        "venueName": "Cboe EDGX"
      },
      ...
    ]
    

    Data Weighting

    1 per trade returned

    Data Timing

    15min delayed

    Data Schedule

    9:30-4pm ET M-F during regular market hours

    Data Source(s)

    Consolidated Tape

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/largest-trades

    Examples

    Response Attributes

    Key Type Description
    price number refers to the price of the trade.
    size number refers to the number of shares of the trade.
    time number refers to the time of the trade.
    timeLabel string formatted time string as HH:MM:SS
    venue string refers to the venue where the trade occurred. None refers to a TRF (off exchange) trade.
    venueName string formatted venue name where the trade occurred.

    List

    Returns an array of quotes for the top 10 symbols in a specified list.

    HTTP request

    GET /stock/market/list/{list-type}
    

    JSON response

     [
        // Array of quotes
     ]
    

    Data Weighting

    Weight of /stock/quote for each quote returned in the list

    Data Timing

    Real-time
    15 minute delayed

    Data Schedule

    Updated intraday

    Data Source(s)

    Investors Exchange Consolidated Tape

    Available Methods

    GET /stock/market/list/{list-type}

    Examples

    Query String Parameters

    Option Details
    displayPercent • Optional
    • If set to true, all percentage values will be multiplied by a factor of 100 (Ex: /stock/aapl/quote?displayPercent=true)
    listLimit • Optional
    • Number of items to return, defaults to 10

    Response Attributes

    Refer to the quote section.

    This is a helper function, but the Google APIs url is standardized.

    HTTP request

    GET /stock/{symbol}/logo
    

    JSON response

    {
      "url": "https://storage.googleapis.com/iex/api/logos/AAPL.png"
    }
    

    Data Weighting

    1 per logo

    Data Timing

    End of day

    Data Schedule

    8am UTC daily

    Data Source(s)

    Web

    Available Methods

    GET /stock/{symbol}/logo

    Examples

    Response Attributes

    Key Type
    url string

    Market Volume (U.S.)

    This endpoint returns real time traded volume on U.S. markets.

    HTTP request

    GET /stock/market/volume
    

    JSON response

    [
      {
        "mic": "TRF",
        "tapeId": "-",
        "venueName": "TRF Volume",
        "volume": 589171705,
        "tapeA": 305187928,
        "tapeB": 119650027,
        "tapeC": 164333750,
        "marketPercent": 0.37027,
        "lastUpdated": 1480433817317
      },
      {
        "mic": "XNGS",
        "tapeId": "Q",
        "venueName": "NASDAQ",
        "volume": 213908393,
        "tapeA": 90791123,
        "tapeB": 30731818,
        "tapeC": 92385452,
        "marketPercent": 0.13443,
        "lastUpdated": 1480433817311
      },
      {
        "mic": "XNYS",
        "tapeId": "N",
        "venueName": "NYSE",
        "volume": 204280163,
        "tapeA": 204280163,
        "tapeB": 0,
        "tapeC": 0,
        "marketPercent": 0.12838,
        "lastUpdated": 1480433817336
      },
      {
        "mic": "ARCX",
        "tapeId": "P",
        "venueName": "NYSE Arca",
        "volume": 180301371,
        "tapeA": 64642458,
        "tapeB": 78727208,
        "tapeC": 36931705,
        "marketPercent": 0.11331,
        "lastUpdated": 1480433817305
      },
      {
        "mic": "EDGX",
        "tapeId": "K",
        "venueName": "EDGX",
        "volume": 137022822,
        "tapeA": 58735505,
        "tapeB": 32753903,
        "tapeC": 45533414,
        "marketPercent": 0.08611,
        "lastUpdated": 1480433817310
      },
      {
        "mic": "BATS",
        "tapeId": "Z",
        "venueName": "BATS BZX",
        "volume": 100403461,
        "tapeA": 52509859,
        "tapeB": 25798360,
        "tapeC": 22095242,
        "marketPercent": 0.0631,
        "lastUpdated": 1480433817311
      },
      {
        "mic": "BATY",
        "tapeId": "Y",
        "venueName": "BATS BYX",
        "volume": 54413196,
        "tapeA": 28539960,
        "tapeB": 13638779,
        "tapeC": 12234457,
        "marketPercent": 0.03419,
        "lastUpdated": 1480433817310
      },
      {
        "mic": "XBOS",
        "tapeId": "B",
        "venueName": "NASDAQ BX",
        "volume": 31417461,
        "tapeA": 16673166,
        "tapeB": 5875538,
        "tapeC": 8868757,
        "marketPercent": 0.01974,
        "lastUpdated": 1480433817311
      },
      {
        "mic": "EDGA",
        "tapeId": "J",
        "venueName": "EDGA",
        "volume": 30670687,
        "tapeA": 15223428,
        "tapeB": 8276375,
        "tapeC": 7170884,
        "marketPercent": 0.01927,
        "lastUpdated": 1480433817311
      },
      {
        "mic": "IEXG",
        "tapeId": "V",
        "venueName": "IEX",
        "volume": 26907838,
        "tapeA": 16578501,
        "tapeB": 3889245,
        "tapeC": 6440092,
        "marketPercent": 0.01691,
        "lastUpdated": 1480433817235
      },
      {
        "mic": "XPHL",
        "tapeId": "X",
        "venueName": "NASDAQ PSX",
        "volume": 13334403,
        "tapeA": 5802294,
        "tapeB": 4239741,
        "tapeC": 3292368,
        "marketPercent": 0.00838,
        "lastUpdated": 1480433817071
      },
      {
        "mic": "XCHI",
        "tapeId": "M",
        "venueName": "CHX",
        "volume": 4719854,
        "tapeA": 834762,
        "tapeB": 3168434,
        "tapeC": 716658,
        "marketPercent": 0.00296,
        "lastUpdated": 1480433814711
      },
      {
        "mic": "XASE",
        "tapeId": "A",
        "venueName": "NYSE MKT",
        "volume": 4419196,
        "tapeA": 0,
        "tapeB": 4419196,
        "tapeC": 0,
        "marketPercent": 0.00277,
        "lastUpdated": 1480433816276
      },
      {
        "mic": "XCIS",
        "tapeId": "C",
        "venueName": "NSX",
        "volume": 187785,
        "tapeA": 39923,
        "tapeB": 62191,
        "tapeC": 85671,
        "marketPercent": 0.00011,
        "lastUpdated": 1480433816141
      }
    ]
    

    Data Weighting

    1 per call

    Data Timing

    Real-time

    Data Schedule

    7:45am-5:15pm ET Mon-Fri

    Data Source(s)

    IEX Cloud Consolidated Tape

    Available Methods

    GET /stock/market/volume

    Examples

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    mic refers to the Market Identifier Code (MIC).
    tapeId refers to the tape id of the venue.
    venueName refers to name of the venue defined by IEX.
    volume refers to the amount of traded shares reported by the venue.
    tapeA refers to the amount of Tape A traded shares reported by the venue.
    tapeB refers to the amount of Tape B traded shares reported by the venue.
    tapeC refers to the amount of Tape C traded shares reported by the venue.
    marketPercent refers to the venue’s percentage of shares traded in the market.
    lastUpdated refers to the last update time of the data in milliseconds since midnight Jan 1, 1970.

    News

    HTTP request

    GET /stock/{symbol}/news/last/{last}
    

    JSON response

    [
      {
        "datetime": 1545215400000,
        "headline": "Voice Search Technology Creates A New Paradigm For Marketers",
        "source": "Benzinga",
        "url": "https://cloud.iexapis.com/stable/news/article/8348646549980454",
        "summary": "<p>Voice search is likely to grow by leap and bounds, with technological advancements leading to better adoption and fueling the growth cycle, according to Lindsay Boyajian, <a href=\"http://loupventures.com/how-the-future-of-voice-search-affects-marketers-today/\">a guest contributor at Loup Ventu...",
        "related": "AAPL,AMZN,GOOG,GOOGL,MSFT",
        "image": "https://cloud.iexapis.com/stable/news/image/7594023985414148",
        "lang": "en",
        "hasPaywall": true
      }
    ]
    

    SSE Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/news-stream\?symbols\=aapl\&token\=YOUR_TOKEN
    

    Data Weighting

    1 per symbol per news item returned

    Data Timing

    Intraday

    Data Schedule

    Continuous

    Data Source(s)

    CityFalcon

    Available Methods

    GET /stock/{symbol}/news
    GET /stock/{symbol}/news/last/{last}

    Examples

    Path Parameters

    Option Description
    symbol
    last Number between 1 and 50. Default is 10. (i.e. .../news/last/1)

    Response Attributes

    Key Type Description
    datetime number  Millisecond epoch of time of article
    headline string 
    source string  Source of the news article. Make sure to always attribute the source.
    url string  URL to IEX Cloud for associated news image. Note: You will need to append your token before calling.
    summary string 
    related string  Comma-delimited list of tickers associated with this news article. Not all tickers are available on the API. Make sure to check against available ref-data
    image string  URL to IEX Cloud for associated news image. Note: You will need to append your token before calling.
    lang string  Language of the source article
    hasPaywall boolean  Whether the news source has a paywall

    OHLC

    Returns the official open and close for a give symbol. The official open is available as soon as 9:45am ET and the official close as soon as 4:15pm ET. Some stocks can report late open or close prices.

    HTTP request

    GET /stock/{symbol}/ohlc
    

    JSON response

    {
      "open": {
        "price": 154,
        "time": 1506605400394
      },
      "close": {
        "price": 153.28,
        "time": 1506605400394
      },
      "high": 154.80,
      "low": 153.25
    }
    

    Data Weighting

    2 per symbol

    Data Timing

    15min delayed

    Data Schedule

    9:30am-5pm ET Mon-Fri

    Data Source(s)

    Consolidated Tape

    Notes

    Only available to paid subscribers

    Available Methods

    GET /stock/{symbol}/ohlc

    Examples

    NOTE: /stock/market/ohlc currently only available to subscribers approved to receive UTP data by IEX Cloud

    Response Attributes

    Key Type Description
    open Object refers to the official open
        price number refers to the official open price. Will return 0 if symbol has no volume for the day.
        time number refers to the official listing exchange time for the open in millisecond epoch
    close Object refers to the official close
        price number refers to the official close price. Will return 0 if symbol has no volume for the day.
        time number refers to the official listing exchange time for the close in millisecond epoch
    high number refers to the market-wide highest price from the SIP (15 minute delayed)
    low number refers to the market-wide lowest price from the SIP (15 minute delayed)

    Open / Close Price

    Refer to ohlc

    Options

    Returns end of day options data

    HTTP request

    # Lookup available expiration dates
    GET /stock/{symbol}/options
    

    JSON response

    [
        "201906",
        "201907",
        "202001"
    ]
    

    HTTP request

    # Get options data
    GET /stock/{symbol}/options/{expiration}/{optionSide?}
    

    JSON response

    [
        {
            "symbol": "AAPL",
            "id": "AAPL20190621C00240000",
            "expirationDate": "20190621",
            "contractSize": 100,
            "strikePrice": 240,
            "closingPrice": 0.39,
            "side": "call",
            "type": "equity",
            "volume": 884,
            "openInterest": 12197,
            "bid": 0.38,
            "ask": 0.42,
            "lastUpdated": "2019-04-25",
            "isAdjusted": false
        },
    ]
    

    Data Weighting

    1000 per symbol per expiration date
    1 per date lookup

    Data Timing

    End of day

    Data Schedule

    10:00am ET Tue-Sat

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/options/{expiration}/{optionSide?}

    Examples

    Lookup available expiration dates for a symbol

    Path Parameters

    Option Details
    symbol valid symbol
    expiration expiration date as YYYYMM. Optional. If not passed, the call will return all available expiration dates for the symbol.
    optionSide Optional. put or call will return just those types of contracts.

    Response Attributes

    Key Type Description
    symbol string Symbol associated with the option
    id string ID of the individual contract. symbol + date + side + 8 digit strike price. The IDs for any contract that is flagged as adjusted will also end with _adj (see explanation of isAdjusted property below)
    contractSize number contract size
    strikePrice number strike price
    closingPrice number closing price
    side string “call” or “put”
    type string “equity” or “index”
    volume number
    openInterest number
    bid number final bid price of the day
    ask number final ask price of the day
    lastUpdated string date the EOD options data was last updated as YYYY-MM-DD
    isAdjusted boolean this will be true in instances where the option has been adjusted such that it is not a straightforward vanilla options contract. This is usually due to a corporate action or event such as an acquisition, merger, special dividend, stock split, reverse split, or spin off The ids for any contract that is flagged as adjusted will also end with _adj

    Peer Groups

    HTTP request

    GET /stock/{symbol}/peers
    

    JSON response

    [
        "MSFT",
        "NOK",
        "IBM",
        "BBRY",
        "HPQ",
        "GOOGL",
        "XLK"
    ]
    

    Data Weighting

    500 per call

    Data Timing

    End of day

    Data Schedule

    8am UTC daily

    Data Source(s)

    IEX Cloud

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/peers

    Examples

    Response Attributes

    An array of peer symbols.

    Previous Day Price

    This returns previous day adjusted price data for one or more stocks.

    HTTP request

    GET /stock/{symbol}/previous
    

    JSON response

    {
      "date": "2019-03-25",
      "open": 191.51,
      "close": 188.74,
      "high": 191.98,
      "low": 186.6,
      "volume": 43845293,
      "uOpen": 191.51,
      "uClose": 188.74,
      "uHigh": 191.98,
      "uLow": 186.6,
      "uVolume": 43845293,
      "change": 0,
      "changePercent": 0,
      "changeOverTime": 0,
      "symbol": "AAPL"
    }
    

    Data Weighting

    2 per symbol

    Data Timing

    End of day

    Data Schedule

    Available after 4am ET Tue-Sat

    Data Source(s)

    Primary Partner

    Available Methods

    GET /stock/{symbol}/previous
    GET /stock/market/previous

    Examples

    Response Attributes

    Returns the same attributes as historical prices

    Price

    HTTP request

    GET /stock/{symbol}/price
    

    JSON response

    143.28
    

    Data Weighting

    1 per call

    Data Timing

    Real-time 15min delayed End of day

    Data Schedule

    4:30am-8pm ET Mon-Fri

    Data Source(s)

    Primary Partner Investors Exchange Consolidated Tape

    Available Methods

    GET /stock/{symbol}/price

    Examples

    Path Parameters

    Option Details
    symbol Valid symbol

    Response Attributes

    Returns a number. Refer to the latestPrice attribute in the quote endpoint for a description.

    Price Target

    Provides the latest avg, high, and low analyst price target for a symbol.

    HTTP request

    GET /stock/{symbol}/price-target
    

    JSON response

    {
      "symbol": "AAPL",
      "updatedDate": "2019-01-30",
      "priceTargetAverage": 178.59,
      "priceTargetHigh": 245,
      "priceTargetLow": 140,
      "numberOfAnalysts": 34
    }
    

    Data Weighting

    500 per symbol

    Data Timing

    End of day

    Data Schedule

    Updates at 10am, 11am, 12pm UTC every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/price-target

    Examples

    Response Attributes

    Key Type Description
    symbol number
    updatedDate string Date of the most recent price target
    priceTargetAverage number Average price target
    priceTargetHigh number Highest price target
    priceTargetLow number Lowest price target
    numberOfAnalysts number Number of analysts that provided price targets

    Quote

    HTTP request

    GET /stock/{symbol}/quote/{field}
    

    SSE Streaming Example (Launch & Scale only)

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/stocksUS\?symbols\=spy\&token\=YOUR_TOKEN
    

    JSON response

    {
      "symbol": "AAPL",
      "companyName": "Apple Inc.",
      "calculationPrice": "tops",
      "open": 154,
      "openTime": 1506605400394,
      "close": 153.28,
      "closeTime": 1506605400394,
      "high": 154.80,
      "low": 153.25,
      "latestPrice": 158.73,
      "latestSource": "Previous close",
      "latestTime": "September 19, 2017",
      "latestUpdate": 1505779200000,
      "latestVolume": 20567140,
      "volume": 20567140,
      "iexRealtimePrice": 158.71,
      "iexRealtimeSize": 100,
      "iexLastUpdated": 1505851198059,
      "delayedPrice": 158.71,
      "delayedPriceTime": 1505854782437,
      "extendedPrice": 159.21,
      "extendedChange": -1.68,
      "extendedChangePercent": -0.0125,
      "extendedPriceTime": 1527082200361,
      "previousClose": 158.73,
      "previousVolume": 22268140,
      "change": -1.67,
      "changePercent": -0.01158,
      "iexMarketPercent": 0.00948,
      "iexVolume": 82451,
      "avgTotalVolume": 29623234,
      "iexBidPrice": 153.01,
      "iexBidSize": 100,
      "iexAskPrice": 158.66,
      "iexAskSize": 100,
      "marketCap": 751627174400,
      "week52High": 159.65,
      "week52Low": 93.63,
      "ytdChange": 0.3665,
      "peRatio": 17.18,
      "lastTradeTime": 1505779200000,
      "isUSMarketOpen": false
    }
    

    Data Weighting

    1 per quote called or streamed

    Data Timing

    Real-time 15min delayed End of day

    Data Schedule

    4:30am-8pm ET Mon-Fri

    Data Source(s)

    Primary Partner Investors Exchange Consolidated Tape

    Notes

    Available Methods

    GET /stock/{symbol}/quote
    GET /stock/{symbol}/quote/{field}

    Examples

    Here is an example of how to pull the latest price of the stock as a number. This is a great way to get values into Excel.

    Path Parameters

    Option Details
    field • Optional
    • Case sensitive string matching a response attribute below. Specifying an attribute will return just the attribute value. This is useful for Excel Webservice calls.

    Query String Parameters

    Option Details
    displayPercent • Optional
    • If set to true, all percentage values will be multiplied by a factor of 100 (Ex: /stock/twtr/quote?displayPercent=true)

    Response Attributes

    Key Type Description
    latestPrice number Use this to get the latest price
    Refers to the latest relevant price of the security which is derived from multiple sources. We first look for an IEX real time price. If an IEX real time price is older than 15 minutes, 15 minute delayed market price is used. If a 15 minute delayed price is not available, we will use the current day close price. If a current day close price is not available, we will use the last available closing price (listed below as previousClose)
    IEX real time price represents trades on IEX only. Trades occur across over a dozen exchanges, so the last IEX price can be used to indicate the overall market price.
    15 minute delayed prices are from all markets using the Consolidated Tape.
    This will not included pre or post market prices.
    latestVolume number Use this to get the latest volume
    Refers to the latest total market volume of the stock across all markets. This will be the most recent volume of the stock during trading hours, or it will be the total volume of the last available trading day.
    latestUpdate number Refers to the machine readable epoch timestamp of when latestPrice was last updated. Represented in milliseconds since midnight Jan 1, 1970.
    latestTime string Refers to a human readable time of when latestPrice was last updated. The format will vary based on latestSource is inteded to be displayed to a user. Use latestUpdated for machine readable timestamp.
    calculationPrice string Refers to the source of the latest price.
    Possible values are "tops", "sip", "previousclose" or "close"
    latestSource string This will represent a human readable description of the source of latestPrice.
    Possible values are "IEX real time price", "15 minute delayed price", "Close" or "Previous close"
    change number Refers to the change in price between latestPrice and previousClose
    changePercent number Refers to the percent change in price between latestPrice and previousClose. For example, a 5% change would be represented as 0.05. You can use the query string parameter displayPercent to return this field multiplied by 100. So, 5% change would be represented as 5.
    volume number Total volume for the stock, but only updated after market open. To get premarket volume, use latestVolume
    open number Refers to the official open price from the SIP. 15 minute delayed (can be null after 00:00 ET, before 9:45 and weekends)
    openTime number Refers to the official listing exchange time for the open from the SIP. 15 minute delayed
    close number Refers to the official close price from the SIP. 15 minute delayed
    closeTime number Refers to the official listing exchange time for the close from the SIP. 15 minute delayed
    previousClose number Refers to the previous trading day closing price.
    previousVolume number Refers to the previous trading day volume.
    high number Refers to the market-wide highest price from the SIP. 15 minute delayed during normal market hours 9:30 - 16:00 (null before 9:45 and weekends).
    low number Refers to the market-wide lowest price from the SIP. 15 minute delayed during normal market hours 9:30 - 16:00 (null before 9:45 and weekends).
    extendedPrice number Refers to the 15 minute delayed price outside normal market hours 0500 - 0930 ET and 1600 - 2000 ET. This provides pre market and post market price. This is purposefully separate from latestPrice so users can display the two prices separately.
    extendedChange number Refers to the price change between extendedPrice and latestPrice.
    extendedChangePercent number Refers to the price change percent between extendedPrice and latestPrice.
    extendedPriceTime number Refers to the last update time of extendedPrice
    delayedPrice number Refers to the 15 minute delayed market price from the SIP during normal market hours 9:30 - 16:00 ET.
    delayedPriceTime number Refers to the last update time of the delayed market price during normal market hours 9:30 - 16:00 ET.
    marketCap number is calculated in real time using latestPrice.
    avgTotalVolume number Refers to the 30 day average volume.
    week52High number Refers to the adjusted 52 week high.
    week52Low number Refers to the adjusted 52 week low.
    ytdChange number Refers to the price change percentage from start of year to previous close.
    iexRealtimePrice number Refers to the price of the last trade on IEX.
    iexRealtimeSize number Refers to the size of the last trade on IEX.
    iexLastUpdated number Refers to the last update time of iexRealtimePrice in milliseconds since midnight Jan 1, 1970 UTC or -1 or 0. If the value is -1 or 0, IEX has not quoted the symbol in the trading day.
    iexMarketPercent number Refers to IEX’s percentage of the market in the stock.
    iexVolume number Refers to shares traded in the stock on IEX.
    iexBidPrice number Refers to the best bid price on IEX.
    iexBidSize number Refers to amount of shares on the bid on IEX.
    iexAskPrice number Refers to the best ask price on IEX.
    iexAskSize number Refers to amount of shares on the ask on IEX.
    symbol string Refers to the stock ticker.
    companyName string Refers to the company name.
    primaryExchange string Refers to the primary listing exchange for the symbol.
    peRatio number Refers to the price-to-earnings ratio for the company.
    lastTradeTime number Epoch timestamp in milliseconds of the last market hours trade excluding the closing auction trade.
    isUSMarketOpen boolean For US stocks, indicates if the market is in normal market hours. Will be false during extended hours trading.

    Pulls data from the last four months.

    HTTP request

    GET /stock/{symbol}/recommendation-trends
    

    JSON response

    [
        {
            "consensusEndDate": 1542240000000,
            "consensusStartDate": 1541462400000,
            "corporateActionsAppliedDate": 1055721600000,
            "ratingBuy": 8,
            "ratingHold": 1,
            "ratingNone": 2,
            "ratingOverweight": 2,
            "ratingScaleMark": 1.042857,
            "ratingSell": 1,
            "ratingUnderweight": 1
        }
    ]
    

    Data Weighting

    1000 per symbol

    Data Timing

    End of day

    Data Schedule

    Updates at 9am, 11am, 12pm UTC every day

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/recommendation-trends

    Examples

    Response Attributes

    Key Type Description
    consensusEndDate number Date that represents the last date the consensus value was effective. A NULL value indicates the consensus value is considered current. Represented as millisecond epoch time
    consensusStartDate number Date that represents the earliest date the consensus value was effective Represented as millisecond epoch time
    corporateActionsAppliedDate number Date through which corporate actions have been applied Represented as millisecond epoch time
    ratingBuy number Number of recommendations that fall into the Buy category
    ratingHold number Number of recommendations that fall into the Hold category
    ratingNone number Number of brokers where no recommendation is available
    ratingOverweight number Number of recommendations that fall into the Overweight category
    ratingScaleMark number Numeric value based on a standardized scale representing the consensus of broker recommendations
    ratingSell number Number of recommendations that fall into the Sell category
    ratingUnderweight number Number of recommendations that fall into the Underweight category

    Sector Performance

    This returns an array of each sector and performance for the current trading day. Performance is based on each sector ETF.

    HTTP request

    GET /stock/market/sector-performance
    

    JSON response

    [
      {
        "type": "sector",
        "name": "Industrials",
        "performance": 0.00711,
        "lastUpdated": 1533672000437
      },
      ...
    ]
    

    Data Weighting

    1 per sector

    Data Timing

    Real-time 15min delayed

    Data Schedule

    8am-5pm ET Mon-Fri

    Data Source(s)

    Primary Partner IEX Cloud

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/market/sector-performance

    Examples

    Response Attributes

    Key Type Description
    type string The type of performance data return. Should always be sector
    name string The name of the sector
    performance number Change percent of the sector for the trading day.
    lastUpdated number Last updated time of the performance metric represented as millisecond epoch.

    Splits

    HTTP request

    GET /stock/{symbol}/splits/{range}
    

    JSON response

    [
        {
            "exDate": "2017-08-10",
            "declaredDate": "2017-08-01",
            "ratio": 0.142857,
            "toFactor": 7,
            "fromFactor": 1,
            "description": "7-for-1 split"
        } // , { ... }
    ]
    

    Data Weighting

    10 per symbol per record

    Data Timing

    End of day

    Data Schedule

    Updated at 9am UTC every day

    Data Source(s)

    Data Partner

    Notes

    Splits prior to last reported are only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/splits
    GET /stock/{symbol}/splits/{range}

    Examples

    Path Parameters

    Range Description Source
    5y Five years Historical market data
    2y Two years Historical market data
    1y One year Historical market data
    ytd Year-to-date Historical market data
    6m Six months Historical market data
    3m Three months Historical market data
    1m One month (default) Historical market data
    next Next upcoming split Historical market data

    Response Attributes

    Key Type Description
    exDate string refers to the split ex-date
    declaredDate string refers to the split declaration date
    ratio number refers to the split ratio. The split ratio is an inverse of the number of shares that a holder of the stock would have after the split divided by the number of shares that the holder had before.

    For example: Split ratio of .5 = 2 for 1 split.
    toFactor string To factor of the split. Used to calculate the split ratio fromfactor/tofactor = ratio (eg ½ = 0.5)
    fromFactor string From factor of the split. Used to calculate the split ratio fromfactor/tofactor = ratio (eg ½ = 0.5)
    description string Description of the split event.

    Technical Indicators

    Technical indicators are available for any historical or intraday range. This endpoint calls the historical or intraday price endpoints for the given range, and the associated indicator for the price range.

    HTTP request

    GET /stock/{symbol}/indicator/{indicator-name}
    

    JSON response

    {
      indicator: [
        [
          5974647,
          -11915723 // , ...
        ]
      ],
      chart: [
        {
          // chart keys
        } // , ...
      ]
    }
    

    Data Weighting

    50 per indicator value + weight of chart data returned as described in historical prices or intraday prices

    Data Timing

    On Demand

    Data Schedule

    On Demand

    Data Source(s)

    IEX Cloud
    Primary Partner

    Notes

    Only inlcuded with paid subscription plans

    Examples

    Query Parameters

    All historical price and intraday price query parameters are supported. In addition, some technical indicators provide optional inputs which are listed in the table below. To use a custom input, pass in the numbered input query parameter to correspond with the option below.

    Parameter Type Description
    range String Required This should match the range provided in historical prices
    input1 Number Optional
    input2 Number Optional
    input3 Number Optional
    input4 Number Optional

    Indicators

    Each indicator can be called by using the indicator name in the table. Some inidicators support optional inputs which can be specified with the query parameters in the table above.

    Indicator Name Description Options Outputs
    abs Vector Absolute Value abs
    acos Vector Arccosine acos
    ad Accumulation/Distribution Line ad
    add Vector Addition add
    adosc Accumulation/Distribution Oscillator short period,long period adosc
    adx Average Directional Movement Index period dx
    adxr Average Directional Movement Rating period dx
    ao Awesome Oscillator ao
    apo Absolute Price Oscillator short period,long period apo
    aroon Aroon period aroon_down,aroon_up
    aroonosc Aroon Oscillator period aroonosc
    asin Vector Arcsine asin
    atan Vector Arctangent atan
    atr Average True Range period atr
    avgprice Average Price avgprice
    bbands Bollinger Bands period,stddev bbands_lower,bbands_middle,bbands_upper
    bop Balance of Power bop
    cci Commodity Channel Index period cci
    ceil Vector Ceiling ceil
    cmo Chande Momentum Oscillator period cmo
    cos Vector Cosine cos
    cosh Vector Hyperbolic Cosine cosh
    crossany Crossany crossany
    crossover Crossover crossover
    cvi Chaikins Volatility period cvi
    decay Linear Decay period decay
    dema Double Exponential Moving Average period dema
    di Directional Indicator period plus_di,minus_di
    div Vector Division div
    dm Directional Movement period plus_dm,minus_dm
    dpo Detrended Price Oscillator period dpo
    dx Directional Movement Index period dx
    edecay Exponential Decay period edecay
    ema Exponential Moving Average period ema
    emv Ease of Movement emv
    exp Vector Exponential exp
    fisher Fisher Transform period fisher,fisher_signal
    floor Vector Floor floor
    fosc Forecast Oscillator period fosc
    hma Hull Moving Average period hma
    kama Kaufman Adaptive Moving Average period kama
    kvo Klinger Volume Oscillator short period,long period kvo
    lag Lag period lag
    linreg Linear Regression period linreg
    linregintercept Linear Regression Intercept period linregintercept
    linregslope Linear Regression Slope period linregslope
    ln Vector Natural Log ln
    log10 Vector Base-10 Log log10
    macd Moving Average Convergence/Divergence short period,long period,signal period macd,macd_signal,macd_histogram
    marketfi Market Facilitation Index marketfi
    mass Mass Index period mass
    max Maximum In Period period max
    md Mean Deviation Over Period period md
    medprice Median Price medprice
    mfi Money Flow Index period mfi
    min Minimum In Period period min
    mom Momentum period mom
    msw Mesa Sine Wave period msw_sine,msw_lead
    mul Vector Multiplication mul
    natr Normalized Average True Range period natr
    nvi Negative Volume Index nvi
    obv On Balance Volume obv
    ppo Percentage Price Oscillator short period,long period ppo
    psar Parabolic SAR acceleration factor step,acceleration factor maximum psar
    pvi Positive Volume Index pvi
    qstick Qstick period qstick
    roc Rate of Change period roc
    rocr Rate of Change Ratio period rocr
    round Vector Round round
    rsi Relative Strength Index period rsi
    sin Vector Sine sin
    sinh Vector Hyperbolic Sine sinh
    sma Simple Moving Average period sma
    sqrt Vector Square Root sqrt
    stddev Standard Deviation Over Period period stddev
    stderr Standard Error Over Period period stderr
    stoch Stochastic Oscillator %k period,%k slowing period,%d period stoch_k,stoch_d
    stochrsi Stochastic RSI period stochrsi
    sub Vector Subtraction sub
    sum Sum Over Period period sum
    tan Vector Tangent tan
    tanh Vector Hyperbolic Tangent tanh
    tema Triple Exponential Moving Average period tema
    todeg Vector Degree Conversion degrees
    torad Vector Radian Conversion radians
    tr True Range tr
    trima Triangular Moving Average period trima
    trix Trix period trix
    trunc Vector Truncate trunc
    tsf Time Series Forecast period tsf
    typprice Typical Price typprice
    ultosc Ultimate Oscillator short period,medium period,long period ultosc
    var Variance Over Period period var
    vhf Vertical Horizontal Filter period vhf
    vidya Variable Index Dynamic Average short period,long period,alpha vidya
    volatility Annualized Historical Volatility period volatility
    vosc Volume Oscillator short period,long period vosc
    vwma Volume Weighted Moving Average period vwma
    wad Williams Accumulation/Distribution wad
    wcprice Weighted Close Price wcprice
    wilders Wilders Smoothing period wilders
    willr Williams %R period willr
    wma Weighted Moving Average period wma
    zlema Zero-Lag Exponential Moving Average period zlema

    Response Attributes

    Key Type Description
    indicator array An array of arrays is returned. Some indicators return multiple outputs which are described in the above table. The first array contains each output. The second array contains the values of the indicator output. Note The number of values may be less than the number of chart items returned for most indicators.
    chart array Returns the associated chart object as defined in historical prices or intraday prices

    Upcoming Events

    This will return all upcoming estimates, dividends, splits for a given symbol or the market. If market is passed for the symbol, IPOs will also be included.

    HTTP request

    GET /stock/{symbol}/upcoming-events
    GET /stock/{symbol}/upcoming-earnings
    GET /stock/{symbol}/upcoming-dividends
    GET /stock/{symbol}/upcoming-splits
    GET /stock/{symbol}/upcoming-ipos
    

    JSON response

    // If symbol is specified
    {
        "earnings": [],
        "dividends": [],
        "splits": []
    }
    
    
    // If symbol is market
    {
        "ipos": {
            "rawData": [],
            "viewData": []
        },
        "earnings": [],
        "dividends": [],
        "splits": []
    }
    

    Data Weighting

    Weight is equal to the number of items return by each type. estimates, dividends, splits, ipos

    By default, earnings will only return symbol and reportDate for a weight of 5 for each item. If you use fullUpcomingEarnings parameter, the full estimates object is returned for the full weight.

    Data Timing

    Timing based on each type

    Data Schedule

    Schedule of each type

    Data Source(s)

    Primary Partner IEX Cloud

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/upcoming-events
    GET /stock/{symbol}/upcoming-dividends
    GET /stock/{symbol}/upcoming-splits
    GET /stock/{symbol}/upcoming-earnings
    GET /stock/{symbol}/upcoming-ipos

    Examples

    Query String Parameters

    Option Details
    fullUpcomingEarnings Boolean. If set to true and passed to upcoming-events or upcoming-earnings, it will return the full estimate object at the full estimate weight. This can cause the call to be in the millions of messages.

    Response Attributes

    Response is an object with each item being an array of objects matching the type of data returned.

    Volume by Venue

    This returns 15 minute delayed and 30 day average consolidated volume percentage of a stock, by market. This call will always return 13 values, and will be sorted in ascending order by current day trading volume percentage.

    HTTP request

    GET /stock/{symbol}/volume-by-venue
    

    JSON response

    [
      {
        "volume": 289791,
        "venue": "IEXG",
        "venueName": "IEX",
        "date": "2017-09-19",
        "marketPercent": 0.014105441890783691,
      },
      // ...
    ]
    

    Data Weighting

    20 per call

    Data Timing

    15 min delayed

    Data Schedule

    Updated during regular market hours 9:30am-4pm ET

    Data Source(s)

    Consolidated Tape Investors Exchange

    Examples

    Response Attributes

    Key Type Description
    volume number refers to the current day, 15 minute delayed volume
    venue string refers to the Market Identifier Code (MIC)
    venueName string refers to a readable version of the venue defined by IEX
    date string refers to the date the data was last updated in the format YYYY-MM-DD
    marketPercent number refers to the 15 minute delayed percent of total stock volume traded by the venue

    News

    News

    HTTP request

    GET /stock/{symbol}/news/last/{last}
    

    JSON response

    [
      {
        "datetime": 1545215400000,
        "headline": "Voice Search Technology Creates A New Paradigm For Marketers",
        "source": "Benzinga",
        "url": "https://cloud.iexapis.com/stable/news/article/8348646549980454",
        "summary": "<p>Voice search is likely to grow by leap and bounds, with technological advancements leading to better adoption and fueling the growth cycle, according to Lindsay Boyajian, <a href=\"http://loupventures.com/how-the-future-of-voice-search-affects-marketers-today/\">a guest contributor at Loup Ventu...",
        "related": "AAPL,AMZN,GOOG,GOOGL,MSFT",
        "image": "https://cloud.iexapis.com/stable/news/image/7594023985414148",
        "lang": "en",
        "hasPaywall": true
      }
    ]
    

    SSE Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/news-stream\?symbols\=aapl\&token\=YOUR_TOKEN
    

    Data Weighting

    1 per symbol per news item returned

    Data Timing

    Intraday

    Data Schedule

    Continuous

    Data Source(s)

    CityFalcon

    Available Methods

    GET /stock/{symbol}/news
    GET /stock/{symbol}/news/last/{last}

    Examples

    Path Parameters

    Option Description
    symbol
    last Number between 1 and 50. Default is 10. (i.e. .../news/last/1)

    Response Attributes

    Key Type Description
    datetime number  Millisecond epoch of time of article
    headline string 
    source string  Source of the news article. Make sure to always attribute the source.
    url string  URL to IEX Cloud for associated news image. Note: You will need to append your token before calling.
    summary string 
    related string  Comma-delimited list of tickers associated with this news article. Not all tickers are available on the API. Make sure to check against available ref-data
    image string  URL to IEX Cloud for associated news image. Note: You will need to append your token before calling.
    lang string  Language of the source article
    hasPaywall boolean  Whether the news source has a paywall

    Cryptocurrency

    Cryptocurrency Book

    This returns a current snapshot of the book for a specified cryptocurrency. For REST, you will receive a current snapshot of the current book for the specific cryptocurrency. For SSE Streaming, you will get a full representation of the book updated as often as the book changes. Examples of each are below:

    REST

    HTTP request

    GET /crypto/{symbol}/book
    

    JSON response

    {
      "bids": [
        {
          "price": "10120.04000000",
          "size": "0.48604100",
          "timestamp": 1566407875440
        }
      ],
      "asks": [
        {
          "price": "10121.22000000",
          "size": "0.00847400",
          "timestamp": 1566407875440
        }
      ]
    }
    

    SSE Streaming

    HTTP request (SSE Streaming)

    GET https://cloud-sse.iexapis.com/stable/cryptoBook?symbols={symbol}&token={YOUR_TOKEN}
    

    curl SSE example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/cryptoBook\?symbols\=btcusd\&token\=YOUR_TOKEN
    

    JSON response (SSE)

    [
      {
        "bid":[
          {
            "price":"0.01",
            "size":"112041.1",
            "timestamp":1566226856910
          },
          {
            "price":"0.02",
            "size":"17960",
            "timestamp":1566226856910
          },
          ...
        ],
        "symbol":"BTCUSD",
        "ask":[
          {
            "price":"10847.07",
            "size":"0.00003975",
            "timestamp":1566226861013
          },
          {
            "price":"10849.63",
            "size":"0.00003975",
            "timestamp":1566226861017
          },
          ...
        ]
      }
    ]
    

    Data Weighting

    10 per symbol per update

    Data Timing

    Real-time

    Data Schedule

    continuous

    Data Source(s)

    Gemini Crypto Provider

    Examples

    REST

    SSE Streaming

    Path Parameters

    Option Details
    symbol Valid cryptocurrency symbol

    Response Attributes

    Key Type Description
    symbol string The symbol of the cryptocurrency
    side object Either bid or ask
    price string The price of the bid or ask
    size string The total quantity remaining at the price
    timestamp string Epoch timestamp of when the price level was last updated

    Cryptocurrency Events

    This returns a streaming list of event updates such as new and canceled orders.

    HTTP request (SSE Streaming)

    GET https://cloud-sse.iexapis.com/stable/cryptoEvents?symbols={symbol}&token={YOUR_TOKEN}
    

    curl SSE example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/cryptoEvents\?symbols\=btcusd\&token\=YOUR_TOKEN
    

    JSON response

    [
      {
        "symbol":"BTCUSD",
        "eventType":"change",
        "timestamp":1566314252386,
        "reason":"cancel",
        "price":"10621.50",
        "size":"0",
        "side":"bid"
      }
    ]
    

    Data Weighting

    2 per symbol per event

    Data Timing

    Real-time

    Data Schedule

    continuous

    Data Source(s)

    Gemini Crypto Provider

    Examples

    Path Parameters

    Option Details
    symbol Valid cryptocurrency symbol

    Response Attributes

    Key Type Description
    symbol string The symbol of the cryptocurrency
    eventType string Either change, trade, block_trade, or auction, to indicate why the type of event
    timestamp number Epoch timestamp of when the event occurred
    reason string Either place, trade, cancel, or initial, to indicate why the change has occurred. initial is for the initial response message, which will show the entire existing state of the order book
    price string The price this trade executed at when reason is trade, otherwise it is the price of the bid or the ask
    size string The size of the trade when reason is trade, otherwise it is the remaining volume at that price
    side string Either bid or ask

    Cryptocurrency Price

    This returns the price for a specified cryptocurrency.

    HTTP request

    GET /crypto/{symbol}/price
    

    JSON response

    {
      "price": "10660.00",
      "symbol": "BTCUSD"
    }
    

    Data Weighting

    1

    Data Timing

    Real-time

    Data Schedule

    continuous

    Data Source(s)

    Gemini Crypto Provider

    Available Methods

    GET /crypto/{symbol}/price

    Examples

    Path Parameters

    Option Details
    symbol Valid cryptocurrency symbol

    Response Attributes

    Key Type Description
    price string The price of the cryptocurrency
    symbol string The symbol of the cryptocurrency

    Cryptocurrency Quote

    This returns the quote for a specified cryptocurrency. Quotes are available via REST and SSE Streaming.

    REST

    HTTP request

    GET /crypto/{symbol}/quote
    

    JSON response

    {
      "symbol": "BTCUSDT",
      "sector": "cryptocurrency",
      "calculationPrice": "realtime",
      "latestPrice": "10689.54000000",
      "latestSource": "Real time price",
      "latestUpdate": 1566249085120,
      "latestVolume": null,
      "bidPrice": "10691.17000000",
      "bidSize": "0.02080400",
      "askPrice": "10693.94000000",
      "askSize": "0.09739300",
      "high": null,
      "low": null,
      "previousClose": null
    }
    

    SSE Streaming

    HTTP request (SSE Streaming)

    GET https://cloud-sse.iexapis.com/stable/cryptoQuotes?symbols={symbol}&token={YOUR_TOKEN}
    

    curl SSE example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/cryptoQuotes\?symbols\=btcusdt\&token\=YOUR_TOKEN
    

    JSON response (SSE)

    [
      { 
        "symbol": "BTCUSDT",
        "sector": "cryptocurrency",
        "calculationPrice": "realtime",
        "latestPrice": "10691.20000000",
        "latestSource": "Real time price",
        "latestUpdate": 1566307331358,
        "latestVolume": null,
        "bidPrice": "10690.07000000",
        "bidSize": "1.34898500",
        "askPrice": "10692.55000000",
        "askSize": "0.02057300",
        "high": null,
        "low": null,
        "previousClose": null
      },
    ]
    

    Data Weighting

    2

    Data Timing

    Real-time

    Data Schedule

    continuous

    Data Source(s)

    Gemini Crypto Provider

    Available Methods

    GET /crypto/{symbol}/quote

    Examples

    REST

    SSE Streaming

    Path Parameters

    Option Details
    symbol Valid cryptocurrency symbol

    Response Attributes

    Key Type Description
    symbol string The symbol of the cryptocurrency
    sector string This will always return cryptocurrency
    calculationPrice string This will always return realtime
    high string The high of the cryptocurrency within the last 24 hours
    low string The low of the cryptocurrency within the last 24 hours
    latestPrice string The latest price for this cryptocurrency
    latestSource string This will always be Real time price - this is a colloquial representation of calculationPrice
    latestUpdate number Epoch timestamp of when the price was last updated
    latestVolume string 24 hour trailing volume
    previousClose string The price of the cryptocurrency 24 hours ago
    bidPrice string The current bid price
    bidSize string The current size of the bid
    askPrice string The current ask price
    askSize string The current size of the ask

    Forex / Currencies

    Real-time Streaming

    This endpoint streams real-time foreign currency exchange rates.

    SSE Streaming Example (Paid subscriptions only)

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/forex\?symbols\=USDCAD\&token\=YOUR_TOKEN
    

    JSON response

    {
      "symbol": "USDCAD",
      "rate": 1.31,
      "timestamp":  1288282222000
    }
    

    Data Weighting

    500 per symbol per update

    Data Timing

    Real-time

    Data Schedule

    5pm Sun-4pm Fri UTC

    Data Source(s)

    360T

    Notes

    Only included with paid subscription plans

    Query Parameters

    Parameter Description
    symbols The base currency code which will be used for rates

    Response Attributes

    Key Type Description
    symbol string  symbol for the corresponding forex currency pair
    rate number  corresponding rate for the given currency pair
    timestamp number  epoch timestamp of the given rate

    Latest Currency Rates

    This endpoint returns real-time foreign currency exchange rates data updated every 250 milliseconds.

    HTTP request

    GET /fx/latest
    

    JSON response

    [ 
      {
        "symbol": "USDCAD",
        "rate": 1.31,
        "timestamp":  1288282222000
      },
      {
        "symbol": "USDGBP",
        "rate": 0.755,
        "timestamp":  1288282222000
      },
      {
        "symbol": "USDJPY",
        "rate": 100.43,
        "timestamp":  1288282222000
      },
    //...
    ]
    

    Data Weighting

    500 per symbol per rate

    Data Timing

    Realtime

    Data Schedule

    5pm Sun-4pm Fri UTC

    Data Source(s)

    360T

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /fx/latest

    Examples

    Query Parameters

    Parameter Description
    symbols The base currency code which will be used for rates

    Response Attributes

    Key Type Description
    symbol string  symbol for the corresponding forex currency pair
    rate number  corresponding rate for the given currency pair
    timestamp number  epoch timestamp of the given rate

    Currency Conversion

    This endpoint performs a conversion from one currency to another for a supplied amount of the base currency. If an amount isn’t provided, the latest exchange rate will be provided and the amount will be null.

    HTTP request

    GET /fx/convert
    

    JSON response

    [ 
      {
        "symbol": "USDCAD",
        "rate": 1.31,
        "timestamp":  1288282222000,
        "amount": 95.63
      },
      {
        "symbol": "USDGBP",
        "rate": 0.755,
        "timestamp":  1288282222000,
        "amount": 56.113
      },
      {
        "symbol": "USDJPY",
        "rate": 100.43,
        "timestamp":  1288282222000,
        "amount": 7331.39
      },
    //...
    ]
    

    Data Weighting

    500 per symbol per conversion

    Data Timing

    Realtime

    Data Schedule

    5pm Sun-4pm Fri UTC

    Data Source(s)

    360T

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /fx/convert

    Examples

    Query Parameters

    Parameter Description
    symbols The base currency code which will be used for rates
    amount The decimal amount to convert from one currency to another

    Response Attributes

    Key Type Description
    symbol string  symbol for the corresponding forex currency pair
    rate number  corresponding rate for the given currency pair
    timestamp number  epoch timestamp of the given rate
    amount number  amount of the converted currency, will return null if not specified

    Historical Daily

    This endpoint returns a daily value for the desired currency pair.

    HTTP request

    GET /fx/historical
    

    JSON response

    [
      [
        {
          "date": "2019-10-06",
          "symbol": "EURUSD",
          "timestamp": 1570406389000,
          "rate": 1.09834
        },
        {
          "date": "2019-10-07",
          "symbol": "EURUSD",
          "timestamp": 1570492793000,
          "rate": 1.09726
        },
      //...
      ],
      [
        {
          "date": "2019-10-06",
          "symbol": "GBPUSD",
          "timestamp": 1570406397000,
          "rate": 1.23347
        },
        {
          "date": "2019-10-07",
          "symbol": "GBPUSD",
          "timestamp": 1570492798000,
          "rate": 1.22885
        },
      //...
      ],
      //...
    ]
    

    Data Weighting

    100,000 per symbol per date

    Data Timing

    End of day

    Data Schedule

    1am Mon-Sat UTC

    Data Source(s)

    360T

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /fx/historical

    Examples

    Query Parameters

    Parameter Details
    symbols Required
    The desired currency pairs to get time series data for.
    If no date or date range is specified, the last record in the series will be returned.
    from Optional
    Returns data on or after the given from date. Format YYYY-MM-DD. Used together with the to parameter to define a date range.
    to Optional
    Returns data on or before the given to date. Format YYYY-MM-DD
    on Optional
    Returns data on the given date. Format YYYY-MM-DD
    last Optional
    Returns the latest n number of records in the series
    first Optional
    Returns the first n number of records in the series
    filter Optional
    The standard filter parameter. Filters return data to the specified comma delimited list of keys (case-sensitive)
    format Optional
    The standard format parameter. Returns data as JSON by default. See the data format section for supported types.

    Response Attributes

    Key Type Description
    date string the date of the given rate in the format of YYYY-MM-DD
    symbol string  symbol for the corresponding forex currency pair
    rate number  corresponding rate for the given currency pair
    timestamp number  epoch timestamp of the given rate

    Options

    End of Day Options

    Returns end of day options data

    HTTP request

    # Lookup available expiration dates
    GET /stock/{symbol}/options
    

    JSON response

    [
        "201906",
        "201907",
        "202001"
    ]
    

    HTTP request

    # Get options data
    GET /stock/{symbol}/options/{expiration}/{optionSide?}
    

    JSON response

    [
        {
            "symbol": "AAPL",
            "id": "AAPL20190621C00240000",
            "expirationDate": "20190621",
            "contractSize": 100,
            "strikePrice": 240,
            "closingPrice": 0.39,
            "side": "call",
            "type": "equity",
            "volume": 884,
            "openInterest": 12197,
            "bid": 0.38,
            "ask": 0.42,
            "lastUpdated": "2019-04-25",
            "isAdjusted": false
        },
    ]
    

    Data Weighting

    1000 per symbol per expiration date
    1 per date lookup

    Data Timing

    End of day

    Data Schedule

    9:30am ET Tue-Sat

    Data Source(s)

    Primary Partner

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/options/{expiration}/{optionSide?}

    Examples

    Lookup available expiration dates for a symbol

    Path Parameters

    Option Details
    symbol valid symbol
    expiration expiration date as YYYYMM. Optional. If not passed, the call will return all available expiration dates for the symbol.
    optionSide Optional. put or call will return just those types of contracts.

    Response Attributes

    Key Type Description
    symbol string Symbol associated with the option
    id string ID of the individual contract. symbol + date + side + 8 digit strike price. The IDs for any contract that is flagged as adjusted will also end with _adj (see explanation of isAdjusted property below)
    contractSize number contract size
    strikePrice number strike price
    closingPrice number closing price
    side string call or put
    type string equity or index
    volume number
    openInterest number
    bid number final bid price of the day
    ask number final ask price of the day
    lastUpdated string date the EOD options data was last updated as YYYY-MM-DD
    isAdjusted boolean this will be true in instances where the option has been adjusted such that it is not a straightforward vanilla options contract. This is usually due to a corporate action or event such as an acquisition, merger, special dividend, stock split, reverse split, or spin off The ids for any contract that is flagged as adjusted will also end with _adj

    Social Sentiment

    Social Sentiment

    This endpoint provides social sentiment data from StockTwits. Data can be viewed as a daily value, or by minute for a given date.

    HTTP request

    GET /stock/{symbol}/sentiment/{type}/{?date}
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/sentiment\?symbols\=aapl\&token\=YOUR_TOKEN
    

    JSON response

    // Daily
    {
      "sentiment": 0.20365833333333336,
      "totalScores": 24,
      "positive": 0.88,
      "negative": 0.12
    }
    
    // By minute
    [
      {
        "sentiment": 0.23336666666666664,
        "totalScores": 3,
        "positive": 1,
        "negative": 0,
        "minute": "1258"
      },
    ]
    
    // SSE
    {
      "symbol": "AAPL",
      "score": -.41,
      "sequence": 6808168,
      "date": 1506605400394,
    }
    

    Data Weighting

    100 per symbol per date for daily sentiment
    200 per symbol per date for by minute sentiment
    5 per message using SSE

    Data Timing

    Real-time

    Data Schedule

    continuous

    Data Source(s)

    StockTwits

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/sentiment/{type}/{date}

    Examples

    Path Parameters

    Option Description
    symbol valid symbol
    type Optional. Can only be daily or minute. Default is daily.
    date Optional. Format YYYYMMDD date to fetch sentiment data.

    Response Attributes

    Key Type Description
    sentiment number  Number between -1 and 1 where -1 is most bearish and 1 is most bullish.
    totalScores number  Number of social data inputs to generate the sentiment value.
    positive string  Percent of social messages with positive sentiment.
    negative string  Percent of social messages with negative sentiment.
    minute string  Only provided when minute is requested. Minute represented as HHmm.

    CEO Compensation

    CEO Compensation

    This endpoint provides CEO compensation for a company by symbol.

    HTTP request

    GET /stock/{symbol}/ceo-compensation
    

    JSON response

    // Daily
    {
        "symbol": "AVGO",
        "name": "Hock E. Tan",
        "companyName": "Broadcom Inc.",
        "location": "Singapore, Asia",
        "salary": 1100000,
        "bonus": 0,
        "stockAwards": 98322843,
        "optionAwards": 0,
        "nonEquityIncentives": 3712500,
        "pensionAndDeferred": 0,
        "otherComp": 75820,
        "total": 103211163,
        "year": "2017"
    }
    

    Data Weighting

    20 per symbol

    Data Timing

    End of day

    Data Schedule

    1am daily

    Data Source(s)

    IEX Cloud

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /stock/{symbol}/ceo-compensation

    Examples

    Path Parameters

    Option Description
    symbol valid symbol

    Response Attributes

    Key Type Description
    symbol string  Symbol of the company
    name string  CEO name
    companyName string  Name of the company
    location string  Location of the company
    salary number  Salary of the company CEO
    bonus number  Bonus amount of the company CEO
    stockAwards number 
    optionAwards number 
    nonEquityIncentives number 
    pensionAndDeferred number 
    otherComp number 
    total number  Total compensation of the company CEO
    year string  Fiscal year for the compensation data

    Treasuries

    Daily Treasury Rates

    This endpoint provides the daily constant maturity rate for 30 year, 20 year, 10 year, 5 year, 2 year, 1 year, 6 month, 3 month, and 1 month treasuries.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    1.54
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    End of day

    Data Schedule

    6am, 11pm UTC daily

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DGS30 30 Year constant maturity rate
    DGS20 20 Year constant maturity rate
    DGS10 10 Year constant maturity rate
    DGS5 5 Year constant maturity rate
    DGS2 2 Year constant maturity rate
    DGS1 1 Year constant maturity rate
    DGS6MO 6 Month constant maturity rate
    DGS3MO 3 Month constant maturity rate
    DGS1MO 1 Month constant maturity rate

    Commodities

    Oil Prices

    This endpoint provides historical oil prices .

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    55.95
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Weekly

    Data Schedule

    6am UTC Friday

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DCOILWTICO Crude oil West Texas Intermediate - in dollars per barrel, not seasonally adjusted
    DCOILBRENTEU Crude oil Brent Europe - in dollars per barrel, not seasonally adjusted

    Natural Gas Price

    This endpoint provides historical Henry Hub natural gas spot price.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.95
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Daily

    Data Schedule

    6am UTC Daily

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DHHNGSP Henry Hub Natural Gas Spot Price - in dollars per million BTU, not seasonally adjusted

    Heating Oil Prices

    This endpoint provides historical heating oil prices.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.95
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Daily

    Data Schedule

    6am UTC Daily

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DHOILNYH No. 2 Heating Oil New York Harbor - in dollars per gallon, not seasonally adjusted

    Jet Fuel Prices

    This endpoint provides historical kerosene type jet fuel prices.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.95
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Daily

    Data Schedule

    6am UTC Daily

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DJFUELUSGULF Kerosense Type Jet Fuel US Gulf Coast - in dollars per gallon, not seasonally adjusted

    Diesel Price

    This endpoint provides historical US diesel sales price.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    3.15
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Weekly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol GASDESW US Diesel Sales Price - in dollars per gallon, not seasonally adjusted

    Gas Prices

    This endpoint provides historical US conventional gas prices.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    3.15
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Weekly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol GASREGCOVW US Regular Conventional Gas Price - in dollars per gallon, not seasonally adjusted
    GASMIDCOVW US Midgrade Conventional Gas Price - in dollars per gallon, not seasonally adjusted
    GASPRMCOVW US Premium Conventional Gas Price - in dollars per gallon, not seasonally adjusted

    Propane Prices

    This endpoint provides historical propane prices.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.95
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Daily

    Data Schedule

    6am UTC Daily

    Data Source(s)

    U.S. Energy Information Administration

    Notes

    This endpoint uses the generic data points endpoint
    Launch Grow Scale users only

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol DPROPANEMBTX Propane Prices Mont Belvieu Texas - in dollars per gallon, not seasonally adjusted

    Economic Data

    Mortgage Rates

    This endpoint provides fixed and adjustable mortgage rates.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Weekly

    Data Schedule

    6am UTC Friday

    Data Source(s)

    Freddie Mac

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol MORTGAGE30US US 30-Year fixed rate mortgage average
    MORTGAGE15US US 15-Year fixed rate mortgage average
    MORTGAGE5US US 5/1-Year adjustable rate mortgage average

    Federal Fund Rates

    This endpoint provides the effective federal funds rate

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol FEDFUNDS Effective federal funds rate

    Credit Card Interest Rate

    This endpoint provides the commercial bank credit card interest rate

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    15.1
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol TERMCBCCALLNS Commercial bank credit card interest rate as a percent, not seasonally adjusted

    CD Rates

    This endpoint provides jumbo and non-jumbo CD rates.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Weekly

    Data Schedule

    6am UTC Friday

    Data Source(s)

    Federal Deposit Insurance Corporation

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol MMNRNJ CD Rate Non-Jumbo less than $100,000 Money market
    MMNRJD CD Rate Jumbo more than $100,000 Money market

    Real GDP

    This endpoint provides the real gross domestic product

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Quarterly

    Data Schedule

    6am UTC

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol A191RL1Q225SBEA Real Gross Domestic Product

    Industrial Production Index

    This endpoint provides the industrial production index

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol INDPRO Industrial Production Index

    Consumer Price Index

    This endpoint provides the consumer price index for all urban consumers

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    Board of Governors of the Federal Reserve System (US)

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol CPIAUCSL Consumer Price Index All Urban Consumers

    Total Payrolls

    This endpoint provides total nonfarm payrolls

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    160000
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Bureau of Labor Statistics

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol PAYEMS Total nonfarm employees in thousands of persons seasonally adjusted

    Total Housing Starts

    This endpoint provides total US, privately owned housing starts.

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    2000
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Census Bureau and U.S. Department of Housing and Urban Development

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol HOUST Total Housing Starts in thousands of units, seasonally adjusted annual rate

    Unemployment Rate

    This endpoint provides the civilian unemployment rate

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    3.2
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Bureau of Labor Statistics

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol UNRATE Unemployment rate returned as a percent, seasonally adjusted

    Total Vehicle Sales

    This endpoint provides total vehicle sales

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    15.5
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Bureau of Economic Analysis

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol TOTALSA Total Vehicle Sales in millions of units

    US Recession Probabilities

    This endpoint provides smoothed US recession probabilities

    HTTP request

    GET /data-points/market/{symbol}
    

    Plain Text Response

    .37
    

    Data Weighting

    1000 per symbol per date

    Data Timing

    Monthly

    Data Schedule

    6am UTC

    Data Source(s)

    U.S. Bureau of Economic Analysis

    Notes

    This endpoint uses the generic data points endpoint

    Available Methods

    GET /data-points/market/{symbol}

    Examples

    Path Parameters

    Option Value Description
    symbol RECPROUSM156N US Recession Probabilities. Smoothed recession probabilities for the United States are obtained from a dynamic-factor markov-switching model applied to four monthly coincident variables: non-farm payroll employment, the index of industrial production, real personal income excluding transfer payments, and real manufacturing and trade sales.

    Reference Data

    Returns an array of symbols up to the top 10 matches. Results will be sorted for relevancy. Search currently defaults to equities only, where the symbol returned is supported by endpoints listed under the Stocks category.

    HTTP request

    GET /search/{fragment}
    

    JSON response

    [
        { 
            "symbol": "TV",
            "securityName": "Grupo Televisa, S.A.B. Sponsored ADR",
            "securityType": "ad",
            "region": "US",
            "exchange": "NYS"
        },
        ...
    ]
    

    Data Weighting

    1 per call (search)

    Data Source(s)

    Investors Exchange

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /search/{fragment}

    Examples

    Path Parameters

    Option Type Description
    fragment string URL encoded search string. Currently search by symbol or security name.

    Response Attributes

    Key Type Description
    symbol string refers to the symbol represented in Nasdaq Integrated symbology (INET).
    securityName string Name of the security
    securityType string refers to the common issue type (
    AD - ADR
    RE - REIT
    CE - Closed end fund
    SI - Secondary Issue
    LP - Limited Partnerships
    CS - Common Stock
    ET - ETF
    WT - Warrant
    OEF - Open Ended Fund
    CEF - Closed Ended Fund
    PS - Preferred Stock)
    region string refers to the country code for the symbol using ISO 3166-1 alpha-2
    exchange string refers to Exchange using IEX Supported Exchanges list

    Cryptocurrency Symbols

    This provides a full list of supported cryptocurrencies by IEX Cloud.

    HTTP request

    GET /ref-data/crypto/symbols
    

    JSON response

    [
      {
        "symbol": "BTCUSD",
        "name": "Bitcoin to USD",
        "exchange": null,
        "date": "2019-08-19",
        "type": "crypto",
        "iexId": null,
        "region": "US",
        "currency": "USD",
        "isEnabled": true
      },
      {
        "symbol": "ETHUSD",
        "name": "Ethereum to USD",
        "exchange": null,
        "date": "2019-08-19",
        "iexId": null,
        "type": "crypto",
        "region": "US",
        "currency": "USD",
        "isEnabled": true
      },
      ...
    ]
    

    Data Weighting

    1

    Data Schedule

    8AM UTC daily

    Data Source(s)

    Gemini Crypto Provider

    Available Methods

    GET /ref-data/crypto/symbols

    Examples

    Response Attributes

    Key Type Description
    symbol string The symbol of the cryptocurrency
    name string The name of the cryptocurrency
    exchange string Will return null for cryptocurrency, this field is present to maintain consistency with other ref data endpoints
    iexId string Will return null for cryptocurrency, this field is present to maintain consistency with other ref data endpoints
    currency string The currency in which this symbol will be quoted in. For example, BTCUSD will be in the currency of “USD”
    date string The last time we as IEX updated it
    type string The type of the symbol – defaults to “crypto”
    isEnabled boolean Whether or not the cryptocurrency is currently live and updating
    region string The region in which this cryptocurrency comes from – defaults to “US”

    FX Symbols

    This call returns a list of supported currencies and currency pairs.

    HTTP request

    GET /ref-data/fx/symbols
    

    JSON response

    {
      "currencies": [
        {
          "code": "USD",
          "name": "U.S. Dollar"
        },
      //...
      ],
      "pairs": [
        { 
          "fromCurrency": "EUR",
          "toCurrency": "USD",
          "symbol": "EURUSD"
        }, 
      //...
      ]
    }
    

    Data Weighting

    1 per call

    Data Timing

    End of day

    Data Schedule

    7am, 9am, UTC daily

    Data Source(s)

    360T

    Available Methods

    GET /ref-data/fx/symbols

    Examples

    Response Attributes

    Key Type Description
    currencies array Array of currencies. Each currency is an object containing a code and name as strings.
    pairs array Array of supported currency pairs. Each pair is an object containing from code and to code.

    IEX Symbols

    This call returns an array of symbols the Investors Exchange supports for trading. This list is updated daily as of 7:45 a.m. ET. Symbols may be added or removed by the Investors Exchange after the list was produced.

    HTTP request

    GET /ref-data/iex/symbols
    

    JSON response

    [
      {
        "symbol": "A",
        "date": "2017-04-19",
        "isEnabled": true,
      },
      {
        "symbol": "AA",
        "date": "2017-04-19",
        "isEnabled": true,
      }
    ]
    

    Data Weighting

    Free

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Investors Exchange

    Available Methods

    GET /ref-data/iex/symbols

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the symbol represented in Nasdaq Integrated symbology (INET).
    date refers to the date the symbol reference data was generated.
    isEnabled will be true if the symbol is enabled for trading on IEX.

    International Symbols

    This call returns an array of international symbols that IEX Cloud supports for API calls.

    HTTP request

    GET /ref-data/region/{region}/symbols
    GET /ref-data/exchange/{exchange}/symbols
    

    JSON response

    [
        {
            "symbol": "A.V",
            "exchange": "TSX",
            "name": "Armor Minerals Inc.",
            "date": "2019-03-12",
            "type": "cs",
            "iexId": "IEX_4656374258322D52",
            "region": "CA",
            "currency": "CAD",
            "isEnabled": true
        },
        {
            "symbol": "AA.V",
            "exchange": "TSX",
            "name": "Alba Minerals Ltd.",
            "date": "2019-03-12",
            "type": "cs",
            "iexId": "IEX_4E44474238422D52",
            "region": "CA",
            "currency": "CAD",
            "isEnabled": true
        }
    ]
    

    Data Weighting

    100 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Primary Partner Investors Exchange

    Notes

    Currently International symbols only have End of Day prices.

    Available Methods

    GET /ref-data/region/{region}/symbols
    GET /ref-data/exchange/{exchange}/symbols

    Examples

    Path Parameters

    Option Details
    region • Required
    • 2 letter case insensitive string of country codes using ISO 3166-1 alpha-2
    exchange • Required
    • Case insensitive string of Exchange using IEX Supported Exchanges list

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the symbol
    exchange refers to Exchange using IEX Supported Exchanges list
    name refers to the name of the company or security.
    date refers to the date the symbol reference data was generated.
    isEnabled will be true if the symbol is trading.
    type refers to the common issue type
    ad - ADR
    re - REIT
    ce - Closed end fund
    si - Secondary Issue
    lp - Limited Partnerships
    cs - Common Stock
    et - ETF
    wt - Warrant
    oef - Open Ended Fund
    cef - Closed Ended Fund
    ps - Preferred Stock
    ut - Unit
    temp - Temporary
    region refers to the region of the world the symbol is in
    currency refers to the currency the symbol is traded in
    iexId unique ID applied by IEX to track securities through symbol changes.

    International Exchanges

    Returns an array of exchanges.

    HTTP request

    GET /ref-data/exchanges
    

    JSON response

    [
        {
            exchange: "ADS",
            region: "AE",
            description: "Abu Dhabi Securities Exchange",
            mic: "XADS",
            exchangeSuffix: "-DH"
        }
    ]
    

    Data Weighting

    1 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Investors Exchange

    Available Methods

    GET /ref-data/exchanges

    Examples

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Type Description
    exchange string Exchange abbreviation
    region string 2 letter case insensitive string of country codes using ISO 3166-1 alpha-2
    description string Full name of the exchange.
    mic string Market Identifier Code using ISO 10383
    exchangeSuffix string Exchange Suffix to be added for symbols on that exchange

    ISIN Mapping

    Helper call to convert ISIN to IEX Cloud symbols. Note that due to licensing restrictions we are unable to return the ISIN.

    HTTP request

    POST /ref-data/isin  { "token" : "YOUR_TOKEN", "isin" : [ "isin", "isin", "isin" ] }
    

    JSON response

    [
        {
            "symbol" : "foo",
            "exchange" : "NAS",
            "region" : "US"
        }
    ]
    

    Data Weighting

    100 per call

    Data Source(s)

    Investors Exchange

    Available Methods

    POST /ref-data/isin

    Examples

    Response Attributes

    Key Type Description
    symbol string The ticker
    exchange string An identifier of where the symbol is listed
    region string The geographic identifier where the symbol is listed

    Mutual Fund Symbols

    This call returns an array of mutual fund symbols that IEX Cloud supports for API calls.

    HTTP request

    GET /ref-data/mutual-funds/symbols
    

    JSON response

    [
      {
        "symbol": "AAAAX",
        "name": "DWS Alternative Asset Allocation Fund Class A",
        "date": "2019-03-07",
        "type": "oef",
        "iexId": "IEX_4258444437432D52",
        "region": "US",
        "currency": "USD",
        "isEnabled": true
      },
    ]
    

    Data Weighting

    100 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Primary Partner Investors Exchange

    Examples

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the symbol
    name refers to the name of the company or security.
    date refers to the date the symbol reference data was generated.
    type refers to the common issue type (
    OEF - Open Ended Fund
    CEF - Closed Ended Fund)
    region refers to the region of the world the symbol is in
    currency refers to the currency the symbol is traded in
    iexId unique ID applied by IEX to track securities through symbol changes.

    Options Symbols

    This call returns an object keyed by symbol with the value of each symbol being an array of available contract dates.

    HTTP request

    GET /ref-data/options/symbols
    

    JSON response

    {
      "DAL": [
        "201904",
        "201905",
        "201906",
        "201909",
        "201912",
        "202001",
        "202101"
      ],
      "RUSS": [
        "201905",
        "201906",
        "201909",
        "201912"
      ],
    
      //...
    }
    

    Data Weighting

    100 per call

    Data Timing

    End of day

    Data Schedule

    10:00am ET Tue-Sat

    Data Source(s)

    Primary Partner Investors Exchange

    Notes

    Only included with paid subscription plans

    Available Methods

    GET /ref-data/options/symbols

    Examples

    Response Attributes

    Key Description
    symbol Array of available contract date strings formatted as YYYYMM

    OTC Symbols

    This call returns an array of OTC symbols that IEX Cloud supports for API calls.

    HTTP request

    GET /ref-data/otc/symbols
    

    JSON response

    [
      {
        "symbol": "A",
        "name": "AGILENT TECHNOLOGIES INC",
        "date": "2019-01-01",
        "type": "cs",
        "iexId": "IEX_46574843354B2D52"
      },
    ]
    

    Data Weighting

    100 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Primary Partner Investors Exchange

    Examples

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the symbol
    name refers to the name of the company or security.
    date refers to the date the symbol reference data was generated.
    type refers to the common issue type
    ad - ADR
    re - REIT
    ce - Closed end fund
    si - Secondary Issue
    lp - Limited Partnerships
    cs - Common Stock
    et - ETF
    wt - Warrant
    region refers to the region of the world the symbol is in
    currency refers to the currency the symbol is traded in
    iexId unique ID applied by IEX to track securities through symbol changes.

    Sectors

    Returns an array of sectors.

    HTTP request

    GET /ref-data/sectors
    

    JSON response

    [
        { "name": "Technology" },
        { "name": "Consumer Cyclical" },
    
        //...
    ]
    

    Data Weighting

    1 per call

    Data Source(s)

    Primary Partner Investors Exchange

    Available Methods

    GET /ref-data/sectors

    Examples

    Response Attributes

    Key Type Description
    name string Name of Sector

    Symbols

    This call returns an array of symbols that IEX Cloud supports for API calls.

    HTTP request

    GET /ref-data/symbols
    

    JSON response

    [
      {
        "symbol": "A",
        "name": "Agilent Technologies Inc.",
        "date": "2019-03-07",
        "type": "cs",
        "iexId": "IEX_46574843354B2D52",
        "region": "US",
        "currency": "USD",
        "isEnabled": true
      },
      {
        "symbol": "AA",
        "name": "Alcoa Corp.",
        "date": "2019-03-07",
        "type": "cs",
        "iexId": "IEX_4238333734532D52",
        "region": "US",
        "currency": "USD",
        "isEnabled": true
      }
    ]
    

    Data Weighting

    100 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Primary Partner Investors Exchange

    Examples

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the symbol represented in Nasdaq Integrated symbology (INET).
    exchange refers to Exchange using IEX Supported Exchanges list
    name refers to the name of the company or security.
    date refers to the date the symbol reference data was generated.
    isEnabled will be true if the symbol is enabled for trading on IEX.
    type refers to the common issue type
    ad - ADR
    re - REIT
    ce - Closed end fund
    si - Secondary Issue
    lp - Limited Partnerships
    cs - Common Stock
    et - ETF
    wt - Warrant
    oef - Open Ended Fund
    cef - Closed Ended Fund
    ps - Preferred Stock
    region refers to the country code for the symbol using ISO 3166-1 alpha-2
    currency refers to the currency the symbol is traded in using ISO 4217
    iexId unique ID applied by IEX to track securities through symbol changes.

    Tags

    Returns an array of tags. Tags can be found on each company.

    HTTP request

    GET /ref-data/tags
    

    JSON response

    [
        { "name" : "Financial Services" },
        { "name" : "Industrials" },
        ...
    ]
    

    Data Weighting

    1 per call

    Data Source(s)

    Primary Partner Investors Exchange

    Available Methods

    GET /ref-data/tags

    Examples

    Response Attributes

    Key Type Description
    name string Name of Tag

    U.S. Exchanges

    Returns an array of U.S. exchanges.

    HTTP request

    GET /ref-data/market/us/exchanges
    

    JSON response

    [
      {
        "name": "IEX",
        "longName": "Investors Exchange",
        "mic": "IEXG",
        "tapeId": "V",
        "oatsId": "XV",
        "refId": "IEXG",
        "type": "equities"
      },
    ]
    

    Data Weighting

    1 per call

    Data Timing

    End of day

    Data Schedule

    8am, 9am, 12pm, 1pm UTC daily

    Data Source(s)

    Investors Exchange

    Available Methods

    GET /ref-data/market/us/exchanges

    Examples

    Response Attributes

    Key Type Description
    name string Short name of the exchange.
    longName string Full name of the exchange.
    mic string Market identifier code for the exchange.
    tapeId string ID used to identify the exchange on the Consolidated Tape.
    oatsId string FINRA OATS exchange participant ID.
    refId string ID used to map exchange across individual markets. Useful when mapping ISIN
    type string Type of securities traded by the exchange

    U.S. Holidays and Trading Dates

    This call allows you to fetch a number of trade dates or holidays from a given date. For example, if you want the next trading day, you would call /ref-data/us/dates/trade/next/1.

    HTTP request

    GET /ref-data/us/dates/{type}/{direction}/{last?}/{startDate?}
    

    JSON response

    [
      {
        "date": "2019-02-07",
        "settlementDate": "2019-02-09",
      },
    ]
    

    Data Weighting

    1 per row returned

    Data Timing

    End of day

    Data Schedule

    Back to 2017 to forward 2 years.

    Data Source(s)

    Investors Exchange

    Available Methods

    GET /ref-data/us/dates/{type}/{direction?}/{last?}/{startDate?}

    Examples

    Path Parameters

    Option Type Details
    type string Required. Can be trade or holiday
    direction string Required. Can be next or last. Default is next. next will return today if today is a holiday.
    last number • Optional. Number of days to go back or forward. Default is 1
    startDate string • Optional. Used to specify the start date for next or last. Format is YYYYMMDD. Defaults to today.

    Response Attributes

    Key Type Description
    date string Trading or holiday date depending on the type specified. Formatted as YYYY-MM-DD.
    settlementDate string T+2 trade settlement date depending on the type specified. Formatted as YYYY-MM-DD.

    Investors Exchange Data

    DEEP

    DEEP is used to receive real-time depth of book quotations direct from IEX. The depth of book quotations received via DEEP provide an aggregated size of resting displayed orders at a price and side, and do not indicate the size or number of individual orders at any price level. Non-displayed orders and non-displayed portions of reserve orders are not represented in DEEP.

    DEEP also provides last trade price and size information. Trades resulting from either displayed or non-displayed orders matching on IEX will be reported. Routed executions will not be reported.

    HTTP request

    GET /deep?symbols=snap
    

    JSON response

    {
      "symbol": "SNAP",
      "marketPercent": 0.00837,
      "volume": 359425,
      "lastSalePrice": 22.975,
      "lastSaleSize": 100,
      "lastSaleTime": 1494446394043,
      "lastUpdated": 1494446715171,
      "bids": [
          {
            "price": 19.13,
            "size": 650,
            "timestamp": 1494446715171
          }
      ],
      "asks": [
          {
            "price": 19.15,
            "size": 891,
            "timestamp": 1494446717238
          }
      ],
      "systemEvent": {
        "systemEvent": "R",
        "timestamp": 1494627280251
      },
      "tradingStatus": {
        "status": "T",
        "reason": "NA",
        "timestamp": 1494588017687
      },
      "opHaltStatus": {
        "isHalted": false,
        "timestamp": 1494588017687
      },
      "ssrStatus": {
        "isSSR": true,
        "detail": "N",
        "timestamp": 1494588094067
      },
      "securityEvent": {
        "securityEvent": "MarketOpen",
        "timestamp": 1494595800005
      },
      "trades": [
        {
          "price": 19.145,
          "size": 400,
          "tradeId": 517365191,
          "isISO": false,
          "isOddLot": false,
          "isOutsideRegularHours": false,
          "isSinglePriceCross": false,
          "isTradeThroughExempt": false,
          "timestamp": 1494619192193
        }
      ],
      "tradeBreaks": [
        {
          "price": 19.145,
          "size": 400,
          "tradeId": 517365191,
          "isISO": false,
          "isOddLot": false,
          "isOutsideRegularHours": false,
          "isSinglePriceCross": false,
          "isTradeThroughExempt": false,
          "timestamp": 1494619192193
        }
      ],
      "auction": {
          "auctionType": "Open",
          "pairedShares": 3600,
          "imbalanceShares": 600,
          "referencePrice": 1.05,
          "indicativePrice": 1.05,
          "auctionBookPrice": 1.05,
          "collarReferencePrice": 1.05,
          "lowerCollarPrice": 0.5,
          "upperCollarPrice": 1.6,
          "extensionNumber": 0,
          "startTime": "09:30:00",
          "lastUpdate": 1506706199025
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=deep
    

    Data Weighting

    Free

    Data Timing

    Real-time

    Data Schedule

    9:30am-4pm ET market hours

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Options Details
    symbols • Parameter is required
    • Value needs to be a single symbol (i.e snap)

    Response Attributes

    Key Type
    symbol string
    marketPercent number
    volume number
    lastSalePrice number
    lastSaleSize number
    lastSaleTime number
    lastUpdated number
    bids array
    asks array
    systemEvent object
    tradingStatus object
    opHaltStatus object
    ssrStatus object
    securityEvent object
    trades array
    tradeBreaks array
    auction object

    DEEP Auction

    DEEP broadcasts an Auction Information Message every one second between the Lock-in Time and the auction match for Opening and Closing Auctions, and during the Display Only Period for IPO, Halt, and Volatility Auctions. Only IEX listed securities are eligible for IEX Auctions.

    HTTP request

    GET /deep/auction?symbols=ziext
    

    JSON response

    {
      "ZIEXT": {
        "auctionType": "Open",
        "pairedShares": 3600,
        "imbalanceShares": 600,
        "referencePrice": 1.05,
        "indicativePrice": 1.05,
        "auctionBookPrice": 1.05,
        "collarReferencePrice": 1.05,
        "lowerCollarPrice": 0.5,
        "upperCollarPrice": 1.6,
        "extensionNumber": 0,
        "startTime": "09:30:00",
        "lastUpdate": 1506706199025
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=deep-auction
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e ziext,zexit)
    • Maximum of 10 symbols

    Response Attributes

    Key Type Values
    auctionType string refers to the auction type (Open, Close, Halt, Volatility, IPO)
    pairedShares number refers to the number of shares paired at the referencePrice using orders on the auction book
    imbalanceShares number refers to the number of unpaired shares at the referencePrice using orders on the auction book
    referencePrice number refers to the clearing price at or within the reference price range using ordes on the auction book
    indicativePrice number refers to the clearing price using eligible auction orders
    auctionBookPrice number refers to the clearing price using orders on the auction book
    collarReferencePrice number refers to the reference price used for the auction collar, if any
    lowerCollarPrice number refers to the lower threshold price of the auction collar, if any
    upperCollarPrice number refers to the upper threshold price of the auction collar, if any
    extensionNumber number refers to the number of extensions an auction has received
    startTime string refers to the projected time of the auction match. Formatted as HH:MM:SS
    lastUpdate number refers to the timestamp of the auction information

    DEEP Book

    Returns IEX’s bids and asks for given symbols.

    HTTP request

    GET /deep/book?symbols=yelp
    

    JSON response

    {
        "YELP": {
            "bids": [
                {
                    "price": 63.09,
                    "size": 300,
                    "timestamp": 1494538496261
                },
            ],
            "asks": [
                {
                    "price": 63.92,
                    "size": 300,
                    "timestamp": 1494538381896
                },
                {
                    "price": 63.97,
                    "size": 300,
                    "timestamp": 1494538381885
                }
            ]
        }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=book
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols

    Response Attributes

    Key Type
    bids array
    asks array
    price number
    size number
    timestamp number

    DEEP Operational Halt Status

    The Exchange may suspend trading of one or more securities on IEX for operational reasons and indicates such operational halt using the Operational halt status message.

    IEX disseminates a full pre-market spin of Operational halt status messages indicating the operational halt status of all securities. In the spin, IEX will send out an Operational Halt Message with “N” (Not operationally halted on IEX) for all securities that are eligible for trading at the start of the Pre-Market Session. If a security is absent from the dissemination, firms should assume that the security is being treated as operationally halted in the IEX Trading System at the start of the Pre-Market Session.

    After the pre-market spin, IEX will use the Operational halt status message to relay changes in operational halt status for an individual security.

    HTTP request

    GET /deep/op-halt-status?symbols=snap
    

    JSON response

    {
      "SNAP": {
        "isHalted": false,
        "timestamp": 1494588017674
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=op-halt-status
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols

    Response Attributes

    Key Type
    isHalted boolean
    timestamp number

    DEEP Official Price

    The Official Price message is used to disseminate the IEX Official Opening and Closing Prices.

    These messages will be provided only for IEX Listed Securities.

    HTTP request

    GET /deep/official-price?symbols=snap
    

    JSON response

    {
      "SNAP": {
        "priceType": "Open",
        "price": 1.05,
        "timestamp": 1494595800005
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=official-price
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 1 symbol

    Response Attributes

    Key Type Values
    priceType string 'Open' (Official Open Price)

    'Close' (Official Close Price)
    price number
    timestamp number

    DEEP Security Event

    The Security event message is used to indicate events that apply to a security. A Security event message will be sent whenever such event occurs.

    HTTP request

    GET /deep/security-event?symbols=snap
    

    JSON response

    {
      "SNAP": {
        "securityEvent": "MarketOpen",
        "timestamp": 1494595800005
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=security-event
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols

    Response Attributes

    Key Type Values
    securityEvent string 'MarketOpen'

    'MarketClose'
    timestamp number

    DEEP Short Sale Price Test Status

    In association with Rule 201 of Regulation SHO, the Short Sale Price Test message is used to indicate when a Short Sale Price Test restriction is in effect for a security.

    IEX disseminates a full pre-market spin of Short Sale Price Test Status messages indicating the Rule 201 status of all securities. After the pre-market spin, IEX will use the Short Sale Price Test status message in the event of an intraday status change.

    The IEX Trading System will process orders based on the latest Short Sale Price Test restriction status.

    HTTP request

    GET /deep/ssr-status?symbols=snap
    

    JSON response

    {
      "SNAP": {
        "isSSR": true,
        "detail": "N",
        "timestamp": 1494588094067
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=ssr-status
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols

    Response Attributes

    Key Type
    isSSR boolean
    detail string
    timestamp number

    DEEP System Event

    The System Event message is used to indicate events that apply to the market or the data feed.

    There will be a single message disseminated per channel for each System Event type within a given trading session.

    HTTP request

    GET /deep/system-event
    

    JSON response

    {
      "systemEvent": "S",
      "timestamp": 1494595800005
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=system-event
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Response Attributes

    Key Type Values
    systemEvent string 'O' (Start of messages)

    'S' (Start of system hours)

    'R' (Start of regular market hours)

    'M' (End of regular market hours)

    'E' (End of system hours)

    'C' (End of messages)
    timestamp number

    DEEP Trades

    Trade report messages are sent when an order on the IEX Order Book is executed in whole or in part. DEEP sends a Trade report message for every individual fill.

    HTTP request

    GET /deep/trades?symbols=snap
    

    JSON response

    {
      "SNAP": [
        {
          "price": 156.1,
          "size": 100,
          "tradeId": 517341294,
          "isISO": false,
          "isOddLot": false,
          "isOutsideRegularHours": false,
          "isSinglePriceCross": false,
          "isTradeThroughExempt": false,
          "timestamp": 1494619192003
        }
      ]
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=trades
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols
    last • Parameter is optional
    • Value needs to be a number (i.e 5)
    • Default is 20
    • Maximum of 500

    Response Attributes

    Key Type
    price number
    size number
    tradeId number
    isISO boolean
    isOddLot boolean
    isOutsideRegularHours boolean
    isSinglePriceCross boolean
    isTradeThroughExempt boolean
    timestamp number

    DEEP Trade Break

    Trade break messages are sent when an execution on IEX is broken on that same trading day. Trade breaks are rare and only affect applications that rely upon IEX execution based data.

    HTTP request

    GET /deep/trade-breaks?symbols=snap
    

    JSON response

    {
      "SNAP": [
        {
          "price": 156.1,
          "size": 100,
          "tradeId": 517341294,
          "isISO": false,
          "isOddLot": false,
          "isOutsideRegularHours": false,
          "isSinglePriceCross": false,
          "isTradeThroughExempt": false,
          "timestamp": 1494619192003
        }
      ]
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=trade-breaks
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols
    last • Parameter is optional
    • Value needs to be a number (i.e 5)
    • Default is 20
    • Maximum of 500

    Response Attributes

    Key Type
    price number
    size number
    tradeId number
    isISO boolean
    isOddLot boolean
    isOutsideRegularHours boolean
    isSinglePriceCross boolean
    isTradeThroughExempt boolean
    timestamp number

    DEEP Trading Status

    The Trading status message is used to indicate the current trading status of a security. For IEX-listed securities, IEX acts as the primary market and has the authority to institute a trading halt or trading pause in a security due to news dissemination or regulatory reasons. For non-IEX-listed securities, IEX abides by any regulatory trading halts and trading pauses instituted by the primary or listing market, as applicable.

    IEX disseminates a full pre-market spin of Trading status messages indicating the trading status of all securities. In the spin, IEX will send out a Trading status message with “T” (Trading) for all securities that are eligible for trading at the start of the Pre-Market Session. If a security is absent from the dissemination, firms should assume that the security is being treated as operationally halted in the IEX Trading System.

    After the pre-market spin, IEX will use the Trading status message to relay changes in trading status for an individual security. Messages will be sent when a security is:

    HTTP request

    GET /deep/trading-status?symbols=snap
    

    JSON response

    {
      "SNAP": {
        "status": "T",
        "reason": " ",
        "timestamp": 1494588017674
      }
    }
    

    SSE Streaming Example

    curl --header 'Accept: text/event-stream' https://cloud-sse.iexapis.com/stable/deep?token=YOUR_TOKEN&symbols=twtr&channels=trading-status
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is required
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • Maximum of 10 symbols

    Response Attributes

    Key Type Values
    status string 'H' Trading halted across all US equity markets

    'O' Trading halt released into an Order Acceptance Period (IEX-listed securities only)

    'P' Trading paused and Order Acceptance Period on IEX (IEX-listed securities only)

    'T' Trading on IEX
    reason string Trading Halt Reasons

    'T1' Halt News Pending

    'IPO1' IPO/New Issue Not Yet Trading

    'IPOD' IPO/New Issue Deferred

    'MCB3' Market-Wide Circuit Breaker Level 3 – Breached

    'NA' Reason Not Available


    Order Acceptance Period Reasons

    'T2' Halt News Dissemination

    'IPO2' IPO/New Issue Order Acceptance Period

    'IPO3' IPO Pre-Launch Period

    'MCB1' Market-Wide Circuit Breaker Level 1 – Breached

    'MCB2' Market-Wide Circuit Breaker Level 2 – Breached
    timestamp number

    Last

    Last provides trade data for executions on IEX. It is a near real time, intraday API that provides IEX last sale price, size and time. Last is ideal for developers that need a lightweight stock quote.

    HTTP request

    GET /last?symbols=snap
    

    JSON response

    [
      {
        "symbol": "SNAP",
        "price": 111.76,
        "size": 5,
        "time": 1480446905681
      },
      {
        "symbol": "FB",
        "price": 121.41,
        "size": 100,
        "time": 1480446908666
      },
      {
        "symbol": "AIG+",
        "price": 21.52,
        "size": 100,
        "time": 1480446206461
      }
    ]
    

    Data Weighting

    Free

    Data Timing

    Real-time

    Data Schedule

    9:30am-4pm ET market hours

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is optional
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • When parameter is not present, request returns all symbols
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON
    • Our eligible symbol reference is updated daily. Use these symbols as values in your symbols parameter.

    Response Attributes

    Key Description
    symbol refers to the stock ticker.
    price refers to last sale price of the stock on IEX.
    size refers to last sale size of the stock on IEX.
    time refers to last sale time in epoch time of the stock on IEX.

    Listed Regulation SHO Threshold Securities List In Dev

    The following are IEX-listed securities that have an aggregate fail to deliver position for five consecutive settlement days at a registered clearing agency, totaling 10,000 shares or more and equal to at least 0.5% of the issuer’s total shares outstanding (i.e., “threshold securities”).

    The report data will be published to the IEX website daily at 8:30 p.m. ET with data for that trading day.

    HTTP request

    GET /stock/{symbol}/threshold-securities
    

    JSON response

    [
      {
        "TradeDate": "20171013",
        "SymbolinINET Symbology": "ZIEXT",
        "SymbolinCQS Symbology": "ZIEXT",
        "SymbolinCMS Symbology": "ZIEXT",
        "SecurityName": "ZIEXT Common Stock"
      },
      {...}
    ]
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Path Parameters

    Range Description Source
    date Specific date Daily list data for a specified date in the format YYYYMMDD,if available, or sample. If sample, a sample file will be returned

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can be csv or psv
    • When parameter is not present, format defaults to JSON
    token • Parameter is optional
    • Value is the API token from your IEX user account
    • If you have been permissioned for CUSIP information you’ll receive a CUSIP field, othewise data defaults to exclude CUSIP.

    Response Attributes

    Refer to the Threshold Securities specification for further details

    Listed Short Interest List In Dev

    The consolidated market short interest positions in all IEX-listed securities are included in the IEX Short Interest Report.

    The report data will be published daily at 4:00pm ET.

    HTTP request

    GET /stock/{symbol}/short-interest
    

    JSON response

    [
      {
        "SettlementDate": "20171013",
        "SecurityName": "ZIEXT Common Stock",
        "CurrentShortInterest": 5363,
        "PreviousShortInterest": 5730,
        "PercentChange": -0.064049,
        "AverageDailyVolume": 2113,
        "DaystoCover": 2.54,
        "StockAdjustmentFlag": "N",
        "RevisionFlag": "N",
        "SymbolinINETSymbology": "ZIEXT",
        "SymbolinCQSSymbology": "ZIEXT",
        "SymbolinCMSSymbology": "ZIEXT",
        "NewIssueFlag": "N",
        "CompanyName": "ZIEXT Test Company"
      },
      {...}
    ]
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Path Parameters

    Range Description Source
    date Specific date Daily list data for a specified date in the format YYYYMMDD,if available, or sample. If sample, a sample file will be returned

    Query String Parameters

    Option Details
    format • Parameter is optional
    • Value can be csv or psv
    • When parameter is not present, format defaults to JSON
    token • Parameter is optional
    • Value is the API token from your IEX user account
    • If you have been permissioned for CUSIP information you’ll receive a CUSIP field, othewise data defaults to exclude CUSIP.

    Response Attributes

    Refer to the Short Interest specification for further details

    Stats Historical Daily In Dev

    This call will return daily stats for a given month or day.

    HTTP request

    GET /stats/historical/daily?last=5
    

    JSON response

    [
      {
        "date": "2017-05-09",
        "volume": 152907569,
        "routedVolume": 46943802,
        "marketShare": 0.02246,
        "isHalfday": 0,
        "litVolume": 35426666
      },
      {
        "date": "2017-05-08",
        "volume": 142923030,
        "routedVolume": 39507295,
        "marketShare": 0.02254,
        "isHalfday": 0,
        "litVolume": 32404585
      },
      {
        "date": "2017-05-05",
        "volume": 155118117,
        "routedVolume": 39974788,
        "marketShare": 0.02358,
        "isHalfday": 0,
        "litVolume": 35124994
      },
      {
        "date": "2017-05-04",
        "volume": 185715463,
        "routedVolume": 56264408,
        "marketShare": 0.02352,
        "isHalfday": 0,
        "litVolume": 40634976
      },
      {
        "date": "2017-05-03",
        "volume": 183103198,
        "routedVolume": 50953175,
        "marketShare": 0.025009999999999998,
        "isHalfday": 0,
        "litVolume": 40296158
      }
    ]
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    The /stats/historical/daily endpoint without any parameters will return the last trading day.

    Query String Parameters

    Option Details
    date • Parameter is optional
    • Option 1: Value needs to be in four-digit year, two-digit month format (YYYYMM) (i.e January 2017 would be written as 201701)
    • Option 2: Value needs to be in four-digit year, two-digit month, two-digit day format (YYYYMMDD) (i.e January 21, 2017 would be written as 20170121)
    • Historical data is only available for prior months, starting with January 2014
    last • Parameter is optional
    • Is used in place of date to retrieve last n number of trading days.
    • Value can only be a number up to 90
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    date refers to the trading day.
    volume refers to executions received from order routed to away trading centers.
    routedVolume refers to single counted shares matched from executions on IEX.
    marketShare refers to IEX’s percentage of total US Equity market volume.
    isHalfday will be true if the trading day is a half day.
    litVolume refers to the number of lit shares traded on IEX (single-counted).

    Stats Historical Summary

    HTTP request

    GET /stats/historical?date=201605
    

    JSON response

    [
      {
        "averageDailyVolume": 112247378.5,
        "averageDailyRoutedVolume": 34282226.24,
        "averageMarketShare": 0,
        "averageOrderSize": 493,
        "averageFillSize": 287,
        "bin100Percent": 0.61559,
        "bin101Percent": 0.61559,
        "bin200Percent": 0.61559,
        "bin300Percent": 0.61559,
        "bin400Percent": 0.61559,
        "bin500Percent": 0.61559,
        "bin1000Percent": 0.61559,
        "bin5000Percent": 0.61559,
        "bin10000Percent": 0.61559,
        "bin10000Trades": 4666,
        "bin20000Trades": 1568,
        "bin50000Trades": 231,
        "uniqueSymbolsTraded": 7419,
        "blockPercent": 0.08159,
        "selfCrossPercent": 0.02993,
        "etfPercent": 0.12646,
        "largeCapPercent": 0.40685,
        "midCapPercent": 0.2806,
        "smallCapPercent": 0.18609,
        "venueARCXFirstWaveWeight": 0.22063,
        "venueBATSFirstWaveWeight": 0.06249,
        "venueBATYFirstWaveWeight": 0.07361,
        "venueEDGAFirstWaveWeight": 0.01083,
        "venueEDGXFirstWaveWeight": 0.0869,
        "venueOverallFirstWaveWeight": 1,
        "venueXASEFirstWaveWeight": 0.00321,
        "venueXBOSFirstWaveWeight": 0.02935,
        "venueXCHIFirstWaveWeight": 0.00108,
        "venueXCISFirstWaveWeight": 0.00008,
        "venueXNGSFirstWaveWeight": 0.20358,
        "venueXNYSFirstWaveWeight": 0.29313,
        "venueXPHLFirstWaveWeight": 0.01511,
        "venueARCXFirstWaveRate": 0.97737,
        "venueBATSFirstWaveRate": 0.99357,
        "venueBATYFirstWaveRate": 0.99189,
        "venueEDGAFirstWaveRate": 0.98314,
        "venueEDGXFirstWaveRate": 0.99334,
        "venueOverallFirstWaveRate": 0.98171,
        "venueXASEFirstWaveRate": 0.94479,
        "venueXBOSFirstWaveRate": 0.97829,
        "venueXCHIFirstWaveRate": 0.65811,
        "venueXCISFirstWaveRate": 0.9468,
        "venueXNGSFirstWaveRate": 0.98174,
        "venueXNYSFirstWaveRate": 0.98068,
        "venueXPHLFirstWaveRate": 0.93629
      }
    ]
    

    Data Weighting

    Free

    Data Timing

    End of month

    Data Source(s)

    Investors Exchange

    Examples

    The /stats/historical endpoint without any parameters will return the current month’s stats.

    Query String Parameters

    Option Details
    date • Parameter is optional
    • Value needs to be in four-digit year, two-digit month format (YYYYMM) (i.e January 2017 would be written as 201701)
    • Historical data is only available for prior months, starting with January 2014
    • When parameter is not present, request returns prior month’s data
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    See our stats page for a reference of the keys.

    Stats Intraday

    HTTP request

    GET /stats/intraday
    

    JSON response

    {
      "volume": {
        "value": 26908038,
        "lastUpdated": 1480433817323
      },
      "symbolsTraded": {
        "value": 4089,
        "lastUpdated": 1480433817323
      },
      "routedVolume": {
        "value": 10879651,
        "lastUpdated": 1480433816891
      },
      "notional": {
        "value": 1090683735,
        "lastUpdated": 1480433817323
      },
      "marketShare": {
        "value": 0.01691,
        "lastUpdated": 1480433817336
      }
    }
    

    Data Weighting

    Free

    Data Timing

    Real-time

    Data Schedule

    Regular market hours

    Data Source(s)

    Investors Exchange

    Examples

    Response Attributes

    Key Description
    volume refers to single counted shares matched from executions on IEX.
    symbolsTraded refers to number of symbols traded on IEX.
    routedVolume refers to executions received from order routed to away trading centers.
    notional refers to sum of matched volume times execution price of those trades.
    marketShare refers to IEX’s percentage of total US Equity market volume.
    lastUpdated refers to the last update time of the data in milliseconds since midnight Jan 1, 1970.

    Stats Recent

    This call will return a minimum of the last five trading days up to all trading days of the current month.

    HTTP request

    GET /stats/recent
    

    JSON response

    [
      {
        "date": "2017-01-11",
        "volume": 128048723,
        "routedVolume": 38314207,
        "marketShare": 0.01769,
        "isHalfday": false,
        "litVolume": 30520534
      },
      {
        "date": "2017-01-10",
        "volume": 135116521,
        "routedVolume": 39329019,
        "marketShare": 0.01999,
        "isHalfday": false,
        "litVolume": 29721789
      },
      {
        "date": "2017-01-09",
        "volume": 109850518,
        "routedVolume": 31283422,
        "marketShare": 0.01704,
        "isHalfday": false,
        "litVolume": 27699365
      },
      {
        "date": "2017-01-06",
        "volume": 116680433,
        "routedVolume": 29528471,
        "marketShare": 0.01805,
        "isHalfday": false,
        "litVolume": 29357729
      },
      {
        "date": "2017-01-05",
        "volume": 130389657,
        "routedVolume": 40977180,
        "marketShare": 0.01792,
        "isHalfday": false,
        "litVolume": 33169236
      },
      {
        "date": "2017-01-04",
        "volume": 124428433,
        "routedVolume": 38859989,
        "marketShare": 0.01741,
        "isHalfday": false,
        "litVolume": 31563256
      },
      {
        "date": "2017-01-03",
        "volume": 130195733,
        "routedVolume": 34990159,
        "marketShare": 0.01733,
        "isHalfday": false,
        "litVolume": 34150804
      }
    ]
    

    Data Weighting

    Free

    Data Source(s)

    Investors Exchange

    Examples

    Response Attributes

    Key Description
    date refers to the trading day.
    volume refers to executions received from order routed to away trading centers.
    routedVolume refers to single counted shares matched from executions on IEX.
    marketShare refers to IEX’s percentage of total US Equity market volume.
    isHalfday will be true if the trading day is a half day.
    litVolume refers to the number of lit shares traded on IEX (single-counted).

    Stats Records

    HTTP request

    GET /stats/records
    

    JSON response

    {
      "volume": {
        "recordValue": 233000477,
        "recordDate": "2016-01-20",
        "previousDayValue": 99594714,
        "avg30Value": 138634204.5
      },
      "symbolsTraded": {
        "recordValue": 6046,
        "recordDate": "2016-11-10",
        "previousDayValue": 5500,
        "avg30Value": 5617
      },
      "routedVolume": {
        "recordValue": 74855222,
        "recordDate": "2016-11-10",
        "previousDayValue": 29746476,
        "avg30Value": 44520084
      },
      "notional": {
        "recordValue": 9887832327.8355,
        "recordDate": "2016-11-10",
        "previousDayValue": 4175710684.3897,
        "avg30Value": 5771412969.2662
      }
    }
    

    Data Weighting

    Free

    Data Timing

    End of day

    Data Schedule

    7am ET

    Data Source(s)

    Investors Exchange

    Examples

    Response Attributes

    Key Description
    volume refers to single counted shares matched from executions on IEX.
    symbolsTraded refers to number of symbols traded on IEX.
    routedVolume refers to executions received from order routed to away trading centers.
    notional refers to sum of matched volume times execution price of those trades.

    TOPS

    TOPS provides IEX’s aggregated best quoted bid and offer position in near real time for all securities on IEX’s displayed limit order book. TOPS is ideal for developers needing both quote and trade data.

    For an example of an app that’s using TOPS, see the TOPS viewer app.

    HTTP request

    GET /tops?symbols=snap
    

    JSON response

    [
      {
        "symbol": "SNAP",
        "bidSize": 200,
        "bidPrice": 110.94,
        "askSize": 100,
        "askPrice": 111.82,
        "volume": 177265,
        "lastSalePrice": 111.76,
        "lastSaleSize": 5,
        "lastSaleTime": 1480446905681,
        "lastUpdated": 1480446910557,
        "sector": "softwareservices",
        "securityType": "commonstock"
      },
      {
        "symbol": "FB",
        "bidSize": 200,
        "bidPrice": 120.8,
        "askSize": 100,
        "askPrice": 122.5,
        "volume": 205208,
        "lastSalePrice": 121.41,
        "lastSaleSize": 100,
        "lastSaleTime": 1480446908666,
        "lastUpdated": 1480446923942,
        "sector": "softwareservices",
        "securityType": "commonstock"
      },
      {
        "symbol": "AIG+",
        "bidSize": 0,
        "bidPrice": 0,
        "askSize": 0,
        "askPrice": 0,
        "volume": 3400,
        "lastSalePrice": 21.52,
        "lastSaleSize": 100,
        "lastSaleTime": 1480446206461,
        "lastUpdated": -1,
        "sector": "insurance",
        "securityType": "commonstock"
      }
    ]
    

    Data Weighting

    Free

    Data Timing

    Real-time

    Data Schedule

    9:30am-4pm ET Market hours

    Data Source(s)

    Investors Exchange

    Examples

    Query String Parameters

    Option Details
    symbols • Parameter is optional
    • Value needs to be a comma-separated list of symbols (i.e SNAP,fb)
    • When parameter is not present, request returns all symbols
    format • Parameter is optional
    • Value can only be csv
    • When parameter is not present, format defaults to JSON

    Response Attributes

    Key Description
    symbol refers to the stock ticker.
    bidSize refers to amount of shares on the bid on IEX.
    bidPrice refers to the best bid price on IEX.
    askSize refers to amount of shares on the ask on IEX.
    askPrice refers to the best ask price on IEX.
    volume refers to shares traded in the stock on IEX.
    lastSalePrice refers to last sale price of the stock on IEX. (Refer to the attribution section above.)
    lastSaleSize refers to last sale size of the stock on IEX.
    lastSaleTime refers to last sale time in epoch time of the stock on IEX.
    lastUpdated refers to the last update time of the data in milliseconds since midnight Jan 1, 1970 or -1. If the value is -1, IEX has not quoted the symbol in the trading day.
    sector refers to the sector the security belongs to.
    securityType refers to the common issue type.

    API System Metadata

    Status

    Used to retrieve current system status.

    HTTP Request

    GET /status
    

    JSON response

    {
        "status":"up",
        "version":"BETA",
        "time":1548097469618
    }
    

    Data Weighting

    Free

    Data Timing

    Real-time

    Available Methods

    GET /status

    Notes

    No token required

    Changelog

    The following is a list of running updates to the IEX API.

    v1

    2019-10-14

    2019-10-11

    2019-10-10

    2019-10-01

    2019-09-20

    2019-09-09

    2019-08-15

    2019-08-10

    2019-07-31

    2019-07-18

    2019-07-15

    2019-07-01

    2019-06-14

    2019-06-03

    2019-05-28

    2019-05-16

    2019-05-15

    2019-05-10

    2019-04-30

    2019-04-26

    2019-04-18

    Beta

    2019-04-15

    2019-04-10

    2019-04-09

    2019-03-22

    2019-03-21

    2019-03-20

    2019-03-18

    2019-03-14

    2019-03-13

    2019-03-12

    2019-03-08

    2019-03-07

    2019-03-06

    2019-02-28

    2019-02-27

    2019-02-26

    2019-02-21

    2019-02-20

    2019-02-19

    2019-02-14

    2019-02-12

    2019-02-07

    2019-02-01