Products Overview

I'm Looking For...

Here is a rundown of what types of data are included in our products, so you can find the specific data you’re looking for.

Fundamentals

  • Standardized financial statements
  • As-reported financial statements
  • Hundreds of financial metrics and ratios
  • Company reference and metadata
  • Raw 10-Q, 10-K, 8-K, 20-F, and 40-F text
  • Searchable 10-Q and 10-K notes
  • Company news
  • Insider transactions and ownership
  • Institutional ownership
  • Upcoming and historical IPOs
  • Aggregate sector and industry data
  • Economic data

Market Data

  • Real-time and delayed options prices
  • Real-time snap and streaming equity prices
  • 15-minute delayed snap equity prices
  • Historical intraday and EOD prices for stocks, ETFs, and options
  • Stock technicals

Data Sourcing

Note: this data is available through our trusted third parties. Select feeds are available through the Intrinio API.

International Market Data

  • Real-time and delayed prices
  • Historical tick, intraday, and end of day prices

Options

  • Global real-time, delayed, and historical prices and Greeks

News

  • Global real-time and historical news, press releases, and research
  • Global news indicators, indexing, scoring, and sentiment

Mutual Funds

  • US current and historical pricing and corporate actions data
  • US holdings, reference, and metadata

Sentiment/Research

  • Global executive contacts and compensation
  • Advanced healthcare insights and analytics
  • US and Canadian analyst ratings and price targets
  • Forecasting and valuation reports
  • News and blogger ratings and sentiment
  • ESG ratings
  • NLP generated insights and predictions from earnings releases and the SEC 10-K statement
  • Real-time trade sentiment
  • Machine learning stock ranking and indicator scoring
  • Crowdsourced value prediction index for price movements
  • Forex price, volume, and trading analytics and sentiment data

Indices/Cryptocurrencies

  • Global real-time and historical prices

ETFs

  • Global real-time, delayed, and historical prices
  • Global metadata, reference data, and corporate actions
  • US and Canadian current and historical holdings
  • US and Canadian current returns and analytics
  • Forecasting and valuation reports
  • Real-time and historical sentiment

Estimates

  • US and Canadian historical and forward EPS and revenue estimates
  • Global dividend forecasts and estimates

Corporate Actions

  • US and Canadian historical and forward EPS and revenue estimates
  • Global dividend forecasts and estimates

Events/Calendar/Economic

  • Global historical and forward economic series and calendar data
  • Global historical and forward market holidays and timings
  • Global historical and forward corporate events

Fixed Income

  • Global real-time, delayed, and historical prices
  • Global evaluated pricing and reference data
  • Municipal and corporate bond pricing modeling and analytics
  • Pre and post trade corporate bond data
  • Broker quotes from 400+ global dealers

Forex

  • Real-time and delayed prices
  • Historical tick, intraday, and end of day prices
  • Price, volume, and trading analytics and sentiment data

Don’t see what you need listed? Request a consultation with our team or contact your customer success manager to discuss our data sourcing services.

Companies & Securities

Companies

An Intrinio "company" represents a public corporation traded on a US exchange. In order to show up in our API, a company must meet the following criteria:

  • Publicly traded on a US exchange
  • Required to file a 10-K form with the SEC

Companies that will not show up in the API include:

  • Privately-held companies that do not trade on a US exchange
  • International companies that do not trade on a US exchange
  • Companies that are not required to file a 10-K form with the SEC

The only caveat to this is that we are starting to add ADRs/foreign issuers, which file 20-F and 40-F forms.

A company will have a name and trading symbol/ticker that corresponds to its present representation in the markets.

Our company master is maintained by our data quality team, so if you spot any discrepancies, you can file a ticket from your account page.

Securities

An Intrinio "security" is a financial instrument (like a stock or ETF) that traded on a stock exchange at a point in time. Here are some finer points on our security dataset.

  • All Intrinio securities have stock prices associated with them - we do not keep records of securities that have never traded, for example.
  • An Intrinio company can and typically does have many Intrinio securities - even within the US.
  • An Intrinio company can have multiple Intrinio securities that traded at different times. This is typically because the company's trading symbol changed or the security started trading on a different exchange. When this happens:
  • We create a new Intrinio security, even though the new security represents the shares of the same stock class in the same company - this is an important distinction.
  • We copy stock prices from the old security over to the new one, so there is a continuity of prices for those shares.
  • The old security becomes inactive and is no longer preferred for symbol lookups in the API (since another security may assume its old ticker symbol, now being freed up).
  • You can still find the old security in the API, which is useful for backtesting stock price data in a point-in-time fashion.
  • We do this so that our security master has point-in-time integrity, meaning you can pick any point in time and see which symbols traded on which exchanges, and which companies they represented - at that point in time. This may be a source of confusion for users who assume all of our securities are active.

If you have further questions, please feel free to chat with us at intrinio.com or reach out to your customer success manager.

How To Use The Historical Data Endpoint

This is a primer on when to use the frequency and type parameters when pulling data for the historical data endpoint, with API examples.

What Is The Historical Data Endpoint?

The historical data endpoint is incredibly flexible, as you're able to utilize that endpoint to bring in data across almost of our products. As such, it's important to know when to use the Frequency parameter, vs. when to use the Type parameter.

When Do I Use The Frequency Parameter?

The Frequency parameter should be used only for non-fundamental items that are updated at a frequency higher than quarterly. Examples include pricing data and marketcap.

For example, to return the historical weekly marketcap for a security, run this in the API:

https://api-v2.intrinio.com/historical_data/AAPL/marketcap?frequency=weekly

Along with weekly, you also have the options for daily, monthly, quarterly, and yearly frequencies.

If no frequency is specified, the endpoint will by default return the highest frequency available for that item. So for marketcap, the below would return the historical daily values:

https://api-v2.intrinio.com/historical_data/AAPL/marketcap

When Do I Use The Type Parameter?

The Type parameter should be used strictly for fundamental items directly from the 10-K and 10-Qs. Examples include total revenue, debt, and cash from operating activities.

For example, to return the historical QTR total revenue from the 10-Qs, run this in the API:
https://api-v2.intrinio.com/historical_data/AAPL/totalrevenue?type=QTR

Along with QTR, you also have the options for FY, TTM, and YTD types.

If no type is specified, the endpoint will by default return the quarterly TTM values for income statement and cash flow statement items, and QTR values from the balance sheet. So, for total revenue, the below would return the quarterly TTM values:

https://api-v2.intrinio.com/historical_data/AAPL/totalrevenue

There is an exception to the type parameter: if you specify a frequency with a fundamental item, such as total revenue, it will default to return the TTM values at the specified frequency. So the below would return the quarterly TTM values, same as if you did not specify a Type or Frequency:

https://api-v2.intrinio.com/historical_data/AAPL/totalrevenue?frequency=quarterly

Security Screening Endpoint Samples

The security screening request uses a POST method in the WEB API.

What is the security screening and why does it use a POST request?

Screen securities allows you to filter the securities you receive by logic you set yourself. As explained in our screener documentation, the construction of operators, clauses, and fields make up the logic that hones down the data to a more manageable and relevant set that is easier to work with. The screen securities endpoint can be used in any of our SDKs, as well as the Web API and CSV download.

The POST method is not conducive to in-browser data evaluation using the URL Web API access, but there is good reason for its use. POST is mostly used in RESTful APIs as a data addition and modification method that allows the creation of data subsections. Thus the POST method is able to parse JSON formatting, which enables it to use logic to sort data by its contents. Intrinio utilizes this functionality of the method while preventing data modification to enable fast, clean retrieval of data that meets logistic criteria.

Our API Explorer enables you to sample the data and some of the possible parameters within the website using either your sandbox or production keys, and gives you the URL created using those parameters. The POST method is performed directly on the page and the output is shown directly below.

Use cases for security screening: supported SDKs

The following code snippets are examples of how to format the logic parameter and can be placed into a security screen program to filter the response. The language and description indicate where to place the logic in the sample programs. In every example, a request is being made to find securities where,

the total common equity = 100000000
or
the next earning year is 2017.

  • Javascript - after defining logic in the opts section of the program
  • Python - logic
  • Java - logic (added after logic defined as a new security screen group)
  • Ruby - logic
  • C# - logic

Use cases for security screening: Web API using Postman

Postman makes any type of HTTP request easy with its customization options. Since screen securities uses the POST method to parse a JSON body to format the query, all that's needed is to change the request type and input the parameters to the request body.

Changing the request type in Postman with:

Status Tag: Active, Inactive, Null

The entity_status tag can generally be summarized like so:

  • Active: Company is actively trading and financial filings are submitted quarterly to the SEC.
  • Inactive: Generally the company is either no longer trading or they are not trading publicly. Many times their ticker is reused by another entity.
  • Null: Newly added company (think IPOs) that we haven't received security data on.

This can lead to some confusion when there are seemingly different responses between the company and security endpoints (i.e. companies/stock_exchange = NULL when securities/stock_exchange_mic = 'XNAS').

The most consistent way to determine the exchange is to use the security endpoint, which makes sense as users may require securities for stocks traded outside the US, in which case the stock exchange tag on the company endpoint wouldn't be the same. For all new companies, we have a process to ensure the primary security is mapped to the correct company.

Another way to think about it is the company tag for Stock Exchange is somewhat a legacy tag that can be useful, but generally the security is the most accurate no matter what exchange you are interested in analyzing.