GET
List opportunities

Query Parameters

leverage
number

The leverage you want on each leg, capped per leg at the venue's maximum. Adds onMargin.

Required range: x <= 1000
Example:

10

minApr
number
default:0

Leave out pairs earning this gross APR or less, in percent, on the rate the list ranks on (rank): its average over the window, or the rate now for a pair without that average.

Example:

5

asset
string

One asset, by its matching key or any venue's name for it (XAU finds GOLD).

Example:

"ETH"

q
string

A part of the asset's name, any case.

Maximum string length: 40
Example:

"eth"

exclude
string

Venues, comma-separated, that neither leg may be on.

Example:

"aster,lighter"

venues
string

Venues, comma-separated, that both legs must be on, such as the ones an executor trades. The pairs this leaves out are counted in hiddenUntradable.

Example:

"hyperliquid,polymarket-perps"

sameVenue
enum<string>
default:true

List pairs of two contracts on one venue.

Available options:
true,
false
proxies
enum<string>
default:true

List pairs across a proxy and its asset (PAXG against gold).

Available options:
true,
false
long
string

Only pairs whose long leg is this market, as venue:market; with short, one pair alone.

Example:

"aster:ETHUSDT"

short
string

Only pairs whose short leg is this market, as venue:market.

Example:

"hyperliquid:ETH"

limit
integer
default:200

How many pairs the page holds.

Required range: 1 <= x <= 1000
rank
enum<string>
default:now

The rate the APR on margin stands on, and what ranks the pairs when sort is left out, best first: the gross APR now, or its average over the last 24 hours, 7 days or 30 days. A pair ranks on its 30-day average once it has 28 days of history. The pairs without that average come last.

Available options:
now,
24h,
7d,
30d
sort
enum<string>

The column the pairs are sorted by: the asset's name, the long or the short leg's rate, the spread now or on average, or the APR on margin at leverage on the rate rank says. A pair without the figure comes last either way; ties go to the higher spread now. The rate rank says unless asked.

Available options:
asset,
long,
short,
now,
24h,
7d,
30d,
margin
order
enum<string>

Which way. Highest first unless asked, A to Z for the asset.

Available options:
asc,
desc
cursor
string

Where the page starts: the next of the page before, with the same other parameters. Answered 410 once that state of the list is no longer kept, 30 seconds after a newer one replaced it: read the list again from the top.

Example:

"7c1e0a42-1f.50"

Response

The pairs, best first.

snapshot
string
required

The state of the market data the page comes from, which its next reads on in.

next
string | null
required

The cursor of the next page; null once the list ends.

opportunities
object[]
required
total
integer
required

Every pair the filters hold, before limit.

unfiltered
integer
required

Every pair that earns more than minApr, before the other filters.

hiddenUntradable
integer
required

The pairs the filters hold but for a leg outside venues; 0 without it.

offset
integer

The place of the page's first pair in the list

coverage
object

What the list stands on: a venue without a fresh rate has no pair listed, because the collector just started and hasn't read it yet, can't reach it, or has stopped.