PREVIEW · Proposed endpoints and dated plan snapshot · Not ready for public launch
navquote.
Menu
Documentation / API reference

The right endpoint.
The details to use it.

A focused map of 20 documented operations, their inputs and the checks that matter when you build an integration.

Contract reference: curated from the API v2.4.0 OpenAPI snapshot and existing integration documentation, reviewed September 27, 2026. Neutral hostnames remain pending validation; this directory describes documented capabilities, not a live availability test.

Set the base once. Keep credentials private.

REST examples use NAVQUOTE_API_BASE and Authorization: Bearer $API_KEY from the quickstart environment. POST requests with a JSON body need Content-Type: application/json. The SSE route belongs to the streaming host, not the REST base.

Parameter names below come from the local API contract. Field availability and account access can vary. Use small requests to inspect the actual response before scaling a workload.

Quotes & historical candles

Use a quote for the latest available snapshot; use OHLCV when each observation must represent a candle interval.

GET/api/quote/{symbol}
Inputs
session; fields=all, price, enhanced, or a comma-separated list
Use it well
Read the quote under data.data. Check lp_time, currency_code and current_session alongside lp.
POST/api/quote/batch
Inputs
JSON: symbols (up to 10), session, fields
Use it well
Read data.total, data.successful and data.failed, then inspect each item in data.data. An outer success does not replace per-symbol checks.
GET/api/price/ohlcv/{symbol}
Inputs
timeframe, range, from or to, adjustment, strictTo
Use it well
Standard candles. range is a candle count; from takes precedence over to. Map max/min to chart high/low fields.
GET/api/price/{symbol}
Inputs
timeframe, range, from or to, type, adjustment
Use it well
Supports Japanese, HeikinAshi and Range chart types. Omitted type can select synthetic candles; use the OHLCV endpoint for standard market candles.

Find the intended instrument

A ticker can identify different listings. Resolve the exchange, currency and instrument type before requesting data.

GET/api/search/market/{query}
Inputs
query: name, ticker, ISIN or CUSIP; filter; exchange; hl=0
Use it well
Inspect data.markets. An EXCHANGE:SYMBOL query supplies its own exchange filter; the separate exchange parameter is then ignored.
GET/api/symbols
Inputs
q, exchange, market, sector, type, is_primary, limit, offset
Use it well
Catalog lookup with pagination. limit defaults to 50 and is capped at 1000. Read data.total and has_more; a catalog entry is not a quote entitlement.

Screen & compare instruments

Discover field names and supported operations before constructing a scan. A preset chooses returned fields; it does not define an investment strategy.

GET/api/screener/presets
Inputs
asset_type: stock, crypto, etf, bond, cex or dex
Use it well
Use returned preset IDs in preset_fields on the matching scan endpoint. Omitted asset_type selects stock presets.
GET/api/screener/filter-options
Inputs
asset_type, lang, optional id
Use it well
Inspect filter definitions, operations and enum values rather than guessing column names or category values.
POST/api/screener/scan
Inputs
JSON: market, range, preset_fields, extra_fields, filters, sort
Use it well
Stock scans. range is [start, endExclusive], so [0, 50] selects a page of up to 50 rows. Other assets use their own scan routes.
GET/api/ta/{symbol}
Inputs
Exchange-qualified symbol
Use it well
Read per-timeframe All, MA and Other summary values. Daily TA uses the key 1D; historical candles use the timeframe parameter D.

Company, fund & options context

Use dedicated endpoints for nested research data. Adding enhanced quote fields does not return every related dataset.

GET/api/market-data/{symbol}/company
Inputs
Company symbol
Use it well
Retrieve company identity, industry, country and exchange information for an instrument detail page.
GET/api/market-data/{symbol}/financials-annual
Inputs
Company symbol
Use it well
Latest-year balance sheet, income statement and cash flow data. Inspect the reported period and units before comparing companies.
GET/api/etf/{symbol}
Inputs
ETF symbol; limit (default 20, maximum 100 holdings)
Use it well
Retrieve AUM, NAV, expense ratio and top holdings. This is different from finding ETFs related to a company.
GET/api/options/{symbol}
Inputs
Underlying symbol; optional expiration
Use it well
Discover expirations, strikes and contract codes. Request an individual contract quote separately through the quote endpoint.

News & scheduled events

Attach context to a watchlist or research screen using the same instrument identity and explicit time windows.

GET/api/news
Inputs
symbol, lang, market, market_country, optional sector
Use it well
Filter headlines by instrument or market. Combining an unrelated sector and symbol can exclude relevant results.
GET/api/calendar/earnings
Inputs
from, to (Unix seconds); market (comma-separated)
Use it well
Select earnings events within a window no longer than 40 days. Split longer periods into separate requests.
GET/api/calendar/economic
Inputs
from, to (Unix seconds); market
Use it well
Retrieve economic events for a window no longer than 40 days. Keep event timing distinct from quote timestamps.

Streaming & agent credentials

Keep the account API key on your server. The stream and MCP interfaces use purpose-specific tokens.

POST/api/token/generate
Inputs
Authenticated request with JSON body {}
Use it well
Read success, token, expiresAt, wsUrl and sseUrl. The expiration example uses Unix milliseconds; lifetime depends on the plan.
GET/sse/stream
Inputs
Streaming host; token; comma-separated symbols; type=quote or price
Use it well
Consumes a streaming JWT. Parse the JSON type inside each SSE message; a connected event is not a market update.
POST/api/mcp/generate
Inputs
Authenticated request with JSON body {}
Use it well
Read the MCP JWT, expiration, mcpUrl and client configuration. This token is separate from a streaming token and the long-lived API key.

Two requests to build on.

Resolve a primary listing

Use a narrow catalog query, inspect the returned identifier and currency, then pass the chosen symbol to a quote or OHLCV request.

CATALOG LOOKUP
Requires the environment from the quickstart. A matching listing does not prove market-data access.

Find liquid large-cap stock candidates

This documented scan body filters for market capitalization of at least 10 billion and volume of at least 1 million, sorted by market capitalization. Inspect the returned field definitions and units. These are example thresholds, not a trading recommendation.

POST /api/screener/scan · REQUEST BODY
Discover supported fields and filter operations before adapting this stock scan to another asset type.

Send the body to POST /api/screener/scan with your server-side API key. Use /api/screener/crypto/scan, /api/screener/etf/scan, /api/screener/bond/scan, /api/screener/cex/scan or /api/screener/dex/scan for the corresponding asset family.

Check the envelope before the data.

  1. Check the HTTP status and parse the response format before reading JSON properties.
  2. For endpoints with a success envelope, check it independently of HTTP 200. Use the returned msg or error information when available.
  3. Check each batch item. Keep a failed symbol separate from successful or stale results.
  4. Preserve timestamps, currency, nulls and empty arrays. Missing data is different from a numeric zero.
  5. For streams, distinguish a connection or subscription acknowledgement from an actual update.

See request troubleshooting, quote field selection and the OHLCV response shape.

Start with a small, inspectable request.

One account for API keys, usage and subscriptions.

Get API Key

Continue to our shared account console.