Finnhub is a financial data and market intelligence platform providing institutional-grade real-time and historical data for stocks, forex, and crypto. Covering 65,000+ global companies and 30+ years of history, it delivers real-time quotes, OHLCV candles, fundamentals, earnings, insider transactions, analyst estimates, news, and economic indicators — built for investors and fintech developers.
Power end-to-end data operations for your Finnhub API with Nexla. Our bi-directional Finnhub connector is purpose-built for Finnhub, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Finnhub or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Finnhub workflows fast, secure, and fully governed.
Features
Type: API
SourceDestination
Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
To connect Nexla to Finnhub, you will need a Finnhub API key. Finnhub provides a free tier that includes 60 API calls per minute, real-time US stock quotes, company news, basic fundamentals, and more. Paid plans are available for higher rate limits and additional data coverage.
Your API key is displayed directly on the dashboard. Copy this key — it will be entered into Nexla during credential setup.
Your Finnhub API key grants access to all endpoints permitted by your plan tier. Treat your API key as a secret — do not share it publicly or commit it to source control. If your key is compromised, you can regenerate it from the Finnhub dashboard.
Finnhub enforces rate limits based on your subscription plan. The free tier allows 60 API calls per minute. For high-volume or real-time data use cases, review Finnhub's pricing page to determine the plan that best fits your needs.
To create a new Finnhub credential, after selecting the data source type, click the Add Credential tile to open the Add New Credential overlay.
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
Enter your Finnhub API key in the API Key Value field. This is the key you copied from the Finnhub dashboard in Prerequisites. The key is a unique alphanumeric string that identifies your account and authorizes access to the Finnhub API. Finnhub uses API key authentication, and the key is passed as the X-Finnhub-Token HTTP request header on every API call Nexla makes to the Finnhub API.
The API key is stored securely and is used by Nexla to authenticate all requests sent to the Finnhub API on your behalf. Nexla automatically includes the key as the X-Finnhub-Token header, so no additional configuration is needed.
Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source creation and can be selected for use with a new data source.
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Finnhub connector tile, then select the credential that will be used to connect to the Finnhub instance, and click Next; or, create a new Finnhub credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Finnhub API endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.
Basic Financial Report
Returns reported financial statements for a company, including balance sheet, income statement, and cash flow statement data. Use this endpoint to ingest structured financial statement data for fundamental analysis or financial modeling.
This endpoint retrieves all available reported financial statements for the company associated with the credentials. No additional parameters are required — select this endpoint and the data will be fetched automatically.
The response data path is $.data[*], meaning Nexla will treat each reported financial period as a separate record in the resulting Nexset.
Finnhub's financial report data covers global companies. For full details on the fields returned by this endpoint, see the Finnhub Financials Reported documentation.
Insider Sentiment
Returns aggregate insider sentiment metrics for a company, indicating aggregate buying and selling trends among company insiders over time. Use this endpoint to monitor insider sentiment as part of investment research or market signal pipelines.
This endpoint retrieves aggregate insider sentiment data automatically. No additional parameters are required — select this endpoint and the data will be fetched for all available periods.
The response data path is $.data[*], meaning Nexla will treat each sentiment period as a separate record.
Retrieves real-time stock quote data for a specified stock symbol, including the current price, open, high, low, previous close, and price change. Use this endpoint to ingest live price data for individual equities.
Enter the stock ticker symbol in the Symbol field. This is the exchange ticker for the equity you want to retrieve a quote for (for example, AAPL for Apple Inc. or MSFT for Microsoft). This field is required.
The response returns a single JSON object containing the current quote fields. The data path is $, meaning the entire response object is treated as a single record.
Real-time US stock quotes are available on Finnhub's free tier. For additional markets or higher call frequency, review Finnhub's pricing plans. For field definitions, see the Finnhub Quote documentation.
Get Company Profile
Retrieves general company information for a specific company, including name, country, currency, exchange, industry, market capitalization, and logo URL. Use this endpoint to enrich your datasets with company metadata or build company reference tables.
You can look up a company using one of three optional identifiers — provide at least one to return results:
Symbol — The stock ticker symbol (e.g., AAPL). Most commonly used for US and global exchange-listed companies.
ISIN — The International Securities Identification Number (e.g., US0378331005 for Apple). Used for globally unique identification.
CUSIP — The Committee on Uniform Security Identification Procedures identifier, commonly used for US securities (e.g., 037833100 for Apple).
The response returns a single JSON object containing the company profile fields. The data path is $.
Retrieves recent news articles for a specific company filtered by date range. Use this endpoint to ingest company-specific news for sentiment analysis, event detection, or monitoring pipelines.
Enter the stock ticker symbol in the Symbol field (e.g., AAPL). This field is required.
Enter the start date of the news date range in the From field, formatted as YYYY-MM-DD (e.g., 2024-01-01). This field is required.
Enter the end date of the news date range in the To field, formatted as YYYY-MM-DD (e.g., 2024-01-31). This field is required.
The response returns an array of news article objects. The data path is $[*], meaning Nexla will treat each article as a separate record.
Retrieves historical quarterly earnings surprises and EPS (earnings per share) data for a specified company. Use this endpoint to build earnings history datasets or track EPS trends over time.
Enter the stock ticker symbol in the Symbol field (e.g., AAPL). This field is required.
Optionally, enter a maximum number of records to return in the Limit field. When left blank, Finnhub returns all available historical earnings records for the company.
The response returns an array of quarterly earnings objects. The data path is $[*], meaning each earnings period is treated as a separate record.
Each record includes the period, actual EPS, estimated EPS, and surprise values. For full field definitions, see the Finnhub Company Earnings documentation.
Get Insider Transactions
Retrieves insider buy and sell transactions reported to the SEC for a specified stock symbol, with optional date range filtering. Use this endpoint to monitor insider trading activity as part of compliance, research, or investment signal workflows.
Enter the stock ticker symbol in the Symbol field (e.g., AAPL). This field is required.
Optionally, enter a start date in the From field, formatted as YYYY-MM-DD, to filter transactions from a specific date onward.
Optionally, enter an end date in the To field, formatted as YYYY-MM-DD, to filter transactions up to a specific date.
The response data path is $.data[*], meaning Nexla will treat each individual insider transaction as a separate record.
Retrieves general market news articles across multiple categories, including general market news, forex, crypto, and merger and acquisition news. Use this endpoint to build market news feeds or power financial sentiment analysis pipelines.
Optionally, enter a news category in the Category field to filter results. Supported categories are:
general — General market news (default if left blank)
forex — Foreign exchange market news
crypto — Cryptocurrency news
merger — Mergers and acquisitions news
Optionally, enter a minimum news article ID in the Minid field to retrieve only articles with IDs greater than the specified value. This can be used to paginate through results or retrieve only newer articles than a known ID.
The response returns an array of news article objects. The data path is $[*], meaning each article is treated as a separate record.
Returns OHLCV (open, high, low, close, volume) candlestick data for a stock symbol over a specified time range and resolution. Use this endpoint to build historical price datasets for technical analysis, charting, or quantitative modeling.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
Optionally, enter the candlestick resolution in the Candle Resolution field. Supported resolutions are:
1, 5, 15, 30, 60 — Intraday candles in minutes
D — Daily candles
W — Weekly candles
M — Monthly candles
Optionally, enter the start of the time range in the Start Time field as a Unix timestamp (seconds since epoch). For example, 1609459200 represents January 1, 2021 00:00:00 UTC.
Optionally, enter the end of the time range in the End Time field as a Unix timestamp.
The response returns a JSON object containing arrays for each OHLCV field. The data path is $.
Unix timestamps can be generated using online tools or programming libraries. For field definitions and additional details, see the Finnhub Stock Candles documentation.
Get Basic Financial Metrics
Returns key financial metrics for a company, including 52-week high and low prices, P/E ratio, EPS, market capitalization, and other valuation and performance indicators. Use this endpoint to build company screening datasets or enrich financial dashboards.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
Optionally, enter the type of metrics to retrieve in the Metric Type field. Use all to retrieve all available metrics, or specify a category such as:
Returns historical and upcoming earnings release dates, EPS estimates, and actual EPS results for companies across a date range. Use this endpoint to build earnings event calendars, track estimate revisions, or power event-driven trading pipelines.
Optionally, enter the start date of the earnings calendar range in the Start Date field, formatted as YYYY-MM-DD.
Optionally, enter the end date of the earnings calendar range in the End Date field, formatted as YYYY-MM-DD.
Optionally, enter a stock ticker symbol in the Stock Symbol field to filter earnings events for a single company.
Optionally, set the Include International field to true to include international (non-US) stocks in the results, or false (default) to return only US-listed companies.
The response data path is $.earningsCalendar[*], meaning each earnings event is treated as a separate record.
Searches for stock symbols and company names matching a query string. Use this endpoint to build symbol lookup tools, validate ticker symbols, or populate reference datasets with symbol and company name mappings.
Optionally, enter a search query string in the Search Query field. This can be a partial company name or ticker symbol (e.g., Apple or AAP).
Optionally, enter an exchange code in the Exchange field to filter results to a specific exchange (e.g., US for US exchanges, L for London Stock Exchange).
The response data path is $.result[*], meaning each matching symbol result is treated as a separate record.
Retrieves analyst price target consensus data for a stock, including the high, low, mean, and median price targets from analyst coverage. Use this endpoint to incorporate sell-side analyst targets into investment research or screening workflows.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
The response returns a single JSON object containing the consensus price target fields. The data path is $.
Returns a list of peer company ticker symbols for a given stock, based on the company's country of domicile and GICS (Global Industry Classification Standard) sub-industry classification. Use this endpoint to build peer comparison datasets or populate sector analysis workflows.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
The response returns an array of peer ticker symbol strings. The data path is $[*], meaning each peer symbol is treated as a separate record.
Peer groupings are based on GICS sub-industry classification and may include both domestic and international peers. For more details, see the Finnhub Company Peers documentation.
Get EPS Consensus Estimates
Retrieves earnings per share (EPS) consensus estimates for a company, filterable by frequency (annual or quarterly). Use this endpoint to track forward-looking EPS estimates for fundamental analysis or earnings forecast pipelines.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
Optionally, enter the estimate frequency in the Frequency field:
annual — Annual EPS consensus estimates
quarterly — Quarterly EPS consensus estimates
The response data path is $.data[*], meaning each estimate period is treated as a separate record.
Returns a list of fund and institutional investors holding shares in a company, sorted by shares held in descending order. Use this endpoint to analyze institutional ownership concentration, track changes in fund positions, or build ownership dashboards.
Optionally, enter the stock ticker symbol in the Stock Symbol field (e.g., AAPL).
Optionally, enter the maximum number of ownership records to return in the Result Limit field. When left blank, Finnhub returns all available ownership records.
The response data path is $.data[*], meaning each institutional holder is treated as a separate record.
Retrieves upcoming and recent IPO (Initial Public Offering) events, including the expected date, exchange, price range, and number of shares offered. Use this endpoint to build IPO tracking pipelines or monitor new listings for investment research.
Optionally, enter a start date in the Start Date field, formatted as YYYY-MM-DD, to filter IPO events from a specific date onward.
Optionally, enter an end date in the End Date field, formatted as YYYY-MM-DD, to filter IPO events up to a specific date.
The response data path is $.ipoCalendar[*], meaning each IPO event is treated as a separate record.
Returns OHLCV candlestick data for a forex currency pair over a specified time range and resolution. Use this endpoint to ingest historical foreign exchange price data for currency analysis, algorithmic trading, or reporting.
Optionally, enter the forex symbol pair in the Forex Symbol field. Finnhub uses the format EXCHANGE:PAIR (e.g., OANDA:EUR_USD for the Euro/US Dollar pair on OANDA).
Optionally, enter the candlestick resolution in the Candle Resolution field. Supported values are:
1, 5, 15, 30, 60 — Intraday candles in minutes
D — Daily, W — Weekly, M — Monthly
Optionally, enter the start of the time range in the Start Timestamp field as a Unix timestamp (seconds since epoch).
Optionally, enter the end of the time range in the End Timestamp field as a Unix timestamp.
The response returns a JSON object containing OHLCV arrays. The data path is $.
Use the List Forex Symbols endpoint to discover the available forex symbols for a given exchange. For field definitions, see the Finnhub Forex Candles documentation.
Get Crypto Candlestick Data
Returns OHLCV candlestick data for a cryptocurrency symbol over a specified time range and resolution. Use this endpoint to ingest historical crypto price data for trading analysis, portfolio monitoring, or backtesting.
Optionally, enter the cryptocurrency symbol in the Crypto Symbol field. Finnhub uses the format EXCHANGE:PAIR (e.g., BINANCE:BTCUSDT for Bitcoin/USDT on Binance).
Optionally, enter the candlestick resolution in the Candle Resolution field. Supported values are:
1, 5, 15, 30, 60 — Intraday candles in minutes
D — Daily, W — Weekly, M — Monthly
Optionally, enter the start of the time range in the Start Timestamp field as a Unix timestamp (seconds since epoch).
Optionally, enter the end of the time range in the End Timestamp field as a Unix timestamp.
The response returns a JSON object containing OHLCV arrays. The data path is $.
Use the List Crypto Symbols endpoint to discover available symbols for a given exchange. For field definitions, see the Finnhub Crypto Candles documentation.
List Crypto Symbols
Returns the list of all available cryptocurrency symbols for a given exchange. Use this endpoint to discover tradable crypto pairs on a specific exchange, or to build a reference dataset of supported symbols before configuring candlestick or price data sources.
Optionally, enter the exchange name in the Exchange field (e.g., BINANCE, COINBASE). Use the List Crypto Exchanges endpoint to retrieve the full list of supported exchange names.
The response returns an array of symbol objects. The data path is $[*], meaning each symbol entry is treated as a separate record.
Returns the list of all available forex symbols for a given exchange. Use this endpoint to discover currency pairs supported on a specific forex exchange before configuring forex candlestick or rate data sources.
Optionally, enter the exchange name in the Exchange field (e.g., OANDA, FXCM). Use the Retrieve Forex Rates endpoint to discover available exchange and currency codes.
The response returns an array of symbol objects. The data path is $[*], meaning each symbol entry is treated as a separate record.
Retrieves a time-series of economic indicator data by economic code (e.g., GDP, CPI, unemployment rate). Use this endpoint to ingest macroeconomic data for economic analysis, forecasting models, or enriching market datasets with macroeconomic context.
Optionally, enter the economic indicator code in the Code field. Use the List Economic Codes endpoint to retrieve the full catalog of available codes. Examples include:
MA-USA-656880 — US GDP
MA-USA-...CPI — US Consumer Price Index
The response returns the data path $ containing the full time-series response object.
Use the List Economic Codes endpoint first to find the correct code for your desired indicator. For more details, see the Finnhub Economic Data documentation.
Retrieve ETF Holdings
Retrieves the holdings and constituent weights for an ETF (Exchange-Traded Fund). Use this endpoint to analyze ETF composition, track position changes over time, or build ETF transparency dashboards.
Optionally, enter the ETF ticker symbol in the Symbol field (e.g., SPY for the SPDR S&P 500 ETF or QQQ for the Invesco QQQ Trust).
The response data path is $.holdings[*], meaning each individual holding is treated as a separate record.
Each record includes the security name, symbol, ISIN, CUSIP, and weighting within the ETF. For field definitions, see the Finnhub ETF Holdings documentation.
Retrieve ETF Profile
Retrieves profile and metadata for an ETF, including the fund name, description, asset class, expense ratio, and total assets under management. Use this endpoint to build ETF reference data or enrich ETF holding datasets with fund-level metadata.
Optionally, enter the ETF ticker symbol in the Symbol field (e.g., SPY).
The response returns a single JSON object containing the ETF profile fields. The data path is $.
Retrieves all supported forex exchange rates for a specified base currency. Use this endpoint to ingest current exchange rate data for currency conversion pipelines, financial reporting, or multi-currency data normalization.
Optionally, enter the base currency code in the Base field using the standard ISO 4217 three-letter currency code (e.g., USD for US Dollar, EUR for Euro, GBP for British Pound).
The response returns a JSON object containing exchange rates for all supported currencies relative to the base currency. The data path is $.
Retrieves aggregate technical indicator values for a stock symbol and resolution over a configurable time range. Use this endpoint to incorporate computed technical signals (such as moving averages, RSI, or MACD) directly into Nexla data flows for quantitative analysis or trading signal pipelines.
Enter the stock ticker symbol in the Symbol field (e.g., AAPL). This field is required.
Enter the time resolution in the Resolution field. This field is required. Supported values are:
1, 5, 15, 30, 60 — Intraday in minutes
D — Daily, W — Weekly, M — Monthly
Enter the start of the data range in the From (UNIX Timestamp) field as a Unix timestamp in seconds (e.g., 1609459200 for January 1, 2021). This field is required.
Enter the end of the data range in the To (UNIX Timestamp) field as a Unix timestamp in seconds. This field is required.
Enter the technical indicator name in the Indicator field. This field is required. Common indicators include:
sma — Simple Moving Average
ema — Exponential Moving Average
rsi — Relative Strength Index
macd — Moving Average Convergence Divergence
adx — Average Directional Index
The response returns a JSON object. The data path is $.
Retrieves historical dividend data for a stock symbol over a specified date range, including dividend amounts, declaration dates, payment dates, and record dates. Use this endpoint to build dividend history datasets for income analysis, portfolio yield calculations, or total return modeling.
Optionally, enter the stock ticker symbol in the Symbol field (e.g., AAPL).
Enter the start date of the dividend history range in the From Date field, formatted as YYYY-MM-DD. This field is required.
Enter the end date of the dividend history range in the To Date field, formatted as YYYY-MM-DD. This field is required.
The response returns an array of dividend event objects. The data path is $[*], meaning each dividend event is treated as a separate record.
For field definitions (amount, adjustedAmount, payDate, recordDate, declarationDate, etc.), see the Finnhub Dividends documentation.
List Crypto Exchanges
Returns the list of all supported cryptocurrency exchanges available through the Finnhub API. Use this endpoint to discover which exchanges you can use when configuring cryptocurrency candlestick or symbol data sources.
No additional parameters are required for this endpoint. Select it from the endpoint menu, and Nexla will automatically fetch the complete list of supported exchanges.
The response returns a JSON object. The data path is $.
Returns the complete catalog of all available economic data codes, including country, category, and description for each indicator. Use this endpoint to discover the correct code to use with the Retrieve Economic Data endpoint.
No additional parameters are required for this endpoint. Select it from the endpoint menu, and Nexla will automatically fetch the full economic code catalog.
The response returns a JSON object. The data path is $.
Returns the current list of constituent ticker symbols for a major stock index, such as the S&P 500, NASDAQ 100, or Dow Jones Industrial Average. Use this endpoint to build index membership datasets, track index composition changes, or populate universe-of-securities filters for screening workflows.
Enter the index symbol in the Index Symbol field. This field is required. Common index symbols include:
^GSPC — S&P 500
^NDX — NASDAQ 100
^DJI — Dow Jones Industrial Average
The response data path is $.constituents[*], meaning each constituent symbol is treated as a separate record.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.
Finnhub data sources can also be manually configured to ingest data from any valid Finnhub API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or sources that require custom date range parameters or additional query string values. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method (GET for all Finnhub endpoints), endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.
All Finnhub API endpoints use the base URL https://finnhub.io/api/v1/ followed by the endpoint path and query parameters. The Finnhub API key is automatically included in requests via the credential configured for this source — you do not need to append it manually to the URL or add the X-Finnhub-Token header yourself. Date/time macros are particularly useful for endpoints that accept from/to date range parameters (most Finnhub date fields use YYYY-MM-DD format), and many endpoints nest their data under a top-level key rather than returning a bare array — for example, $.data[*], $.earningsCalendar[*], $.ipoCalendar[*], or $.constituents[*]. For the complete list of Finnhub endpoints and their URL formats, see the Finnhub API documentation.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Finnhub data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.