Ribbon Finance Market Data API
Public market data endpoints
Public market data endpoints
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/ribbon-finance-market-data-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: Aevo Exchange Private REST Account Market Data API
description: Authenticated REST API for Aevo exchange providing account management, order placement and management, position tracking, portfolio data, transfers, withdrawals, and trading history. Requires AEVO-KEY and AEVO-SECRET authentication headers obtained via cryptographic key registration.
version: 1.0.0
contact:
name: Aevo Support
url: https://docs.aevo.xyz/
servers:
- url: https://api.aevo.xyz
description: Aevo Exchange production server
security:
- AevoKey: []
AevoSecret: []
tags:
- name: Market Data
description: Public market data endpoints
paths:
/orderbook:
get:
tags:
- Market Data
summary: Get orderbook
description: Returns the orderbook for a given instrument symbol including bids, asks, and implied volatility.
operationId: getOrderbook
parameters:
- name: instrument_name
in: query
required: true
description: Instrument name.
schema:
type: string
example: ETH-30JUN23-1600-C
responses:
'200':
description: Orderbook snapshot
content:
application/json:
schema:
type: object
properties:
type:
type: string
example: snapshot
instrument_id:
type: string
description: Numeric instrument identifier
instrument_name:
type: string
example: ETH-30JUN23-1600-C
instrument_type:
type: string
enum:
- OPTION
- PERPETUAL
- SPOT
bids:
type: array
description: Array of [price_USD, contract_amount, IV]
items:
type: array
items:
type: string
asks:
type: array
description: Array of [price_USD, contract_amount, IV]
items:
type: array
items:
type: string
last_updated:
type: string
description: Last updated timestamp in UNIX nanoseconds
checksum:
type: string
description: Payload verification checksum
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/index:
get:
tags:
- Market Data
summary: Get index price
description: Returns the current index price for a given underlying asset.
operationId: getIndex
parameters:
- name: asset
in: query
required: true
description: Name of underlying asset.
schema:
type: string
example: ETH
responses:
'200':
description: Index price
content:
application/json:
schema:
type: object
properties:
price:
type: string
example: '1850.50'
timestamp:
type: string
description: UNIX timestamp in nanoseconds
example: '1680249600000000000'
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/index-history:
get:
tags:
- Market Data
summary: Get index price history
description: Returns historical index price data for a given underlying asset.
operationId: getIndexHistory
parameters:
- name: asset
in: query
required: true
description: Name of underlying asset.
schema:
type: string
example: ETH
- name: start_time
in: query
required: false
description: Start time in UNIX nanoseconds.
schema:
type: integer
- name: end_time
in: query
required: false
description: End time in UNIX nanoseconds.
schema:
type: integer
responses:
'200':
description: Index price history
content:
application/json:
schema:
type: object
properties:
history:
type: array
items:
type: array
items:
type: string
description: '[timestamp, price]'
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/funding:
get:
tags:
- Market Data
summary: Get funding rate
description: Returns the current funding rate for a perpetual instrument.
operationId: getFunding
parameters:
- name: instrument_name
in: query
required: true
description: Instrument name.
schema:
type: string
example: ETH-PERP
responses:
'200':
description: Funding rate
content:
application/json:
schema:
type: object
properties:
funding_rate:
type: string
description: Funding rate in decimals.
example: '0.00122'
next_epoch:
type: string
description: Next epoch in UNIX nanoseconds.
example: '1680249600000000000'
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/funding-history:
get:
tags:
- Market Data
summary: Get funding rate history
description: Returns historical funding rate data for a perpetual instrument.
operationId: getFundingHistory
parameters:
- name: instrument_name
in: query
required: true
description: Instrument name.
schema:
type: string
example: ETH-PERP
- name: start_time
in: query
required: false
description: Start time in UNIX nanoseconds.
schema:
type: integer
- name: end_time
in: query
required: false
description: End time in UNIX nanoseconds.
schema:
type: integer
- name: limit
in: query
required: false
description: Number of results to return.
schema:
type: integer
default: 50
responses:
'200':
description: Funding rate history
content:
application/json:
schema:
type: object
properties:
funding_history:
type: array
items:
type: array
items:
type: string
description: '[timestamp, funding_rate]'
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/mark-history:
get:
tags:
- Market Data
summary: Get mark price history
description: Returns historical mark price data for a given instrument.
operationId: getMarkHistory
parameters:
- name: instrument_name
in: query
required: true
description: Instrument name.
schema:
type: string
- name: start_time
in: query
required: false
schema:
type: integer
- name: end_time
in: query
required: false
schema:
type: integer
responses:
'200':
description: Mark price history
content:
application/json:
schema:
type: object
properties:
mark_history:
type: array
items:
type: array
items:
type: string
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/settlement-history:
get:
tags:
- Market Data
summary: Get settlement history
description: Returns historical settlement price data.
operationId: getSettlementHistory
parameters:
- name: asset
in: query
required: false
schema:
type: string
example: ETH
- name: start_time
in: query
required: false
schema:
type: integer
- name: end_time
in: query
required: false
schema:
type: integer
responses:
'200':
description: Settlement history
content:
application/json:
schema:
type: object
properties:
settlement_history:
type: array
items:
type: object
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
/options-history:
get:
tags:
- Market Data
summary: Get options history
description: Returns historical options trading data.
operationId: getOptionsHistory
parameters:
- name: asset
in: query
required: false
schema:
type: string
example: ETH
- name: start_time
in: query
required: false
schema:
type: integer
- name: end_time
in: query
required: false
schema:
type: integer
- name: limit
in: query
required: false
schema:
type: integer
default: 50
responses:
'200':
description: Options history
content:
application/json:
schema:
type: object
properties:
options_history:
type: array
items:
type: object
'400':
$ref: '#/components/responses/BadRequest'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
example: ERR_MALFORMED_REQUEST
responses:
InternalError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
BadRequest:
description: Malformed request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: Rate limit exceeded
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
AevoKey:
type: apiKey
in: header
name: AEVO-KEY
description: API key obtained from Aevo account settings
AevoSecret:
type: apiKey
in: header
name: AEVO-SECRET
description: API secret obtained from Aevo account settings