Finage ET Fs API
The ETFs API from Finage — 3 operation(s) for etfs.
The ETFs API from Finage — 3 operation(s) for etfs.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/finage-etfs-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Finage Market Data ET Fs API
description: Finage is a real-time and historical market data provider covering US and global stocks, forex, cryptocurrencies, indices, ETFs, bonds, and company fundamentals. This OpenAPI was generated by API Evangelist from Finage's own machine-readable docs database (https://api.finage.co.uk/op/v1/endpoints/list — the same JSON the docs at https://finage.co.uk/docs/api render); every path, parameter, and example comes from that source. All endpoints are read-only GET requests authenticated with an apikey query parameter. Responses must be requested with gzip Accept-Encoding (the API returns 406 "GZip compression required" otherwise).
version: 1.0.0
contact:
name: Finage Support
email: support@finage.co.uk
url: https://finage.co.uk
x-apievangelist:
generated: '2026-07-22'
method: generated
source: https://api.finage.co.uk/op/v1/endpoints/list
servers:
- url: https://api.finage.co.uk
security:
- apiKey: []
tags:
- name: ETFs
paths:
/last/etf/{symbol}:
get:
operationId: cfdEtfLastPrice
summary: CFD ETF Last Price
description: You can get the last ETFs price for a symbol with this endpoint.
tags:
- ETFs
parameters:
- name: symbol
in: path
required: true
description: ETF symbol that you want to get prices
schema:
type: string
responses:
'200':
description: CFD ETF Last Price response.
content:
application/json:
schema:
type: object
properties:
symbol:
type: string
description: Symbol of the ETF
price:
type: number
description: Last price of the ETF
timestamp:
type: integer
format: int64
description: Last update [ms]
example:
symbol: QQQ
price: 319.1413
timestamp: 1614717768911
'401':
$ref: '#/components/responses/Unauthorized'
/agg/etf/{symbol}/{time}/{from}/{to}:
get:
operationId: cfdEtfMarketAggregatesApi
summary: CFD ETF Market Aggregates API
description: With the CFD ETF Market Aggregates API, you can get the tick bars of the ETF (Exchange Traded Fund) market.
tags:
- ETFs
parameters:
- name: symbol
in: path
required: true
description: Symbol of the ETF
schema:
type: string
- name: time
in: path
required: true
description: Size of the time. [1min, 5min, 15min, 30min, 45min, 1h, 2h, 4h, 1day, 1week, 1month]
schema:
type: string
- name: from
in: path
required: true
description: Start date [yyyy-MM-dd]
schema:
type: string
- name: to
in: path
required: true
description: End date [yyyy-MM-dd]
schema:
type: string
- name: limit
in: query
required: false
description: Limit of the results. Default is 100, maximum allowed limit is 5000. Please set a limit if you are using the API in the production.
schema:
type: string
- name: sort
in: query
required: false
description: You can sort the results by timestamp. asc will return ascending results oldest to newest, desc will return descending results newest to oldest. Default is asc.
schema:
type: string
- name: date_format
in: query
required: false
description: 'Choose date format: ''dt'' for datetime or ''ts'' for timestamp. [Default: timestamp]'
schema:
type: string
- name: dbt_filter
in: query
required: false
description: Daily-based time filter. You can allow the time filters to filter daily based. Otherwise, the filter will only trim the start and end of the output. Default is false.
schema:
type: string
- name: st
in: query
required: false
description: Start time in UTC. (Eg. 17:30)
schema:
type: string
- name: et
in: query
required: false
description: End time in UTC. (Eg. 17:45)
schema:
type: string
responses:
'200':
description: CFD ETF Market Aggregates API response.
content:
application/json:
schema:
type: object
properties:
symbol:
type: string
description: Symbol of the ETF
totalResults:
type: integer
description: Total result size
o:
type: number
description: Open price
h:
type: number
description: Highest price
l:
type: number
description: Lowest price
c:
type: number
description: Close price
v:
type: integer
description: Volume
t:
type: integer
format: int64
description: Timestamp [ms]
example:
symbol: QQQ
totalResults: 16
results:
- o: '331.22000'
h: '332.40250'
l: '329.53000'
c: '331.48001'
v: '20774820'
t: '2021-02-05'
- o: '333.10001'
h: '333.73999'
l: '331.41010'
c: '333.59000'
v: '18421116'
t: '2021-02-08'
- o: '332.66000'
h: '334.79990'
l: '332.65381'
c: '333.48999'
v: '16706362'
t: '2021-02-09'
'401':
$ref: '#/components/responses/Unauthorized'
/agg/etf/prev-close/{symbol}:
get:
operationId: cfdEtfPreviousCloseApi
summary: CFD ETF Previous Close API
description: With the ETF Previous Close API, you can get the previous day's last tick bar of the ETF market.
tags:
- ETFs
parameters:
- name: symbol
in: path
required: true
description: Symbol of the ETF
schema:
type: string
responses:
'200':
description: CFD ETF Previous Close API response.
content:
application/json:
schema:
type: object
properties:
symbol:
type: string
description: Symbol of the ETF
totalResults:
type: integer
description: Total result size
o:
type: number
description: Open price
h:
type: number
description: Highest price
l:
type: number
description: Lowest price
c:
type: number
description: Close price
v:
type: integer
description: Volume
t:
type: integer
format: int64
description: Timestamp [ms]
example:
symbol: QQQ
totalResults: 1
results:
- o: 364.84
h: 365.48001
l: 362.22
c: 362.98001
v: 34110963
t: 1626220800000
'401':
$ref: '#/components/responses/Unauthorized'
components:
responses:
Unauthorized:
description: Missing or invalid API key, or your plan does not include this market.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: Please use your APIKey to make a request.
schemas:
Error:
type: object
description: Finage error envelope — a single error string.
properties:
error:
type: string
description: Human-readable error message.
securitySchemes:
apiKey:
type: apiKey
name: apikey
in: query
description: Finage API key, passed as the apikey query parameter on every request. Get one at https://moon.finage.co.uk/register.
externalDocs:
description: Finage API documentation
url: https://finage.co.uk/docs/api