ETF daily figures

API Enterprise

Every covered fund's net asset value, shares outstanding, net assets and daily flow for one date, sourced from the issuer or the listing exchange rather than a vendor feed. One request returns the whole region for the day.

Built for the quant desk loading a daily table: a single call replaces a per-fund fan-out, the response is uncharged (no credits), every row carries the fund identity block, and the since parameter turns the endpoint into an incremental feed.

Provenance is a column, not a footnote. Each figure says whether the issuer reported it, ORTEX derived it, or a vendor backfill supplied it, because a share count derived from rounded assets is a different quality of number from one the issuer published, and your aggregation may want to weight them differently.

Available Data Points:

  • Ortex Fund Id: Stable ORTEX identifier for the fund or share class. Key on this.
  • Ticker: Listing ticker, as the issuer states it. Reused across venues; not unique on its own.
  • ISIN: International Securities Identification Number of the share class, where the market has one.
  • Exchange: Listing venue as the issuer states it (a MIC where given, a venue name otherwise).
  • Country: ISO-2 code of the listing country.
  • Date: The date the figures are for, as the issuer dates them (YYYY-MM-DD).
  • NAV: Net asset value per share, in the row's currency.
  • Shares Outstanding: Shares (or units) in issue at the close.
  • Net Assets: Total net assets of the share class, in the row's currency.
  • Flow: NAV times the change in shares outstanding since the previous observation, in the row's currency. Null when the previous observation is missing or unusable - distinct from zero.
  • Currency: ISO 4217 code the figures are stated in.
  • Data Source: The issuer or exchange adapter that produced the row.
  • NAV Origin / Shares Origin / Assets Origin: reported (by the issuer), derived_assets (net assets divided by NAV), derived_basket (from the creation basket) or vendor (a vendor backfill).
  • Updated At: When the row was last written (ISO 8601, UTC). Feed the largest value back as since.

Region and date

Use region to select the listing region (a region name, an ISO-2 country code, or "ALL"; defaults to US) and date for the day. The default is yesterday, the latest date whose figures are complete: issuers publish a day's NAV after the close, and some publish the next morning, so today is never whole. A date with no rows (a weekend, a holiday) returns an empty result rather than sliding to the previous day, because a figure dated to the wrong day is worse than a gap.

Incremental pulls

Pass since with the largest updatedAt from your last pull to receive only rows written after it. With since and no date, the response spans every date, so an issuer's restatement of an earlier day reaches you; add date to confine it to one day. Rows are ordered by fund and date, so page through the whole result before advancing your watermark.

Share classes

A share class row and its parent fund row can both appear for the same date. Consult the funds endpoint's shareClassOf before summing net assets across rows.

Try it out! You can test the API with the trial key TEST. Simply include it in your request headers; either here, or add the header "Ortex-Api-Key": "TEST" to your http request.

Trial key restrictions: Trial keys may be limited to a specific date range and set of regions. Requests outside the allowed regions or entirely outside the allowed date range are rejected; a date window that partially overlaps the allowed range is trimmed to it, reported in meta.restriction.

Get full access! Contact [email protected]

Query Params
string
Defaults to US

Which instruments to return: a region name, a two-character ISO-2 country code, or "ALL" for the whole covered universe. Defaults to "US". An unrecognized value returns 400 invalidRegion.

date

The single date to return data for (defaults to the latest available). Format: YYYY-MM-DD.

date-time

Return only rows whose own timestamp is after this instant, for incremental pulls: updatedAt on snapshot endpoints, publishedAt on content feeds. ISO 8601; a value with no timezone offset is read as UTC. Feed back the largest such timestamp you have already stored. On a snapshot endpoint, when since is supplied and date is not, the response spans every date rather than the default day, so a restated figure for an earlier date reaches you. A value that is not a timestamp returns 400 invalidSince.

integer

Page number within the paginated result set. Must be >= 1. Defaults to 1.

integer

Number of rows per page. The default and the maximum allowed depend on the API tier; a value above the tier maximum is rejected with 400 invalidPageSize.

string
enum
Defaults to json

Response format. "json" (default) or "csv".

Allowed:
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/csv