@surf-ai/sdk 0.1.6-beta → 1.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +86 -375
- package/dist/db/index.cjs +216 -39
- package/dist/db/index.d.cts +37 -3
- package/dist/db/index.d.ts +37 -3
- package/dist/db/index.js +210 -38
- package/dist/server/index.cjs +250 -268
- package/dist/server/index.d.cts +9 -15
- package/dist/server/index.d.ts +9 -15
- package/dist/server/index.js +269 -195
- package/package.json +6 -29
- package/dist/chunk-J4OMYO3F.js +0 -70
- package/dist/client-3YMIRPDV.js +0 -8
- package/dist/react/index.d.ts +0 -3650
- package/dist/react/index.js +0 -1175
- package/src/theme/index.css +0 -314
package/dist/react/index.d.ts
DELETED
|
@@ -1,3650 +0,0 @@
|
|
|
1
|
-
import { ClassValue } from 'clsx';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
4
|
-
import * as _tanstack_query_core from '@tanstack/query-core';
|
|
5
|
-
|
|
6
|
-
declare function cn(...inputs: ClassValue[]): string;
|
|
7
|
-
|
|
8
|
-
type ToasterToast = {
|
|
9
|
-
id: string;
|
|
10
|
-
title?: React.ReactNode;
|
|
11
|
-
description?: React.ReactNode;
|
|
12
|
-
action?: React.ReactNode;
|
|
13
|
-
variant?: "default" | "destructive";
|
|
14
|
-
};
|
|
15
|
-
declare function toast(props: Omit<ToasterToast, "id">): {
|
|
16
|
-
id: string;
|
|
17
|
-
dismiss: () => void;
|
|
18
|
-
update: (p: Partial<ToasterToast>) => void;
|
|
19
|
-
};
|
|
20
|
-
declare function useToast(): {
|
|
21
|
-
toast: typeof toast;
|
|
22
|
-
dismiss: (toastId?: string) => void;
|
|
23
|
-
toasts: ToasterToast[];
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
interface ResponseMeta {
|
|
27
|
-
cached?: boolean;
|
|
28
|
-
credits_used?: number;
|
|
29
|
-
total?: number;
|
|
30
|
-
limit?: number;
|
|
31
|
-
offset?: number;
|
|
32
|
-
}
|
|
33
|
-
interface CursorMeta {
|
|
34
|
-
cached?: boolean;
|
|
35
|
-
credits_used?: number;
|
|
36
|
-
has_more?: boolean;
|
|
37
|
-
next_cursor?: string;
|
|
38
|
-
limit?: number;
|
|
39
|
-
}
|
|
40
|
-
interface ApiResponse<T> {
|
|
41
|
-
data: T[];
|
|
42
|
-
meta?: ResponseMeta;
|
|
43
|
-
}
|
|
44
|
-
interface ApiObjectResponse<T> {
|
|
45
|
-
data: T;
|
|
46
|
-
meta?: ResponseMeta;
|
|
47
|
-
}
|
|
48
|
-
interface ApiCursorResponse<T> {
|
|
49
|
-
data: T[];
|
|
50
|
-
meta?: CursorMeta;
|
|
51
|
-
}
|
|
52
|
-
interface ExchangeDepthItem {
|
|
53
|
-
/** Total ask-side depth in base currency units */
|
|
54
|
-
ask_depth: number;
|
|
55
|
-
/** Sell orders, price ascending */
|
|
56
|
-
asks: ExchangeDepthItemAsksItem[];
|
|
57
|
-
/** Total bid-side depth in base currency units */
|
|
58
|
-
bid_depth: number;
|
|
59
|
-
/** Buy orders, price descending */
|
|
60
|
-
bids: ExchangeDepthItemBidsItem[];
|
|
61
|
-
/** Exchange identifier */
|
|
62
|
-
exchange: string;
|
|
63
|
-
/** (best_bid + best_ask) / 2 */
|
|
64
|
-
mid_price: number;
|
|
65
|
-
/** Trading pair like BTC/USDT */
|
|
66
|
-
pair: string;
|
|
67
|
-
/** Best ask - best bid */
|
|
68
|
-
spread: number;
|
|
69
|
-
/** Spread as percent of mid price */
|
|
70
|
-
spread_pct: number;
|
|
71
|
-
}
|
|
72
|
-
interface ExchangeDepthItemAsksItem {
|
|
73
|
-
/** Amount at this level */
|
|
74
|
-
amount: number;
|
|
75
|
-
/** Price level */
|
|
76
|
-
price: number;
|
|
77
|
-
}
|
|
78
|
-
interface ExchangeDepthItemBidsItem {
|
|
79
|
-
/** Amount at this level */
|
|
80
|
-
amount: number;
|
|
81
|
-
/** Price level */
|
|
82
|
-
price: number;
|
|
83
|
-
}
|
|
84
|
-
interface ExchangeDepthParams {
|
|
85
|
-
/** Trading pair (e.g. BTC/USDT) */
|
|
86
|
-
pair: string;
|
|
87
|
-
/** Market type: spot for spot trading, swap for perpetual contracts — @default 'spot' */
|
|
88
|
-
type?: 'spot' | 'swap';
|
|
89
|
-
/** Number of price levels (1-100) — @default '20' */
|
|
90
|
-
limit?: number;
|
|
91
|
-
/** Exchange identifier — @default 'binance' */
|
|
92
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'coinbase' | 'kraken' | 'gate' | 'mexc' | 'upbit' | 'bitstamp' | 'deribit' | 'bitmex' | 'bithumb';
|
|
93
|
-
}
|
|
94
|
-
interface ExchangeFundingHistoryItem {
|
|
95
|
-
/** Exchange identifier */
|
|
96
|
-
exchange: string;
|
|
97
|
-
/** Funding rate at this settlement */
|
|
98
|
-
funding_rate: number;
|
|
99
|
-
/** Perpetual contract pair like BTC/USDT */
|
|
100
|
-
pair: string;
|
|
101
|
-
/** Unix timestamp in seconds */
|
|
102
|
-
timestamp: number;
|
|
103
|
-
}
|
|
104
|
-
interface ExchangeFundingHistoryParams {
|
|
105
|
-
/** Trading pair (e.g. BTC/USDT) */
|
|
106
|
-
pair: string;
|
|
107
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD, ISO8601). Not all exchanges support historical queries; some only return recent data regardless of this value. */
|
|
108
|
-
from?: string;
|
|
109
|
-
/** Max number of records. For longer history, paginate using the last returned timestamp as the next from value. — @default '100' */
|
|
110
|
-
limit?: number;
|
|
111
|
-
/** Exchange identifier — @default 'binance' */
|
|
112
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'gate' | 'htx' | 'mexc' | 'bitfinex' | 'bitmex';
|
|
113
|
-
}
|
|
114
|
-
interface ExchangeKlinesItem {
|
|
115
|
-
/** OHLCV candles */
|
|
116
|
-
candles: ExchangeKlinesItemCandlesItem[];
|
|
117
|
-
/** Number of candles */
|
|
118
|
-
count: number;
|
|
119
|
-
/** Exchange identifier */
|
|
120
|
-
exchange: string;
|
|
121
|
-
/** Candle interval */
|
|
122
|
-
interval: string;
|
|
123
|
-
/** Trading pair */
|
|
124
|
-
pair: string;
|
|
125
|
-
/** Last candle datetime */
|
|
126
|
-
period_end: string;
|
|
127
|
-
/** Highest price in period */
|
|
128
|
-
period_high: number;
|
|
129
|
-
/** Lowest price in period */
|
|
130
|
-
period_low: number;
|
|
131
|
-
/** First candle datetime */
|
|
132
|
-
period_start: string;
|
|
133
|
-
/** Total volume in period */
|
|
134
|
-
period_volume: number;
|
|
135
|
-
}
|
|
136
|
-
interface ExchangeKlinesItemCandlesItem {
|
|
137
|
-
/** Closing price */
|
|
138
|
-
close: number;
|
|
139
|
-
/** Highest price during the interval */
|
|
140
|
-
high: number;
|
|
141
|
-
/** Lowest price during the interval */
|
|
142
|
-
low: number;
|
|
143
|
-
/** Opening price */
|
|
144
|
-
open: number;
|
|
145
|
-
/** Candle open time in Unix seconds */
|
|
146
|
-
timestamp: number;
|
|
147
|
-
/** Trading volume in base currency units */
|
|
148
|
-
volume: number;
|
|
149
|
-
}
|
|
150
|
-
interface ExchangeKlinesParams {
|
|
151
|
-
/** Trading pair (e.g. BTC/USDT) */
|
|
152
|
-
pair: string;
|
|
153
|
-
/** Market type: spot for spot trading, swap for perpetual contracts — @default 'spot' */
|
|
154
|
-
type?: 'spot' | 'swap';
|
|
155
|
-
/** Candle interval — @default '1h' */
|
|
156
|
-
interval?: '1m' | '3m' | '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '8h' | '12h' | '1d' | '3d' | '1w' | '1M';
|
|
157
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD, ISO8601) */
|
|
158
|
-
from?: string;
|
|
159
|
-
/** Max number of candles to return. Exchange may cap lower (e.g. 200-1000). For longer ranges, paginate using the last returned timestamp as the next from value. — @default '100' */
|
|
160
|
-
limit?: number;
|
|
161
|
-
/** Exchange identifier — @default 'binance' */
|
|
162
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'coinbase' | 'kraken' | 'gate' | 'htx' | 'kucoin' | 'mexc' | 'upbit' | 'bitfinex' | 'bitstamp' | 'deribit' | 'bitmex' | 'bithumb';
|
|
163
|
-
}
|
|
164
|
-
interface ExchangeLongShortRatioItem {
|
|
165
|
-
/** Exchange identifier */
|
|
166
|
-
exchange: string;
|
|
167
|
-
/** Ratio of longs to shorts (e.g. 1.5 means 60% long / 40% short). To get percentages: long% = ratio/(ratio+1)*100, short% = 100/(ratio+1) */
|
|
168
|
-
long_short_ratio: number;
|
|
169
|
-
/** Perpetual contract pair like BTC/USDT */
|
|
170
|
-
pair: string;
|
|
171
|
-
/** Unix timestamp in seconds */
|
|
172
|
-
timestamp: number;
|
|
173
|
-
}
|
|
174
|
-
interface ExchangeLongShortRatioParams {
|
|
175
|
-
/** Trading pair (e.g. BTC/USDT) */
|
|
176
|
-
pair: string;
|
|
177
|
-
/** Data interval — @default '1h' */
|
|
178
|
-
interval?: '1h' | '4h' | '1d';
|
|
179
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD, ISO8601). Not all exchanges support historical queries; some only return recent data regardless of this value. */
|
|
180
|
-
from?: string;
|
|
181
|
-
/** Max number of records. For longer history, paginate using the last returned timestamp as the next from value. — @default '50' */
|
|
182
|
-
limit?: number;
|
|
183
|
-
/** Exchange identifier — @default 'bitget' */
|
|
184
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget';
|
|
185
|
-
}
|
|
186
|
-
interface ExchangeMarketsItem {
|
|
187
|
-
/** Whether the market is active */
|
|
188
|
-
active: boolean;
|
|
189
|
-
/** Base currency */
|
|
190
|
-
base: string;
|
|
191
|
-
/** Exchange identifier */
|
|
192
|
-
exchange: string;
|
|
193
|
-
/** Default maker fee rate */
|
|
194
|
-
maker_fee: number;
|
|
195
|
-
/** Trading pair like BTC/USDT */
|
|
196
|
-
pair: string;
|
|
197
|
-
/** Quote currency */
|
|
198
|
-
quote: string;
|
|
199
|
-
/** Default taker fee rate */
|
|
200
|
-
taker_fee: number;
|
|
201
|
-
/** Market type: spot, swap, future, option */
|
|
202
|
-
type: string;
|
|
203
|
-
}
|
|
204
|
-
interface ExchangeMarketsParams {
|
|
205
|
-
/** Exchange identifier. When omitted, searches across all supported exchanges. */
|
|
206
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'coinbase' | 'kraken' | 'gate' | 'htx' | 'kucoin' | 'mexc' | 'upbit' | 'bitfinex' | 'bitstamp' | 'deribit' | 'bitmex' | 'bithumb';
|
|
207
|
-
/** Filter: spot, swap, future, option */
|
|
208
|
-
type?: 'spot' | 'swap' | 'future' | 'option';
|
|
209
|
-
/** Filter by base currency */
|
|
210
|
-
base?: string;
|
|
211
|
-
/** Filter by quote currency */
|
|
212
|
-
quote?: string;
|
|
213
|
-
/** Fuzzy search in pair/base/quote */
|
|
214
|
-
search?: string;
|
|
215
|
-
/** Max results — @default '100' */
|
|
216
|
-
limit?: number;
|
|
217
|
-
}
|
|
218
|
-
interface ExchangePerpData {
|
|
219
|
-
/** Exchange identifier */
|
|
220
|
-
exchange: string;
|
|
221
|
-
funding: ExchangePerpDataFunding;
|
|
222
|
-
open_interest: ExchangePerpDataOpenInterest;
|
|
223
|
-
/** Perpetual contract pair like BTC/USDT */
|
|
224
|
-
pair: string;
|
|
225
|
-
}
|
|
226
|
-
interface ExchangePerpDataFunding {
|
|
227
|
-
/** Exchange identifier */
|
|
228
|
-
exchange: string;
|
|
229
|
-
/** Current funding rate (0.0001 = 0.01%) */
|
|
230
|
-
funding_rate: number;
|
|
231
|
-
/** Index price derived from the weighted average of spot prices across multiple exchanges */
|
|
232
|
-
index_price: number;
|
|
233
|
-
/** Funding interval like 8h */
|
|
234
|
-
interval: string;
|
|
235
|
-
/** Mark price calculated by the exchange from the index price and funding rate, used as the reference for liquidations */
|
|
236
|
-
mark_price: number;
|
|
237
|
-
/** Next settlement time ISO8601 */
|
|
238
|
-
next_funding: string;
|
|
239
|
-
/** Perpetual contract pair like BTC/USDT */
|
|
240
|
-
pair: string;
|
|
241
|
-
}
|
|
242
|
-
interface ExchangePerpDataOpenInterest {
|
|
243
|
-
/** Exchange identifier */
|
|
244
|
-
exchange: string;
|
|
245
|
-
/** Open interest in contracts */
|
|
246
|
-
open_interest_amount: number;
|
|
247
|
-
/** Open interest in USD */
|
|
248
|
-
open_interest_usd: number;
|
|
249
|
-
/** Trading pair like BTC/USDT */
|
|
250
|
-
pair: string;
|
|
251
|
-
/** Unix timestamp in seconds */
|
|
252
|
-
timestamp: number;
|
|
253
|
-
}
|
|
254
|
-
interface ExchangePerpParams {
|
|
255
|
-
/** Trading pair (e.g. BTC/USDT). The swap suffix ':USDT' is added automatically. */
|
|
256
|
-
pair: string;
|
|
257
|
-
/** Comma-separated fields to include: 'funding' (current funding rate), 'oi' (open interest). Defaults to all fields. — @default 'funding,oi' */
|
|
258
|
-
fields?: string;
|
|
259
|
-
/** Exchange identifier — @default 'binance' */
|
|
260
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'htx' | 'bitfinex' | 'bitmex';
|
|
261
|
-
}
|
|
262
|
-
interface ExchangePriceItem {
|
|
263
|
-
/** Best ask price */
|
|
264
|
-
ask: number;
|
|
265
|
-
/** Best bid price */
|
|
266
|
-
bid: number;
|
|
267
|
-
/** Price change percentage in 24h */
|
|
268
|
-
change_24h_pct: number;
|
|
269
|
-
/** Exchange identifier like binance, okx */
|
|
270
|
-
exchange: string;
|
|
271
|
-
/** 24h high price */
|
|
272
|
-
high_24h: number;
|
|
273
|
-
/** Last traded price */
|
|
274
|
-
last: number;
|
|
275
|
-
/** 24h low price */
|
|
276
|
-
low_24h: number;
|
|
277
|
-
/** Trading pair like BTC/USDT */
|
|
278
|
-
pair: string;
|
|
279
|
-
/** Unix timestamp in seconds */
|
|
280
|
-
timestamp: number;
|
|
281
|
-
/** 24h trading volume in base currency units */
|
|
282
|
-
volume_24h_base: number;
|
|
283
|
-
}
|
|
284
|
-
interface ExchangePriceParams {
|
|
285
|
-
/** Trading pair (e.g. BTC/USDT) */
|
|
286
|
-
pair: string;
|
|
287
|
-
/** Market type: spot for spot trading, swap for perpetual contracts — @default 'spot' */
|
|
288
|
-
type?: 'spot' | 'swap';
|
|
289
|
-
/** Exchange identifier — @default 'binance' */
|
|
290
|
-
exchange?: 'binance' | 'okx' | 'bybit' | 'bitget' | 'coinbase' | 'kraken' | 'gate' | 'htx' | 'kucoin' | 'mexc' | 'upbit' | 'bitfinex' | 'bitstamp' | 'deribit' | 'bitmex' | 'bithumb';
|
|
291
|
-
}
|
|
292
|
-
interface FundDetailData {
|
|
293
|
-
/** Fund description */
|
|
294
|
-
description?: string;
|
|
295
|
-
/** Surf fund UUID — pass as 'id' parameter to /fund/detail or /fund/portfolio for exact lookup */
|
|
296
|
-
id: string;
|
|
297
|
-
/** Fund logo URL */
|
|
298
|
-
image?: string;
|
|
299
|
-
/** Total number of unique invested projects (a project with multiple funding rounds counts once) */
|
|
300
|
-
invested_projects_count: number;
|
|
301
|
-
/** Fund jurisdiction */
|
|
302
|
-
jurisdiction?: string;
|
|
303
|
-
/** Fund links (website, social, etc.) */
|
|
304
|
-
links: FundDetailDataLinksItem[];
|
|
305
|
-
/** Fund team members */
|
|
306
|
-
members: FundDetailDataMembersItem[];
|
|
307
|
-
/** Fund name */
|
|
308
|
-
name: string;
|
|
309
|
-
/** Recent research publications */
|
|
310
|
-
recent_researches: FundDetailDataRecentResearchesItem[];
|
|
311
|
-
/** Fund tier ranking (lower is better) */
|
|
312
|
-
tier: number;
|
|
313
|
-
/** Fund type like `VC` or `Accelerator` */
|
|
314
|
-
type?: string;
|
|
315
|
-
/** X (Twitter) accounts */
|
|
316
|
-
x_accounts: FundDetailDataXAccountsItem[];
|
|
317
|
-
}
|
|
318
|
-
interface FundDetailDataLinksItem {
|
|
319
|
-
/** Link type like `web`, `twitter`, or `linkedin` */
|
|
320
|
-
type: string;
|
|
321
|
-
/** Link URL */
|
|
322
|
-
value: string;
|
|
323
|
-
}
|
|
324
|
-
interface FundDetailDataMembersItem {
|
|
325
|
-
/** Avatar URL */
|
|
326
|
-
avatar?: string;
|
|
327
|
-
/** Member name */
|
|
328
|
-
name: string;
|
|
329
|
-
/** Member roles */
|
|
330
|
-
roles: unknown;
|
|
331
|
-
}
|
|
332
|
-
interface FundDetailDataRecentResearchesItem {
|
|
333
|
-
/** Research ID */
|
|
334
|
-
id: string;
|
|
335
|
-
/** Publication date (Unix seconds) */
|
|
336
|
-
published_at: number;
|
|
337
|
-
/** Research title */
|
|
338
|
-
title: string;
|
|
339
|
-
/** Research URL */
|
|
340
|
-
url: string;
|
|
341
|
-
}
|
|
342
|
-
interface FundDetailDataXAccountsItem {
|
|
343
|
-
/** Display name */
|
|
344
|
-
display_name?: string;
|
|
345
|
-
/** Follower count */
|
|
346
|
-
followers_count: number;
|
|
347
|
-
/** X (Twitter) handle without the @ prefix */
|
|
348
|
-
handle: string;
|
|
349
|
-
/** Numeric X (Twitter) user ID */
|
|
350
|
-
id: string;
|
|
351
|
-
/** Profile image URL */
|
|
352
|
-
profile_image?: string;
|
|
353
|
-
}
|
|
354
|
-
interface FundDetailParams {
|
|
355
|
-
/** Surf fund UUID. PREFERRED — always use this when available from a previous response (e.g. id from /search/fund). Takes priority over q. */
|
|
356
|
-
id?: string;
|
|
357
|
-
/** Fuzzy fund name search. Only use when 'id' is not available. May return unexpected results for ambiguous names. */
|
|
358
|
-
q?: string;
|
|
359
|
-
}
|
|
360
|
-
interface FundPortfolioItem {
|
|
361
|
-
/** Investment date (Unix seconds) */
|
|
362
|
-
invested_at?: number;
|
|
363
|
-
/** Whether this fund was the lead investor */
|
|
364
|
-
is_lead: boolean;
|
|
365
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup. Prefer over 'q' (fuzzy name search). */
|
|
366
|
-
project_id: string;
|
|
367
|
-
/** Project logo URL */
|
|
368
|
-
project_logo?: string;
|
|
369
|
-
/** Project name */
|
|
370
|
-
project_name: string;
|
|
371
|
-
/** Project slug */
|
|
372
|
-
project_slug?: string;
|
|
373
|
-
/** Most recent funding round amount in USD */
|
|
374
|
-
recent_raise?: number;
|
|
375
|
-
/** Total amount raised by the project in USD */
|
|
376
|
-
total_raise?: number;
|
|
377
|
-
}
|
|
378
|
-
interface FundPortfolioParams {
|
|
379
|
-
/** Surf fund UUID. PREFERRED — always use this when available from a previous response (e.g. id from /search/fund). Takes priority over q. */
|
|
380
|
-
id?: string;
|
|
381
|
-
/** Fuzzy fund name search. Only use when 'id' is not available. May return unexpected results for ambiguous names. */
|
|
382
|
-
q?: string;
|
|
383
|
-
/** Results per page — @default '20' */
|
|
384
|
-
limit?: number;
|
|
385
|
-
/** Pagination offset — @default '0' */
|
|
386
|
-
offset?: number;
|
|
387
|
-
/** Filter by lead investor status. Omit or leave empty for all investments. */
|
|
388
|
-
is_lead?: 'true' | 'false' | '';
|
|
389
|
-
/** Only include investments at or after this Unix timestamp (seconds) */
|
|
390
|
-
invested_after?: number;
|
|
391
|
-
/** Only include investments before this Unix timestamp (seconds) */
|
|
392
|
-
invested_before?: number;
|
|
393
|
-
/** Field to sort results by — @default 'invested_at' */
|
|
394
|
-
sort_by?: 'invested_at' | 'recent_raise' | 'total_raise';
|
|
395
|
-
/** Sort order — @default 'desc' */
|
|
396
|
-
order?: 'asc' | 'desc';
|
|
397
|
-
}
|
|
398
|
-
interface FundRankingItem {
|
|
399
|
-
/** Surf fund UUID — pass as 'id' parameter to /fund/detail or /fund/portfolio for exact lookup */
|
|
400
|
-
id: string;
|
|
401
|
-
/** Fund logo URL */
|
|
402
|
-
image?: string;
|
|
403
|
-
/** Total number of unique invested projects (a project with multiple funding rounds counts once) */
|
|
404
|
-
invested_projects_count: number;
|
|
405
|
-
/** Fund name */
|
|
406
|
-
name: string;
|
|
407
|
-
/** Fund tier ranking (lower is better) */
|
|
408
|
-
tier: number;
|
|
409
|
-
/** Top invested projects (up to 5) */
|
|
410
|
-
top_projects: FundRankingItemTopProjectsItem[];
|
|
411
|
-
/** Fund type */
|
|
412
|
-
type?: string;
|
|
413
|
-
}
|
|
414
|
-
interface FundRankingItemTopProjectsItem {
|
|
415
|
-
/** Investment date (Unix seconds) */
|
|
416
|
-
invested_at?: number;
|
|
417
|
-
/** Whether this fund was the lead investor */
|
|
418
|
-
is_lead: boolean;
|
|
419
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup. Prefer over 'q' (fuzzy name search). */
|
|
420
|
-
project_id: string;
|
|
421
|
-
/** Project logo URL */
|
|
422
|
-
project_logo?: string;
|
|
423
|
-
/** Project name */
|
|
424
|
-
project_name: string;
|
|
425
|
-
/** Project slug */
|
|
426
|
-
project_slug?: string;
|
|
427
|
-
/** Most recent funding round amount in USD */
|
|
428
|
-
recent_raise?: number;
|
|
429
|
-
/** Total amount raised by the project in USD */
|
|
430
|
-
total_raise?: number;
|
|
431
|
-
}
|
|
432
|
-
interface FundRankingParams {
|
|
433
|
-
/** Ranking metric. Can be `tier` (lower is better) or `portfolio_count` (number of invested projects). */
|
|
434
|
-
metric: 'tier' | 'portfolio_count';
|
|
435
|
-
/** Results per page — @default '20' */
|
|
436
|
-
limit?: number;
|
|
437
|
-
/** Pagination offset — @default '0' */
|
|
438
|
-
offset?: number;
|
|
439
|
-
}
|
|
440
|
-
interface MarketEtfItem {
|
|
441
|
-
/** Flow breakdown by individual ETF ticker */
|
|
442
|
-
etfs?: MarketEtfItemEtfsItem[];
|
|
443
|
-
/** Daily net flow in USD (positive=inflow, negative=outflow) */
|
|
444
|
-
flow_usd: number;
|
|
445
|
-
/** Token price in USD at close of day */
|
|
446
|
-
price_usd: number;
|
|
447
|
-
/** Unix timestamp in seconds (midnight UTC for the trading day) */
|
|
448
|
-
timestamp: number;
|
|
449
|
-
}
|
|
450
|
-
interface MarketEtfItemEtfsItem {
|
|
451
|
-
/** Daily net flow in USD for this ticker */
|
|
452
|
-
flow_usd: number;
|
|
453
|
-
/** ETF ticker symbol like `IBIT`, `GBTC`, or `ETHA` */
|
|
454
|
-
ticker: string;
|
|
455
|
-
}
|
|
456
|
-
interface MarketEtfParams {
|
|
457
|
-
/** Token symbol. Can be `BTC` or `ETH`. */
|
|
458
|
-
symbol: 'BTC' | 'ETH';
|
|
459
|
-
/** Field to sort results by — @default 'timestamp' */
|
|
460
|
-
sort_by?: 'flow_usd' | 'timestamp';
|
|
461
|
-
/** Sort order — @default 'desc' */
|
|
462
|
-
order?: 'asc' | 'desc';
|
|
463
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD) */
|
|
464
|
-
from?: string;
|
|
465
|
-
/** End of time range. Accepts Unix seconds or date string (YYYY-MM-DD) */
|
|
466
|
-
to?: string;
|
|
467
|
-
}
|
|
468
|
-
interface MarketFearGreedItem {
|
|
469
|
-
/** Human-readable classification (Extreme Fear, Fear, Neutral, Greed, Extreme Greed) */
|
|
470
|
-
classification: string;
|
|
471
|
-
/** BTC price in USD at this point in time */
|
|
472
|
-
price: number;
|
|
473
|
-
/** Unix timestamp in seconds for this data point */
|
|
474
|
-
timestamp: number;
|
|
475
|
-
/** Fear and Greed Index score from 0 (extreme fear) to 100 (extreme greed) */
|
|
476
|
-
value: number;
|
|
477
|
-
}
|
|
478
|
-
interface MarketFearGreedParams {
|
|
479
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD) */
|
|
480
|
-
from?: string;
|
|
481
|
-
/** End of time range. Accepts Unix seconds or date string (YYYY-MM-DD) */
|
|
482
|
-
to?: string;
|
|
483
|
-
}
|
|
484
|
-
interface MarketFuturesItem {
|
|
485
|
-
/** Current funding rate as a decimal (`0.0001` = 0.01%) */
|
|
486
|
-
funding_rate: number;
|
|
487
|
-
/** Ratio of long to short positions */
|
|
488
|
-
long_short_ratio: number;
|
|
489
|
-
/** Total open interest in USD */
|
|
490
|
-
open_interest: number;
|
|
491
|
-
/** Trading symbol like `BTC` or `ETH` */
|
|
492
|
-
symbol: string;
|
|
493
|
-
/** Unix timestamp (seconds) of last update */
|
|
494
|
-
updated_at: number;
|
|
495
|
-
/** 24-hour trading volume in USD */
|
|
496
|
-
volume_24h: number;
|
|
497
|
-
/** 24-hour volume change in USD (positive=increase, negative=decrease) */
|
|
498
|
-
volume_change_24h: number;
|
|
499
|
-
}
|
|
500
|
-
interface MarketFuturesParams {
|
|
501
|
-
/** Field to sort results by — @default 'volume_24h' */
|
|
502
|
-
sort_by?: 'open_interest' | 'funding_rate' | 'volume_24h' | 'long_short_ratio';
|
|
503
|
-
/** Sort order — @default 'desc' */
|
|
504
|
-
order?: 'asc' | 'desc';
|
|
505
|
-
}
|
|
506
|
-
interface MarketLiquidationChartItem {
|
|
507
|
-
/** Long-side aggregated liquidation volume (USD) */
|
|
508
|
-
long_liquidation_usd: number;
|
|
509
|
-
/** Short-side aggregated liquidation volume (USD) */
|
|
510
|
-
short_liquidation_usd: number;
|
|
511
|
-
/** Unix timestamp in seconds */
|
|
512
|
-
timestamp: number;
|
|
513
|
-
}
|
|
514
|
-
interface MarketLiquidationChartParams {
|
|
515
|
-
/** Token ticker symbol like `BTC` or `ETH` */
|
|
516
|
-
symbol: string;
|
|
517
|
-
/** Candlestick interval. Can be `1m`, `3m`, `5m`, `15m`, `30m`, `1h`, `4h`, `6h`, `8h`, `12h`, `1d`, or `1w`. — @default '1h' */
|
|
518
|
-
interval?: '1m' | '3m' | '5m' | '15m' | '30m' | '1h' | '4h' | '6h' | '8h' | '12h' | '1d' | '1w';
|
|
519
|
-
/** Exchange name. Can be `Binance`, `OKX`, `Bybit`, `Bitget`, `Hyperliquid`, `Gate`, `HTX`, `Bitmex`, `Bitfinex`, `CoinEx`, `Aster`, or `Lighter`. — @default 'Binance' */
|
|
520
|
-
exchange?: 'Binance' | 'OKX' | 'Bybit' | 'Bitget' | 'Hyperliquid' | 'Gate' | 'HTX' | 'Bitmex' | 'Bitfinex' | 'CoinEx' | 'Aster' | 'Lighter';
|
|
521
|
-
/** Results per page — @default '500' */
|
|
522
|
-
limit?: number;
|
|
523
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
524
|
-
from?: string;
|
|
525
|
-
/** End of time range. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
526
|
-
to?: string;
|
|
527
|
-
}
|
|
528
|
-
interface MarketLiquidationExchangeListItem {
|
|
529
|
-
/** Exchange name like `Binance` or `OKX`. `All` = aggregate across all exchanges */
|
|
530
|
-
exchange: string;
|
|
531
|
-
/** Total liquidation volume (USD) */
|
|
532
|
-
liquidation_usd: number;
|
|
533
|
-
/** Long-side liquidation volume (USD) */
|
|
534
|
-
long_liquidation_usd: number;
|
|
535
|
-
/** Short-side liquidation volume (USD) */
|
|
536
|
-
short_liquidation_usd: number;
|
|
537
|
-
}
|
|
538
|
-
interface MarketLiquidationExchangeListParams {
|
|
539
|
-
/** Token ticker symbol like `BTC` or `ETH` — @default 'BTC' */
|
|
540
|
-
symbol?: string;
|
|
541
|
-
/** Aggregation time range. Can be `1h`, `4h`, `12h`, or `24h`. — @default '24h' */
|
|
542
|
-
time_range?: '1h' | '4h' | '12h' | '24h';
|
|
543
|
-
/** Field to sort results by — @default 'liquidation_usd' */
|
|
544
|
-
sort_by?: 'liquidation_usd' | 'long_liquidation_usd' | 'short_liquidation_usd';
|
|
545
|
-
/** Sort order — @default 'desc' */
|
|
546
|
-
order?: 'asc' | 'desc';
|
|
547
|
-
}
|
|
548
|
-
interface MarketLiquidationOrderItem {
|
|
549
|
-
/** Base token symbol like `BTC` */
|
|
550
|
-
base_asset: string;
|
|
551
|
-
/** Exchange name like `Binance` or `OKX` */
|
|
552
|
-
exchange: string;
|
|
553
|
-
/** Liquidation execution price (USD) */
|
|
554
|
-
price: number;
|
|
555
|
-
/** Liquidation side: `long` or `short` */
|
|
556
|
-
side: string;
|
|
557
|
-
/** Full trading pair like `BTCUSDT` */
|
|
558
|
-
symbol: string;
|
|
559
|
-
/** Unix timestamp in seconds */
|
|
560
|
-
timestamp: number;
|
|
561
|
-
/** Liquidated position size (USD) */
|
|
562
|
-
usd_value: number;
|
|
563
|
-
}
|
|
564
|
-
interface MarketLiquidationOrderParams {
|
|
565
|
-
/** Exchange name. Can be `Binance`, `OKX`, `Bybit`, `Bitget`, `Hyperliquid`, `Gate`, `HTX`, `Bitmex`, `Bitfinex`, `CoinEx`, `Aster`, or `Lighter`. — @default 'Binance' */
|
|
566
|
-
exchange?: 'Binance' | 'OKX' | 'Bybit' | 'Bitget' | 'Hyperliquid' | 'Gate' | 'HTX' | 'Bitmex' | 'Bitfinex' | 'CoinEx' | 'Aster' | 'Lighter';
|
|
567
|
-
/** Token ticker symbol like `BTC` or `ETH` — @default 'BTC' */
|
|
568
|
-
symbol?: string;
|
|
569
|
-
/** Minimum liquidation amount in USD — @default '10000' */
|
|
570
|
-
min_amount?: string;
|
|
571
|
-
/** Filter by liquidation side. Omit to return both. */
|
|
572
|
-
side?: 'long' | 'short';
|
|
573
|
-
/** Field to sort results by — @default 'timestamp' */
|
|
574
|
-
sort_by?: 'usd_value' | 'timestamp' | 'price';
|
|
575
|
-
/** Sort order — @default 'desc' */
|
|
576
|
-
order?: 'asc' | 'desc';
|
|
577
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
578
|
-
from?: string;
|
|
579
|
-
/** End of time range. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
580
|
-
to?: string;
|
|
581
|
-
}
|
|
582
|
-
interface MarketOnchainIndicatorItem {
|
|
583
|
-
/** Metric name like `nupl`, `sopr`, or `price` */
|
|
584
|
-
metric?: string;
|
|
585
|
-
/** Token symbol this data point belongs to */
|
|
586
|
-
symbol?: string;
|
|
587
|
-
/** Unix timestamp in seconds for this data point */
|
|
588
|
-
timestamp: number;
|
|
589
|
-
/** Metric value at this timestamp */
|
|
590
|
-
value: number;
|
|
591
|
-
}
|
|
592
|
-
interface MarketOnchainIndicatorParams {
|
|
593
|
-
/** Token ticker symbol. Can be `BTC` or `ETH`. */
|
|
594
|
-
symbol: 'BTC' | 'ETH';
|
|
595
|
-
/** On-chain metric name. Can be `nupl`, `sopr`, `mvrv`, `puell-multiple`, `nvm`, `nvt`, `nvt-golden-cross`, or `exchange-flows/{inflow,outflow,netflow,reserve}`. */
|
|
596
|
-
metric: 'nupl' | 'sopr' | 'mvrv' | 'puell-multiple' | 'nvm' | 'nvt' | 'nvt-golden-cross' | 'exchange-flows/inflow' | 'exchange-flows/outflow' | 'exchange-flows/netflow' | 'exchange-flows/reserve';
|
|
597
|
-
/** Aggregation granularity. — @default 'day' */
|
|
598
|
-
granularity?: 'day';
|
|
599
|
-
/** Start of time range. Accepts Unix seconds or date string (YYYY-MM-DD). Defaults to 90 days ago when omitted. Maximum range is 365 days. */
|
|
600
|
-
from?: string;
|
|
601
|
-
/** End of time range. Accepts Unix seconds or date string (YYYY-MM-DD). Defaults to today when omitted. Maximum range is 365 days. */
|
|
602
|
-
to?: string;
|
|
603
|
-
/** Exchange filter (only applies to exchange-flow metrics). Can be `all_exchange`, `spot_exchange`, `derivative_exchange`, `binance`, `bybit`, `kraken`, or `okx`. — @default 'all_exchange' */
|
|
604
|
-
exchange?: 'all_exchange' | 'spot_exchange' | 'derivative_exchange' | 'binance' | 'bybit' | 'kraken' | 'okx';
|
|
605
|
-
}
|
|
606
|
-
interface MarketOptionsItem {
|
|
607
|
-
/** Options exchange name */
|
|
608
|
-
exchange: string;
|
|
609
|
-
/** Max pain price for the nearest expiry in USD. Only available for individual exchanges (Deribit, OKX, Binance, Bybit), not present on the `All` aggregate row. */
|
|
610
|
-
max_pain_price?: number;
|
|
611
|
-
/** Total options open interest in USD */
|
|
612
|
-
open_interest: number;
|
|
613
|
-
/** Put/call open interest ratio (put OI / call OI). Values above 1 indicate bearish sentiment. Only available for individual exchanges (Deribit, OKX, Binance, Bybit), not present on the `All` aggregate row. */
|
|
614
|
-
put_call_ratio?: number;
|
|
615
|
-
/** Underlying token symbol like `BTC` or `ETH` */
|
|
616
|
-
symbol: string;
|
|
617
|
-
/** Unix timestamp (seconds) of last update */
|
|
618
|
-
updated_at: number;
|
|
619
|
-
/** 24-hour options trading volume in USD */
|
|
620
|
-
volume_24h: number;
|
|
621
|
-
}
|
|
622
|
-
interface MarketOptionsParams {
|
|
623
|
-
/** Token symbol. Can be `BTC`, `ETH`, `SOL`, `XRP`, `BNB`, `DOGE`, `ADA`, or `AVAX`. */
|
|
624
|
-
symbol: 'BTC' | 'ETH' | 'SOL' | 'XRP' | 'BNB' | 'DOGE' | 'ADA' | 'AVAX';
|
|
625
|
-
/** Field to sort results by — @default 'volume_24h' */
|
|
626
|
-
sort_by?: 'open_interest' | 'volume_24h';
|
|
627
|
-
/** Sort order — @default 'desc' */
|
|
628
|
-
order?: 'asc' | 'desc';
|
|
629
|
-
}
|
|
630
|
-
interface MarketPriceItem {
|
|
631
|
-
/** Metric name like `nupl`, `sopr`, or `price` */
|
|
632
|
-
metric?: string;
|
|
633
|
-
/** Token symbol this data point belongs to */
|
|
634
|
-
symbol?: string;
|
|
635
|
-
/** Unix timestamp in seconds for this data point */
|
|
636
|
-
timestamp: number;
|
|
637
|
-
/** Metric value at this timestamp */
|
|
638
|
-
value: number;
|
|
639
|
-
}
|
|
640
|
-
interface MarketPriceParams {
|
|
641
|
-
/** Single token ticker symbol like `BTC`, `ETH`, or `SOL` (multi-symbol not supported) */
|
|
642
|
-
symbol: string;
|
|
643
|
-
/** Predefined time range for historical data. Ignored when `from`/`to` are set. Can be `1d`, `7d`, `14d`, `30d`, `90d`, `180d`, `365d`, or `max`. — @default '30d' */
|
|
644
|
-
time_range?: '1d' | '7d' | '14d' | '30d' | '90d' | '180d' | '365d' | 'max';
|
|
645
|
-
/** Start of custom date range (Unix timestamp or YYYY-MM-DD). Must be used together with `to`. Overrides `time_range` when set. */
|
|
646
|
-
from?: string;
|
|
647
|
-
/** End of custom date range (Unix timestamp or YYYY-MM-DD). Must be used together with `from`. Overrides `time_range` when set. */
|
|
648
|
-
to?: string;
|
|
649
|
-
/** Quote currency like `usd`, `eur`, or `btc` — @default 'usd' */
|
|
650
|
-
currency?: string;
|
|
651
|
-
}
|
|
652
|
-
interface MarketPriceIndicatorItem {
|
|
653
|
-
/** Time interval used to compute the indicator like `1h`, `4h`, or `1d` */
|
|
654
|
-
interval: string;
|
|
655
|
-
/** Indicator name like `rsi`, `macd`, or `bbands` */
|
|
656
|
-
name: string;
|
|
657
|
-
/** Token symbol this indicator is computed for */
|
|
658
|
-
symbol: string;
|
|
659
|
-
/** Candle open timestamp in Unix seconds (present in time-series responses) */
|
|
660
|
-
timestamp?: number;
|
|
661
|
-
/** Unix timestamp in seconds when the indicator was last computed */
|
|
662
|
-
updated_at?: number;
|
|
663
|
-
/** Primary indicator value */
|
|
664
|
-
value: number;
|
|
665
|
-
values?: MarketPriceIndicatorItemValues;
|
|
666
|
-
}
|
|
667
|
-
interface MarketPriceIndicatorItemValues {
|
|
668
|
-
/** Bollinger lower band */
|
|
669
|
-
bbands_lower?: number;
|
|
670
|
-
/** Bollinger middle band (SMA) */
|
|
671
|
-
bbands_middle?: number;
|
|
672
|
-
/** Bollinger upper band */
|
|
673
|
-
bbands_upper?: number;
|
|
674
|
-
/** Average Directional Index value */
|
|
675
|
-
dmi_adx?: number;
|
|
676
|
-
/** Negative Directional Indicator (-DI) */
|
|
677
|
-
dmi_mdi?: number;
|
|
678
|
-
/** Positive Directional Indicator (+DI) */
|
|
679
|
-
dmi_pdi?: number;
|
|
680
|
-
/** Ichimoku baseline (Kijun-sen) */
|
|
681
|
-
ichimoku_base?: number;
|
|
682
|
-
/** Ichimoku conversion line (Tenkan-sen) */
|
|
683
|
-
ichimoku_conversion?: number;
|
|
684
|
-
/** Ichimoku current span A */
|
|
685
|
-
ichimoku_current_span_a?: number;
|
|
686
|
-
/** Ichimoku current span B */
|
|
687
|
-
ichimoku_current_span_b?: number;
|
|
688
|
-
/** Ichimoku lagging span A */
|
|
689
|
-
ichimoku_lagging_span_a?: number;
|
|
690
|
-
/** Ichimoku lagging span B */
|
|
691
|
-
ichimoku_lagging_span_b?: number;
|
|
692
|
-
/** Ichimoku leading span A (Senkou A) */
|
|
693
|
-
ichimoku_span_a?: number;
|
|
694
|
-
/** Ichimoku leading span B (Senkou B) */
|
|
695
|
-
ichimoku_span_b?: number;
|
|
696
|
-
/** MACD histogram (MACD minus signal) */
|
|
697
|
-
macd_hist?: number;
|
|
698
|
-
/** MACD signal line */
|
|
699
|
-
macd_signal?: number;
|
|
700
|
-
/** MACD line value */
|
|
701
|
-
macd_value?: number;
|
|
702
|
-
/** Stochastic %D (slow line) */
|
|
703
|
-
stoch_d?: number;
|
|
704
|
-
/** Stochastic %K (fast line) */
|
|
705
|
-
stoch_k?: number;
|
|
706
|
-
/** Supertrend direction: `buy` (price above supertrend, bullish) or `sell` (price below supertrend, bearish) */
|
|
707
|
-
supertrend_advice?: string;
|
|
708
|
-
/** Supertrend line value */
|
|
709
|
-
supertrend_value?: number;
|
|
710
|
-
}
|
|
711
|
-
interface MarketPriceIndicatorParams {
|
|
712
|
-
/** Technical indicator name. Can be `rsi`, `macd`, `ema`, `sma`, `bbands`, `stoch`, `adx`, `atr`, `cci`, `obv`, `vwap`, `dmi`, `ichimoku`, or `supertrend`. */
|
|
713
|
-
indicator: 'rsi' | 'macd' | 'ema' | 'sma' | 'bbands' | 'stoch' | 'adx' | 'atr' | 'cci' | 'obv' | 'vwap' | 'dmi' | 'ichimoku' | 'supertrend';
|
|
714
|
-
/** Trading pair as `BTC/USDT` or bare symbol like `BTC` */
|
|
715
|
-
symbol: string;
|
|
716
|
-
/** Candlestick interval. Can be `1m`, `5m`, `15m`, `30m`, `1h`, `2h`, `4h`, `12h`, `1d`, or `1w`. — @default '1d' */
|
|
717
|
-
interval?: '1m' | '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '12h' | '1d' | '1w';
|
|
718
|
-
/** Exchange for price data. Can be `binance`, `bybit`, `coinbase`, or `kraken`. — @default 'binance' */
|
|
719
|
-
exchange?: 'binance' | 'bybit' | 'coinbase' | 'kraken';
|
|
720
|
-
/** Start of time range. When set, returns time-series instead of latest value. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
721
|
-
from?: string;
|
|
722
|
-
/** End of time range. Defaults to now when from is set. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
723
|
-
to?: string;
|
|
724
|
-
/** Indicator-specific options as comma-separated key:value pairs. Available options by indicator: `period` — lookback period for rsi (default 14), sma (default 20), ema (default 20), bbands (default 20), adx (default 14), atr (default 14), cci (default 20), dmi (default 14), stoch (default 14), supertrend (default 10). `stddev` — standard deviation for bbands (default 2). `multiplier` — multiplier for supertrend (default 3). `fast_period` — MACD fast EMA (default 12). `slow_period` — MACD slow EMA (default 26). `signal_period` — MACD signal smoothing (default 9). Examples: `period:7`, `period:200`, `fast_period:8,slow_period:21,signal_period:5`, `period:10,stddev:1.5`. */
|
|
725
|
-
options?: string;
|
|
726
|
-
}
|
|
727
|
-
interface MarketRankingItem {
|
|
728
|
-
/** All-time high price in USD */
|
|
729
|
-
ath?: number;
|
|
730
|
-
/** All-time low price in USD */
|
|
731
|
-
atl?: number;
|
|
732
|
-
/** Price change percentage over the last 24 hours */
|
|
733
|
-
change_24h_pct: number;
|
|
734
|
-
/** Circulating token supply */
|
|
735
|
-
circulating_supply?: number;
|
|
736
|
-
/** Fully diluted valuation in USD */
|
|
737
|
-
fdv?: number;
|
|
738
|
-
/** Highest price in the last 24 hours in USD */
|
|
739
|
-
high_24h: number;
|
|
740
|
-
/** Token logo image URL */
|
|
741
|
-
image?: string;
|
|
742
|
-
/** Lowest price in the last 24 hours in USD */
|
|
743
|
-
low_24h: number;
|
|
744
|
-
/** Total market capitalization in USD */
|
|
745
|
-
market_cap_usd: number;
|
|
746
|
-
/** Maximum token supply (e.g. 21M for BTC). Not available for all tokens. */
|
|
747
|
-
max_supply?: number;
|
|
748
|
-
/** Full token name */
|
|
749
|
-
name: string;
|
|
750
|
-
/** Current price in USD */
|
|
751
|
-
price_usd: number;
|
|
752
|
-
/** Rank position in the list (1 = highest) */
|
|
753
|
-
rank: number;
|
|
754
|
-
/** Token ticker symbol like `BTC` or `ETH` */
|
|
755
|
-
symbol: string;
|
|
756
|
-
/** Total token supply */
|
|
757
|
-
total_supply?: number;
|
|
758
|
-
/** 24-hour trading volume in USD */
|
|
759
|
-
volume_24h_usd: number;
|
|
760
|
-
}
|
|
761
|
-
interface MarketRankingParams {
|
|
762
|
-
/** Field to sort by. `market_cap` sorts by total market capitalisation, `change_24h` sorts by 24-hour price change percentage (fetches top 250 by market cap then sorts client-side), `volume_24h` sorts by 24-hour trading volume. — @default 'market_cap' */
|
|
763
|
-
sort_by?: 'market_cap' | 'change_24h' | 'volume_24h';
|
|
764
|
-
/** Sort order: `desc` (default, highest first) or `asc` (lowest first). — @default 'desc' */
|
|
765
|
-
order?: 'asc' | 'desc';
|
|
766
|
-
/** Optional token category filter. When provided, results are limited to coins in that category. Supported values: MEME, AI, AI_AGENTS, L1, L2, DEFI, GAMING, STABLECOIN, RWA, DEPIN, SOL_ECO, BASE_ECO, LST. */
|
|
767
|
-
category?: 'MEME' | 'AI' | 'AI_AGENTS' | 'L1' | 'L2' | 'DEFI' | 'GAMING' | 'STABLECOIN' | 'RWA' | 'DEPIN' | 'SOL_ECO' | 'BASE_ECO' | 'LST';
|
|
768
|
-
/** Results per page — @default '20' */
|
|
769
|
-
limit?: number;
|
|
770
|
-
/** Pagination offset — @default '0' */
|
|
771
|
-
offset?: number;
|
|
772
|
-
}
|
|
773
|
-
interface NewsDetailData {
|
|
774
|
-
/** Full article body text */
|
|
775
|
-
content: string;
|
|
776
|
-
/** Article ID */
|
|
777
|
-
id: string;
|
|
778
|
-
/** Surf project UUID */
|
|
779
|
-
project_id?: string;
|
|
780
|
-
/** Primary crypto project referenced in the article */
|
|
781
|
-
project_name?: string;
|
|
782
|
-
/** Unix timestamp in seconds when the article was published */
|
|
783
|
-
published_at: number;
|
|
784
|
-
/** Publisher name */
|
|
785
|
-
source?: string;
|
|
786
|
-
/** Short summary of the article */
|
|
787
|
-
summary?: string;
|
|
788
|
-
/** Article headline */
|
|
789
|
-
title: string;
|
|
790
|
-
/** Direct URL to the original article */
|
|
791
|
-
url?: string;
|
|
792
|
-
}
|
|
793
|
-
interface NewsDetailParams {
|
|
794
|
-
/** Article ID (returned as id in feed/search results) */
|
|
795
|
-
id: string;
|
|
796
|
-
}
|
|
797
|
-
interface NewsFeedItem {
|
|
798
|
-
/** Search highlight fragments with <em> tags around matching terms. Only present in search results. */
|
|
799
|
-
highlights?: NewsFeedItemHighlights;
|
|
800
|
-
/** Article ID. Use with the detail endpoint to fetch full content. */
|
|
801
|
-
id: string;
|
|
802
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup */
|
|
803
|
-
project_id?: string;
|
|
804
|
-
/** Primary crypto project referenced in the article */
|
|
805
|
-
project_name?: string;
|
|
806
|
-
/** Unix timestamp in seconds when the article was published */
|
|
807
|
-
published_at: number;
|
|
808
|
-
/** Publisher name (e.g. COINDESK, COINTELEGRAPH) */
|
|
809
|
-
source?: string;
|
|
810
|
-
/** Short summary of the article */
|
|
811
|
-
summary?: string;
|
|
812
|
-
/** Article headline */
|
|
813
|
-
title: string;
|
|
814
|
-
/** Direct URL to the original article */
|
|
815
|
-
url?: string;
|
|
816
|
-
}
|
|
817
|
-
interface NewsFeedItemHighlights {
|
|
818
|
-
[key: string]: unknown;
|
|
819
|
-
}
|
|
820
|
-
interface NewsFeedParams {
|
|
821
|
-
/** Filter by news source */
|
|
822
|
-
source?: 'coindesk' | 'cointelegraph' | 'theblock' | 'decrypt' | 'dlnews' | 'blockbeats' | 'bitcoincom' | 'coinpedia' | 'ambcrypto' | 'cryptodaily' | 'cryptopotato' | 'phemex' | 'panews' | 'odaily' | 'tradingview' | 'chaincatcher' | 'techflow';
|
|
823
|
-
/** Comma-separated project names to filter by */
|
|
824
|
-
project?: string;
|
|
825
|
-
/** Filter articles published on or after this time. Accepts Unix seconds or date string (2024-01-01) */
|
|
826
|
-
from?: string;
|
|
827
|
-
/** Filter articles published on or before this time. Accepts Unix seconds or date string (2024-02-01) */
|
|
828
|
-
to?: string;
|
|
829
|
-
/** Sort order: recency (newest first) or trending (hot right now) — @default 'recency' */
|
|
830
|
-
sort_by?: 'recency' | 'trending';
|
|
831
|
-
/** Results per page (max 50) — @default '20' */
|
|
832
|
-
limit?: number;
|
|
833
|
-
/** Pagination offset — @default '0' */
|
|
834
|
-
offset?: number;
|
|
835
|
-
}
|
|
836
|
-
interface OnchainBridgeRankingItem {
|
|
837
|
-
/** Bridge protocol name */
|
|
838
|
-
project: string;
|
|
839
|
-
/** Total number of bridge transfers */
|
|
840
|
-
tx_count: number;
|
|
841
|
-
/** Total USD volume in the time range */
|
|
842
|
-
volume_usd: number;
|
|
843
|
-
}
|
|
844
|
-
interface OnchainBridgeRankingParams {
|
|
845
|
-
/** Aggregation window — @default '30d' */
|
|
846
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y' | 'all';
|
|
847
|
-
/** Results per page — @default '20' */
|
|
848
|
-
limit?: number;
|
|
849
|
-
/** Pagination offset — @default '0' */
|
|
850
|
-
offset?: number;
|
|
851
|
-
}
|
|
852
|
-
interface OnchainGasPriceData {
|
|
853
|
-
/** Canonical chain name */
|
|
854
|
-
chain: string;
|
|
855
|
-
/** Gas price in wei */
|
|
856
|
-
gas_price: string;
|
|
857
|
-
/** Gas price in Gwei */
|
|
858
|
-
gas_price_gwei: number;
|
|
859
|
-
}
|
|
860
|
-
interface OnchainGasPriceParams {
|
|
861
|
-
/** Chain. Can be `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `base`, `avalanche`, `fantom`, `linea`, or `cyber`. */
|
|
862
|
-
chain: 'ethereum' | 'polygon' | 'bsc' | 'arbitrum' | 'optimism' | 'base' | 'avalanche' | 'fantom' | 'linea' | 'cyber';
|
|
863
|
-
}
|
|
864
|
-
interface OnchainStructuredQueryItem {
|
|
865
|
-
}
|
|
866
|
-
interface OnchainStructuredQueryParams {
|
|
867
|
-
/** Columns to return. Omit to return all columns. Example for agent.ethereum_transactions: [`transaction_hash`, `from_address`, `value`] */
|
|
868
|
-
fields?: unknown;
|
|
869
|
-
/** WHERE conditions (ANDed together) */
|
|
870
|
-
filters?: OnchainStructuredQueryParamsFiltersItem[];
|
|
871
|
-
/** Max rows to return. Default 20, max 10000 */
|
|
872
|
-
limit?: number;
|
|
873
|
-
/** Rows to skip for pagination. Default 0 */
|
|
874
|
-
offset?: number;
|
|
875
|
-
/** ORDER BY clauses */
|
|
876
|
-
sort?: OnchainStructuredQueryParamsSortItem[];
|
|
877
|
-
/** Fully-qualified table name like `agent.my_table` */
|
|
878
|
-
source: string;
|
|
879
|
-
}
|
|
880
|
-
interface OnchainStructuredQueryParamsFiltersItem {
|
|
881
|
-
/** Column name to filter on like `block_number` or `from_address` */
|
|
882
|
-
field: string;
|
|
883
|
-
/** Comparison operator: eq, neq, gt, gte, lt, lte, like, in, not_in. For `in`/`not_in`, value must be a JSON array */
|
|
884
|
-
op: string;
|
|
885
|
-
/** Comparison value. Use a JSON array for `in`/`not_in` operators like `[21000000, 21000001]` */
|
|
886
|
-
value: unknown;
|
|
887
|
-
}
|
|
888
|
-
interface OnchainStructuredQueryParamsSortItem {
|
|
889
|
-
/** Column name to sort by like `gas`, `block_number`, or `amount_usd` */
|
|
890
|
-
field: string;
|
|
891
|
-
/** Sort direction: asc (default) or desc */
|
|
892
|
-
order?: string;
|
|
893
|
-
}
|
|
894
|
-
interface OnchainSchemaItem {
|
|
895
|
-
/** List of columns in this table */
|
|
896
|
-
columns: OnchainSchemaItemColumnsItem[];
|
|
897
|
-
/** Database name (always `agent`) */
|
|
898
|
-
database: string;
|
|
899
|
-
/** Table name */
|
|
900
|
-
table: string;
|
|
901
|
-
}
|
|
902
|
-
interface OnchainSchemaItemColumnsItem {
|
|
903
|
-
/** Column comment or description */
|
|
904
|
-
comment?: string;
|
|
905
|
-
/** Column name */
|
|
906
|
-
name: string;
|
|
907
|
-
/** Column data type like `UInt64`, `String`, or `DateTime` */
|
|
908
|
-
type: string;
|
|
909
|
-
}
|
|
910
|
-
interface OnchainSqlItem {
|
|
911
|
-
}
|
|
912
|
-
interface OnchainSqlParams {
|
|
913
|
-
/** Maximum number of rows to return — @default '1000' */
|
|
914
|
-
max_rows?: number;
|
|
915
|
-
/** SQL query to execute against the blockchain data warehouse */
|
|
916
|
-
sql: string;
|
|
917
|
-
}
|
|
918
|
-
interface OnchainTxItem {
|
|
919
|
-
/** List of addresses and storage keys. Empty array for legacy; populated for EIP-2930+ */
|
|
920
|
-
accessList: OnchainTxItemAccesslistItem[];
|
|
921
|
-
/** Versioned hashes of blob commitments. EIP-4844 only */
|
|
922
|
-
blobVersionedHashes?: unknown;
|
|
923
|
-
/** Block hash, null if pending */
|
|
924
|
-
blockHash: string;
|
|
925
|
-
/** Block number (hex), null if pending */
|
|
926
|
-
blockNumber: string;
|
|
927
|
-
/** Chain ID (hex) */
|
|
928
|
-
chainId?: string;
|
|
929
|
-
/** Sender address (0x-prefixed) */
|
|
930
|
-
from: string;
|
|
931
|
-
/** Gas limit (hex) */
|
|
932
|
-
gas: string;
|
|
933
|
-
/** Gas price in wei (hex). Present in all types; for EIP-1559 this is the effective gas price */
|
|
934
|
-
gasPrice?: string;
|
|
935
|
-
/** Transaction hash (0x-prefixed) */
|
|
936
|
-
hash: string;
|
|
937
|
-
/** Call data (hex) */
|
|
938
|
-
input: string;
|
|
939
|
-
/** Max fee per blob gas in wei (hex). EIP-4844 only */
|
|
940
|
-
maxFeePerBlobGas?: string;
|
|
941
|
-
/** Max fee per gas in wei (hex). EIP-1559/EIP-4844 only */
|
|
942
|
-
maxFeePerGas?: string;
|
|
943
|
-
/** Max priority fee per gas in wei (hex). EIP-1559/EIP-4844 only */
|
|
944
|
-
maxPriorityFeePerGas?: string;
|
|
945
|
-
/** Sender nonce (hex) */
|
|
946
|
-
nonce: string;
|
|
947
|
-
/** Signature R (hex) */
|
|
948
|
-
r: string;
|
|
949
|
-
/** Signature S (hex) */
|
|
950
|
-
s: string;
|
|
951
|
-
/** Recipient address, null for contract creation */
|
|
952
|
-
to: string;
|
|
953
|
-
/** Index in block (hex), null if pending */
|
|
954
|
-
transactionIndex: string;
|
|
955
|
-
/** Transaction type: 0x0=legacy, 0x1=EIP-2930, 0x2=EIP-1559, 0x3=EIP-4844 */
|
|
956
|
-
type: string;
|
|
957
|
-
/** Signature V (hex). Legacy: recovery ID (0x1b/0x1c); EIP-2930+: parity (0x0/0x1) */
|
|
958
|
-
v: string;
|
|
959
|
-
/** ETH value in wei (hex) */
|
|
960
|
-
value: string;
|
|
961
|
-
/** Signature Y parity (hex). Present in EIP-2930+ transactions */
|
|
962
|
-
yParity?: string;
|
|
963
|
-
}
|
|
964
|
-
interface OnchainTxItemAccesslistItem {
|
|
965
|
-
/** Account address (0x-prefixed) */
|
|
966
|
-
address: string;
|
|
967
|
-
/** List of storage slot keys (0x-prefixed hex) */
|
|
968
|
-
storageKeys: unknown;
|
|
969
|
-
}
|
|
970
|
-
interface OnchainTxParams {
|
|
971
|
-
/** Transaction hash (0x-prefixed hex) */
|
|
972
|
-
hash: string;
|
|
973
|
-
/** Chain. Can be `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `base`, `avalanche`, `fantom`, `linea`, or `cyber`. */
|
|
974
|
-
chain: 'ethereum' | 'polygon' | 'bsc' | 'arbitrum' | 'optimism' | 'base' | 'avalanche' | 'fantom' | 'linea' | 'cyber';
|
|
975
|
-
}
|
|
976
|
-
interface OnchainYieldRankingItem {
|
|
977
|
-
/** Total APY (base + reward) */
|
|
978
|
-
apy: number;
|
|
979
|
-
/** Base APY from pool fees or interest */
|
|
980
|
-
apy_base: number;
|
|
981
|
-
/** Reward token APY */
|
|
982
|
-
apy_reward: number;
|
|
983
|
-
/** Pool or vault contract address */
|
|
984
|
-
pool_address: string;
|
|
985
|
-
/** Protocol name */
|
|
986
|
-
project: string;
|
|
987
|
-
/** Token symbol */
|
|
988
|
-
symbol: string;
|
|
989
|
-
/** Underlying token address */
|
|
990
|
-
token_address: string;
|
|
991
|
-
/** Pool TVL in USD */
|
|
992
|
-
tvl_usd: number;
|
|
993
|
-
/** Protocol version */
|
|
994
|
-
version: string;
|
|
995
|
-
}
|
|
996
|
-
interface OnchainYieldRankingParams {
|
|
997
|
-
/** Filter by protocol name like `lido`, `aave`, or `uniswap` */
|
|
998
|
-
project?: string;
|
|
999
|
-
/** Ranking metric: `apy` or `tvl_usd`. When sorted by `apy`, only pools with TVL >= $100k are included — @default 'apy' */
|
|
1000
|
-
sort_by?: 'apy' | 'tvl_usd';
|
|
1001
|
-
/** Sort direction — @default 'desc' */
|
|
1002
|
-
order?: 'asc' | 'desc';
|
|
1003
|
-
/** Results per page — @default '20' */
|
|
1004
|
-
limit?: number;
|
|
1005
|
-
/** Pagination offset — @default '0' */
|
|
1006
|
-
offset?: number;
|
|
1007
|
-
}
|
|
1008
|
-
interface PredictionMarketCategoryMetricsItem {
|
|
1009
|
-
/** Top-level category */
|
|
1010
|
-
category: string;
|
|
1011
|
-
/** Notional trading volume in USD */
|
|
1012
|
-
notional_volume_usd: number;
|
|
1013
|
-
/** Open interest in USD */
|
|
1014
|
-
open_interest_usd: number;
|
|
1015
|
-
/** Prediction market platform: Kalshi or Polymarket */
|
|
1016
|
-
source: string;
|
|
1017
|
-
/** Subcategory within the category */
|
|
1018
|
-
subcategory: string;
|
|
1019
|
-
/** Unix timestamp in seconds (midnight UTC for the trading day) */
|
|
1020
|
-
timestamp: number;
|
|
1021
|
-
}
|
|
1022
|
-
interface PredictionMarketCategoryMetricsParams {
|
|
1023
|
-
/** Filter by prediction market platform: `Kalshi` or `Polymarket` */
|
|
1024
|
-
source?: 'Kalshi' | 'Polymarket';
|
|
1025
|
-
/** Filter by top-level category */
|
|
1026
|
-
category?: 'crypto' | 'culture' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports';
|
|
1027
|
-
/** Predefined time range: `7d`, `30d`, `90d`, `180d`, `1y`, or `all` — @default '30d' */
|
|
1028
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y' | 'all';
|
|
1029
|
-
/** Maximum rows to return — @default '200' */
|
|
1030
|
-
limit?: number;
|
|
1031
|
-
/** Pagination offset — @default '0' */
|
|
1032
|
-
offset?: number;
|
|
1033
|
-
}
|
|
1034
|
-
interface KalshiEventsItem {
|
|
1035
|
-
/** Event subtitle */
|
|
1036
|
-
event_subtitle?: string;
|
|
1037
|
-
/** Unique event ticker identifier */
|
|
1038
|
-
event_ticker: string;
|
|
1039
|
-
/** Event title */
|
|
1040
|
-
event_title: string;
|
|
1041
|
-
/** Number of markets in this event */
|
|
1042
|
-
market_count: number;
|
|
1043
|
-
/** Markets within this event */
|
|
1044
|
-
markets: KalshiEventsItemMarketsItem[];
|
|
1045
|
-
}
|
|
1046
|
-
interface KalshiEventsItemMarketsItem {
|
|
1047
|
-
/** Surf curated market category */
|
|
1048
|
-
category?: string;
|
|
1049
|
-
/** Market close time (Unix seconds) */
|
|
1050
|
-
close_time?: number;
|
|
1051
|
-
/** Market end time (Unix seconds) */
|
|
1052
|
-
end_time?: number;
|
|
1053
|
-
/** Parent event ticker */
|
|
1054
|
-
event_ticker: string;
|
|
1055
|
-
/** Event title */
|
|
1056
|
-
event_title?: string;
|
|
1057
|
-
/** Previous day open interest from daily report */
|
|
1058
|
-
last_day_open_interest: number;
|
|
1059
|
-
/** Unique market ticker identifier */
|
|
1060
|
-
market_ticker: string;
|
|
1061
|
-
/** Last day notional trading volume in USD (each contract = $1) */
|
|
1062
|
-
notional_volume_usd: number;
|
|
1063
|
-
/** Open interest (contracts) */
|
|
1064
|
-
open_interest: number;
|
|
1065
|
-
/** Payout type */
|
|
1066
|
-
payout_type: string;
|
|
1067
|
-
/** Market result if resolved */
|
|
1068
|
-
result?: string;
|
|
1069
|
-
/** Market start time (Unix seconds) */
|
|
1070
|
-
start_time?: number;
|
|
1071
|
-
/** Market status */
|
|
1072
|
-
status: string;
|
|
1073
|
-
/** Surf curated market subcategory */
|
|
1074
|
-
subcategory?: string;
|
|
1075
|
-
/** Market title */
|
|
1076
|
-
title: string;
|
|
1077
|
-
/** Total trading volume (contracts) */
|
|
1078
|
-
total_volume: number;
|
|
1079
|
-
}
|
|
1080
|
-
interface KalshiEventsParams {
|
|
1081
|
-
/** Event ticker identifier */
|
|
1082
|
-
event_ticker: string;
|
|
1083
|
-
/** Results per page — @default '20' */
|
|
1084
|
-
limit?: number;
|
|
1085
|
-
/** Pagination offset — @default '0' */
|
|
1086
|
-
offset?: number;
|
|
1087
|
-
}
|
|
1088
|
-
interface KalshiMarketsItem {
|
|
1089
|
-
/** Surf curated market category */
|
|
1090
|
-
category?: string;
|
|
1091
|
-
/** Market close time (Unix seconds) */
|
|
1092
|
-
close_time?: number;
|
|
1093
|
-
/** Market end time (Unix seconds) */
|
|
1094
|
-
end_time?: number;
|
|
1095
|
-
/** Parent event ticker */
|
|
1096
|
-
event_ticker: string;
|
|
1097
|
-
/** Event title */
|
|
1098
|
-
event_title?: string;
|
|
1099
|
-
/** Previous day open interest from daily report */
|
|
1100
|
-
last_day_open_interest: number;
|
|
1101
|
-
/** Unique market ticker identifier */
|
|
1102
|
-
market_ticker: string;
|
|
1103
|
-
/** Last day notional trading volume in USD (each contract = $1) */
|
|
1104
|
-
notional_volume_usd: number;
|
|
1105
|
-
/** Open interest (contracts) */
|
|
1106
|
-
open_interest: number;
|
|
1107
|
-
/** Payout type */
|
|
1108
|
-
payout_type: string;
|
|
1109
|
-
/** Market result if resolved */
|
|
1110
|
-
result?: string;
|
|
1111
|
-
/** Market start time (Unix seconds) */
|
|
1112
|
-
start_time?: number;
|
|
1113
|
-
/** Market status */
|
|
1114
|
-
status: string;
|
|
1115
|
-
/** Surf curated market subcategory */
|
|
1116
|
-
subcategory?: string;
|
|
1117
|
-
/** Market title */
|
|
1118
|
-
title: string;
|
|
1119
|
-
/** Total trading volume (contracts) */
|
|
1120
|
-
total_volume: number;
|
|
1121
|
-
}
|
|
1122
|
-
interface KalshiMarketsParams {
|
|
1123
|
-
/** Market ticker identifier */
|
|
1124
|
-
market_ticker: string;
|
|
1125
|
-
/** Results per page — @default '20' */
|
|
1126
|
-
limit?: number;
|
|
1127
|
-
/** Pagination offset — @default '0' */
|
|
1128
|
-
offset?: number;
|
|
1129
|
-
}
|
|
1130
|
-
interface KalshiOpenInterestItem {
|
|
1131
|
-
/** Open interest on this date (contracts) */
|
|
1132
|
-
open_interest: number;
|
|
1133
|
-
/** Unix timestamp in seconds (midnight UTC for the trading day) */
|
|
1134
|
-
timestamp: number;
|
|
1135
|
-
}
|
|
1136
|
-
interface KalshiOpenInterestParams {
|
|
1137
|
-
/** Market ticker identifier */
|
|
1138
|
-
ticker: string;
|
|
1139
|
-
/** Predefined time range: `7d`, `30d`, `90d`, `180d`, or `1y` — @default '30d' */
|
|
1140
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1141
|
-
}
|
|
1142
|
-
interface KalshiPricesItem {
|
|
1143
|
-
/** Highest price as probability (0-1) */
|
|
1144
|
-
high: number;
|
|
1145
|
-
/** Lowest price as probability (0-1) */
|
|
1146
|
-
low: number;
|
|
1147
|
-
/** Opening price as probability (0-1). Present for daily interval only. */
|
|
1148
|
-
open?: number;
|
|
1149
|
-
side_a: KalshiPricesItemSideA;
|
|
1150
|
-
side_b: KalshiPricesItemSideB;
|
|
1151
|
-
/** Unix timestamp in seconds (midnight UTC for daily, hour start for hourly, trade time for latest) */
|
|
1152
|
-
timestamp: number;
|
|
1153
|
-
}
|
|
1154
|
-
interface KalshiPricesItemSideA {
|
|
1155
|
-
/** Outcome label: `Yes` or `No` */
|
|
1156
|
-
label: string;
|
|
1157
|
-
/** Price as probability (0-1) */
|
|
1158
|
-
price: number;
|
|
1159
|
-
}
|
|
1160
|
-
interface KalshiPricesItemSideB {
|
|
1161
|
-
/** Outcome label: `Yes` or `No` */
|
|
1162
|
-
label: string;
|
|
1163
|
-
/** Price as probability (0-1) */
|
|
1164
|
-
price: number;
|
|
1165
|
-
}
|
|
1166
|
-
interface KalshiPricesParams {
|
|
1167
|
-
/** Market ticker identifier */
|
|
1168
|
-
ticker: string;
|
|
1169
|
-
/** Predefined time range: `7d`, `30d`, `90d`, `180d`, or `1y`. Ignored when `interval=latest`. — @default '30d' */
|
|
1170
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1171
|
-
/** Data interval: `1h` for hourly, `1d` for daily OHLC, `latest` for real-time price from trades — @default '1d' */
|
|
1172
|
-
interval?: '1h' | '1d' | 'latest';
|
|
1173
|
-
}
|
|
1174
|
-
interface KalshiRankingItem {
|
|
1175
|
-
/** Surf curated market category */
|
|
1176
|
-
category?: string;
|
|
1177
|
-
/** Market close time (Unix seconds) */
|
|
1178
|
-
close_time?: number;
|
|
1179
|
-
/** Market end time (Unix seconds) */
|
|
1180
|
-
end_time?: number;
|
|
1181
|
-
/** Parent event ticker */
|
|
1182
|
-
event_ticker: string;
|
|
1183
|
-
/** Event title */
|
|
1184
|
-
event_title?: string;
|
|
1185
|
-
/** Previous day open interest from daily report */
|
|
1186
|
-
last_day_open_interest: number;
|
|
1187
|
-
/** Unique market ticker identifier */
|
|
1188
|
-
market_ticker: string;
|
|
1189
|
-
/** Last day notional trading volume in USD (each contract = $1) */
|
|
1190
|
-
notional_volume_usd: number;
|
|
1191
|
-
/** Open interest (contracts) */
|
|
1192
|
-
open_interest: number;
|
|
1193
|
-
/** Payout type */
|
|
1194
|
-
payout_type: string;
|
|
1195
|
-
/** Market result if resolved */
|
|
1196
|
-
result?: string;
|
|
1197
|
-
/** Market start time (Unix seconds) */
|
|
1198
|
-
start_time?: number;
|
|
1199
|
-
/** Market status */
|
|
1200
|
-
status: string;
|
|
1201
|
-
/** Surf curated market subcategory */
|
|
1202
|
-
subcategory?: string;
|
|
1203
|
-
/** Market title */
|
|
1204
|
-
title: string;
|
|
1205
|
-
/** Total trading volume (contracts) */
|
|
1206
|
-
total_volume: number;
|
|
1207
|
-
}
|
|
1208
|
-
interface KalshiRankingParams {
|
|
1209
|
-
/** Field to sort results by — @default 'notional_volume_usd' */
|
|
1210
|
-
sort_by?: 'notional_volume_usd' | 'open_interest';
|
|
1211
|
-
/** Sort order — @default 'desc' */
|
|
1212
|
-
order?: 'asc' | 'desc';
|
|
1213
|
-
/** Market status filter: `active`, `closed`, `determined`, `disputed`, `finalized`, `inactive`, or `initialized` — @default 'active' */
|
|
1214
|
-
status?: 'active' | 'closed' | 'determined' | 'disputed' | 'finalized' | 'inactive' | 'initialized';
|
|
1215
|
-
/** Filter by category */
|
|
1216
|
-
category?: 'crypto' | 'culture' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports' | 'unknown';
|
|
1217
|
-
/** Results per page — @default '20' */
|
|
1218
|
-
limit?: number;
|
|
1219
|
-
/** Pagination offset — @default '0' */
|
|
1220
|
-
offset?: number;
|
|
1221
|
-
}
|
|
1222
|
-
interface KalshiTradesItem {
|
|
1223
|
-
/** Unique market ticker identifier */
|
|
1224
|
-
market_ticker: string;
|
|
1225
|
-
/** No outcome price as probability (0-1) */
|
|
1226
|
-
no_price: number;
|
|
1227
|
-
/** Notional volume in USD (each contract = $1) */
|
|
1228
|
-
notional_volume_usd: number;
|
|
1229
|
-
/** Taker side: `yes` or `no` */
|
|
1230
|
-
taker_side: string;
|
|
1231
|
-
/** Unix timestamp in seconds */
|
|
1232
|
-
timestamp: number;
|
|
1233
|
-
/** Unique trade identifier */
|
|
1234
|
-
trade_id: string;
|
|
1235
|
-
/** Yes outcome price as probability (0-1) */
|
|
1236
|
-
yes_price: number;
|
|
1237
|
-
}
|
|
1238
|
-
interface KalshiTradesParams {
|
|
1239
|
-
/** Market ticker identifier */
|
|
1240
|
-
ticker: string;
|
|
1241
|
-
/** Filter by taker side: `yes` or `no` */
|
|
1242
|
-
taker_side?: 'yes' | 'no';
|
|
1243
|
-
/** Minimum notional volume in USD (each contract = $1) */
|
|
1244
|
-
min_amount?: number;
|
|
1245
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
1246
|
-
from?: string;
|
|
1247
|
-
/** End of time range. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
1248
|
-
to?: string;
|
|
1249
|
-
/** Field to sort results by — @default 'timestamp' */
|
|
1250
|
-
sort_by?: 'timestamp' | 'notional_volume_usd';
|
|
1251
|
-
/** Sort order — @default 'desc' */
|
|
1252
|
-
order?: 'asc' | 'desc';
|
|
1253
|
-
/** Results per page — @default '50' */
|
|
1254
|
-
limit?: number;
|
|
1255
|
-
/** Pagination offset — @default '0' */
|
|
1256
|
-
offset?: number;
|
|
1257
|
-
}
|
|
1258
|
-
interface KalshiVolumesItem {
|
|
1259
|
-
/** Notional volume in USD (each contract counted as $1) */
|
|
1260
|
-
notional_volume_usd: number;
|
|
1261
|
-
/** Unix timestamp in seconds (midnight UTC for the trading day) */
|
|
1262
|
-
timestamp: number;
|
|
1263
|
-
}
|
|
1264
|
-
interface KalshiVolumesParams {
|
|
1265
|
-
/** Market ticker identifier */
|
|
1266
|
-
ticker: string;
|
|
1267
|
-
/** Predefined time range: `7d`, `30d`, `90d`, `180d`, or `1y` — @default '30d' */
|
|
1268
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1269
|
-
}
|
|
1270
|
-
interface MatchingMarketDailyItem {
|
|
1271
|
-
/** Kalshi open interest (contracts) */
|
|
1272
|
-
kalshi_oi_contracts: number;
|
|
1273
|
-
/** Kalshi daily volume (contracts) */
|
|
1274
|
-
kalshi_volume_contracts: number;
|
|
1275
|
-
/** Polymarket open interest (USD) */
|
|
1276
|
-
polymarket_oi_usd: number;
|
|
1277
|
-
/** Polymarket daily volume (USD) */
|
|
1278
|
-
polymarket_volume_usd: number;
|
|
1279
|
-
/** Unix timestamp (midnight UTC) */
|
|
1280
|
-
timestamp: number;
|
|
1281
|
-
}
|
|
1282
|
-
interface MatchingMarketDailyParams {
|
|
1283
|
-
/** Polymarket condition ID */
|
|
1284
|
-
polymarket_condition_id: string;
|
|
1285
|
-
/** Kalshi market ticker */
|
|
1286
|
-
kalshi_market_ticker: string;
|
|
1287
|
-
/** Time range — @default '30d' */
|
|
1288
|
-
time_range?: '1d' | '7d' | '30d' | '90d' | '180d' | '1y' | 'all';
|
|
1289
|
-
/** Maximum rows — @default '200' */
|
|
1290
|
-
limit?: number;
|
|
1291
|
-
/** Pagination offset — @default '0' */
|
|
1292
|
-
offset?: number;
|
|
1293
|
-
}
|
|
1294
|
-
interface MatchingMarketFindItem {
|
|
1295
|
-
/** Market category */
|
|
1296
|
-
category: string;
|
|
1297
|
-
/** Match confidence score (75-100) */
|
|
1298
|
-
confidence: number;
|
|
1299
|
-
kalshi: MatchingMarketFindItemKalshi;
|
|
1300
|
-
/** Match type: exact or related */
|
|
1301
|
-
match_type: string;
|
|
1302
|
-
polymarket: MatchingMarketFindItemPolymarket;
|
|
1303
|
-
}
|
|
1304
|
-
interface MatchingMarketFindItemKalshi {
|
|
1305
|
-
/** Kalshi event ticker */
|
|
1306
|
-
event_ticker: string;
|
|
1307
|
-
/** Kalshi market ticker */
|
|
1308
|
-
market_ticker: string;
|
|
1309
|
-
/** Open interest in contracts */
|
|
1310
|
-
open_interest: number;
|
|
1311
|
-
/** Market status */
|
|
1312
|
-
status: string;
|
|
1313
|
-
/** Market title */
|
|
1314
|
-
title: string;
|
|
1315
|
-
/** Total volume in contracts */
|
|
1316
|
-
volume_contracts: number;
|
|
1317
|
-
}
|
|
1318
|
-
interface MatchingMarketFindItemPolymarket {
|
|
1319
|
-
/** Polymarket condition identifier */
|
|
1320
|
-
condition_id: string;
|
|
1321
|
-
/** Event slug identifier */
|
|
1322
|
-
event_slug: string;
|
|
1323
|
-
/** Whether the market is currently active */
|
|
1324
|
-
is_active: boolean;
|
|
1325
|
-
/** Market question text */
|
|
1326
|
-
question: string;
|
|
1327
|
-
/** Total trading volume (USD) */
|
|
1328
|
-
volume_usd: number;
|
|
1329
|
-
}
|
|
1330
|
-
interface MatchingMarketFindParams {
|
|
1331
|
-
/** Polymarket condition ID to find match for */
|
|
1332
|
-
polymarket_condition_id?: string;
|
|
1333
|
-
/** Kalshi market ticker to find match for */
|
|
1334
|
-
kalshi_market_ticker?: string;
|
|
1335
|
-
/** Maximum rows to return — @default '20' */
|
|
1336
|
-
limit?: number;
|
|
1337
|
-
/** Pagination offset — @default '0' */
|
|
1338
|
-
offset?: number;
|
|
1339
|
-
}
|
|
1340
|
-
interface MatchingMarketPairsItem {
|
|
1341
|
-
/** Market category */
|
|
1342
|
-
category: string;
|
|
1343
|
-
/** Match confidence score (75-100) */
|
|
1344
|
-
confidence: number;
|
|
1345
|
-
kalshi: MatchingMarketPairsItemKalshi;
|
|
1346
|
-
/** Match type: exact or related */
|
|
1347
|
-
match_type: string;
|
|
1348
|
-
polymarket: MatchingMarketPairsItemPolymarket;
|
|
1349
|
-
}
|
|
1350
|
-
interface MatchingMarketPairsItemKalshi {
|
|
1351
|
-
/** Kalshi event ticker */
|
|
1352
|
-
event_ticker: string;
|
|
1353
|
-
/** Kalshi market ticker */
|
|
1354
|
-
market_ticker: string;
|
|
1355
|
-
/** Open interest in contracts */
|
|
1356
|
-
open_interest: number;
|
|
1357
|
-
/** Market status */
|
|
1358
|
-
status: string;
|
|
1359
|
-
/** Market title */
|
|
1360
|
-
title: string;
|
|
1361
|
-
/** Total volume in contracts */
|
|
1362
|
-
volume_contracts: number;
|
|
1363
|
-
}
|
|
1364
|
-
interface MatchingMarketPairsItemPolymarket {
|
|
1365
|
-
/** Polymarket condition identifier */
|
|
1366
|
-
condition_id: string;
|
|
1367
|
-
/** Event slug identifier */
|
|
1368
|
-
event_slug: string;
|
|
1369
|
-
/** Whether the market is currently active */
|
|
1370
|
-
is_active: boolean;
|
|
1371
|
-
/** Market question text */
|
|
1372
|
-
question: string;
|
|
1373
|
-
/** Total trading volume (USD) */
|
|
1374
|
-
volume_usd: number;
|
|
1375
|
-
}
|
|
1376
|
-
interface MatchingMarketPairsParams {
|
|
1377
|
-
/** Filter by category */
|
|
1378
|
-
category?: 'crypto' | 'culture' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports';
|
|
1379
|
-
/** Filter by match type */
|
|
1380
|
-
match_type?: 'exact' | 'related';
|
|
1381
|
-
/** Only return pairs where both markets are currently active — @default 'False' */
|
|
1382
|
-
active_only?: boolean;
|
|
1383
|
-
/** Minimum confidence score (0-100) — @default '0' */
|
|
1384
|
-
min_confidence?: number;
|
|
1385
|
-
/** Sort field — @default 'confidence' */
|
|
1386
|
-
sort_by?: 'confidence' | 'polymarket_volume' | 'kalshi_volume';
|
|
1387
|
-
/** Sort order — @default 'desc' */
|
|
1388
|
-
order?: 'asc' | 'desc';
|
|
1389
|
-
/** Maximum rows to return — @default '20' */
|
|
1390
|
-
limit?: number;
|
|
1391
|
-
/** Pagination offset — @default '0' */
|
|
1392
|
-
offset?: number;
|
|
1393
|
-
}
|
|
1394
|
-
interface PolymarketActivityItem {
|
|
1395
|
-
/** Market condition identifier */
|
|
1396
|
-
condition_id: string;
|
|
1397
|
-
/** Outcome label */
|
|
1398
|
-
outcome: string;
|
|
1399
|
-
/** Trade price (0-1) */
|
|
1400
|
-
price: number;
|
|
1401
|
-
/** Trade side */
|
|
1402
|
-
side: string;
|
|
1403
|
-
/** Trade size in shares */
|
|
1404
|
-
size: number;
|
|
1405
|
-
/** Activity Unix timestamp in seconds */
|
|
1406
|
-
timestamp: number;
|
|
1407
|
-
/** Market title */
|
|
1408
|
-
title: string;
|
|
1409
|
-
/** Transaction hash */
|
|
1410
|
-
transaction_hash: string;
|
|
1411
|
-
/** Activity type such as `buy`, `sell`, or `redeem` */
|
|
1412
|
-
type: string;
|
|
1413
|
-
/** Trade size in USDC */
|
|
1414
|
-
usdc_size: number;
|
|
1415
|
-
}
|
|
1416
|
-
interface PolymarketActivityParams {
|
|
1417
|
-
/** Polymarket proxy wallet address */
|
|
1418
|
-
address: string;
|
|
1419
|
-
/** Results per page — @default '50' */
|
|
1420
|
-
limit?: number;
|
|
1421
|
-
/** Pagination offset — @default '0' */
|
|
1422
|
-
offset?: number;
|
|
1423
|
-
}
|
|
1424
|
-
interface PolymarketEventsItem {
|
|
1425
|
-
/** Surf curated event category */
|
|
1426
|
-
category?: string;
|
|
1427
|
-
/** Event description */
|
|
1428
|
-
description?: string;
|
|
1429
|
-
/** Event end time (Unix seconds) */
|
|
1430
|
-
end_time?: number;
|
|
1431
|
-
/** Event identifier slug */
|
|
1432
|
-
event_slug: string;
|
|
1433
|
-
/** Event image URL */
|
|
1434
|
-
image?: string;
|
|
1435
|
-
/** Number of markets in this event */
|
|
1436
|
-
market_count: number;
|
|
1437
|
-
/** Markets within this event */
|
|
1438
|
-
markets: PolymarketEventsItemMarketsItem[];
|
|
1439
|
-
/** Resolution source URL */
|
|
1440
|
-
settlement_sources?: string;
|
|
1441
|
-
/** Event start time (Unix seconds) */
|
|
1442
|
-
start_time?: number;
|
|
1443
|
-
/** Event status: `open` if any market is open, `closed` if all markets are closed */
|
|
1444
|
-
status: string;
|
|
1445
|
-
/** Surf curated event subcategory */
|
|
1446
|
-
subcategory?: string;
|
|
1447
|
-
/** Event tags */
|
|
1448
|
-
tags?: unknown;
|
|
1449
|
-
/** Event title */
|
|
1450
|
-
title: string;
|
|
1451
|
-
/** Total event volume across all markets (USD) */
|
|
1452
|
-
volume_total: number;
|
|
1453
|
-
}
|
|
1454
|
-
interface PolymarketEventsItemMarketsItem {
|
|
1455
|
-
/** Surf curated market category */
|
|
1456
|
-
category?: string;
|
|
1457
|
-
/** Market close time (Unix seconds) */
|
|
1458
|
-
close_time?: number;
|
|
1459
|
-
/** Resolution time (Unix seconds) */
|
|
1460
|
-
completed_time?: number;
|
|
1461
|
-
/** Unique condition identifier */
|
|
1462
|
-
condition_id: string;
|
|
1463
|
-
/** Market description */
|
|
1464
|
-
description?: string;
|
|
1465
|
-
/** Market end time (Unix seconds) */
|
|
1466
|
-
end_time?: number;
|
|
1467
|
-
/** Event identifier slug */
|
|
1468
|
-
event_slug?: string;
|
|
1469
|
-
/** Game start time for sports markets (Unix seconds) */
|
|
1470
|
-
game_start_time?: number;
|
|
1471
|
-
/** Market image URL */
|
|
1472
|
-
image?: string;
|
|
1473
|
-
/** Market identifier slug */
|
|
1474
|
-
market_slug: string;
|
|
1475
|
-
/** Negative risk market identifier */
|
|
1476
|
-
negative_risk_id?: string;
|
|
1477
|
-
/** Link to Polymarket page */
|
|
1478
|
-
polymarket_link?: string;
|
|
1479
|
-
/** URL to resolution data source */
|
|
1480
|
-
resolution_source?: string;
|
|
1481
|
-
side_a?: PolymarketEventsItemMarketsItemSideA;
|
|
1482
|
-
side_b?: PolymarketEventsItemMarketsItemSideB;
|
|
1483
|
-
/** Market start time (Unix seconds) */
|
|
1484
|
-
start_time?: number;
|
|
1485
|
-
/** Market status: `open` or `closed` */
|
|
1486
|
-
status: string;
|
|
1487
|
-
/** Surf curated market subcategory */
|
|
1488
|
-
subcategory?: string;
|
|
1489
|
-
/** Market tags */
|
|
1490
|
-
tags?: unknown;
|
|
1491
|
-
/** Market title */
|
|
1492
|
-
title: string;
|
|
1493
|
-
/** Trading volume in the past month (USD) */
|
|
1494
|
-
volume_1_month: number;
|
|
1495
|
-
/** Trading volume in the past week (USD) */
|
|
1496
|
-
volume_1_week: number;
|
|
1497
|
-
/** Trading volume in the past year (USD) */
|
|
1498
|
-
volume_1_year: number;
|
|
1499
|
-
/** Total trading volume (USD) */
|
|
1500
|
-
volume_total: number;
|
|
1501
|
-
/** Winning outcome label, if resolved */
|
|
1502
|
-
winning_side?: string;
|
|
1503
|
-
}
|
|
1504
|
-
interface PolymarketEventsItemMarketsItemSideA {
|
|
1505
|
-
/** Token identifier for this outcome */
|
|
1506
|
-
id: string;
|
|
1507
|
-
/** Outcome label */
|
|
1508
|
-
label: string;
|
|
1509
|
-
}
|
|
1510
|
-
interface PolymarketEventsItemMarketsItemSideB {
|
|
1511
|
-
/** Token identifier for this outcome */
|
|
1512
|
-
id: string;
|
|
1513
|
-
/** Outcome label */
|
|
1514
|
-
label: string;
|
|
1515
|
-
}
|
|
1516
|
-
interface PolymarketEventsParams {
|
|
1517
|
-
/** Event slug identifier */
|
|
1518
|
-
event_slug: string;
|
|
1519
|
-
/** Results per page — @default '20' */
|
|
1520
|
-
limit?: number;
|
|
1521
|
-
/** Pagination offset — @default '0' */
|
|
1522
|
-
offset?: number;
|
|
1523
|
-
}
|
|
1524
|
-
interface PolymarketMarketsItem {
|
|
1525
|
-
/** Surf curated market category */
|
|
1526
|
-
category?: string;
|
|
1527
|
-
/** Market close time (Unix seconds) */
|
|
1528
|
-
close_time?: number;
|
|
1529
|
-
/** Resolution time (Unix seconds) */
|
|
1530
|
-
completed_time?: number;
|
|
1531
|
-
/** Unique condition identifier */
|
|
1532
|
-
condition_id: string;
|
|
1533
|
-
/** Market description */
|
|
1534
|
-
description?: string;
|
|
1535
|
-
/** Market end time (Unix seconds) */
|
|
1536
|
-
end_time?: number;
|
|
1537
|
-
/** Event identifier slug */
|
|
1538
|
-
event_slug?: string;
|
|
1539
|
-
/** Game start time for sports markets (Unix seconds) */
|
|
1540
|
-
game_start_time?: number;
|
|
1541
|
-
/** Market image URL */
|
|
1542
|
-
image?: string;
|
|
1543
|
-
/** Market identifier slug */
|
|
1544
|
-
market_slug: string;
|
|
1545
|
-
/** Negative risk market identifier */
|
|
1546
|
-
negative_risk_id?: string;
|
|
1547
|
-
/** Link to Polymarket page */
|
|
1548
|
-
polymarket_link?: string;
|
|
1549
|
-
/** URL to resolution data source */
|
|
1550
|
-
resolution_source?: string;
|
|
1551
|
-
side_a?: PolymarketMarketsItemSideA;
|
|
1552
|
-
side_b?: PolymarketMarketsItemSideB;
|
|
1553
|
-
/** Market start time (Unix seconds) */
|
|
1554
|
-
start_time?: number;
|
|
1555
|
-
/** Market status: `open` or `closed` */
|
|
1556
|
-
status: string;
|
|
1557
|
-
/** Surf curated market subcategory */
|
|
1558
|
-
subcategory?: string;
|
|
1559
|
-
/** Market tags */
|
|
1560
|
-
tags?: unknown;
|
|
1561
|
-
/** Market title */
|
|
1562
|
-
title: string;
|
|
1563
|
-
/** Trading volume in the past month (USD) */
|
|
1564
|
-
volume_1_month: number;
|
|
1565
|
-
/** Trading volume in the past week (USD) */
|
|
1566
|
-
volume_1_week: number;
|
|
1567
|
-
/** Trading volume in the past year (USD) */
|
|
1568
|
-
volume_1_year: number;
|
|
1569
|
-
/** Total trading volume (USD) */
|
|
1570
|
-
volume_total: number;
|
|
1571
|
-
/** Winning outcome label, if resolved */
|
|
1572
|
-
winning_side?: string;
|
|
1573
|
-
}
|
|
1574
|
-
interface PolymarketMarketsItemSideA {
|
|
1575
|
-
/** Token identifier for this outcome */
|
|
1576
|
-
id: string;
|
|
1577
|
-
/** Outcome label */
|
|
1578
|
-
label: string;
|
|
1579
|
-
}
|
|
1580
|
-
interface PolymarketMarketsItemSideB {
|
|
1581
|
-
/** Token identifier for this outcome */
|
|
1582
|
-
id: string;
|
|
1583
|
-
/** Outcome label */
|
|
1584
|
-
label: string;
|
|
1585
|
-
}
|
|
1586
|
-
interface PolymarketMarketsParams {
|
|
1587
|
-
/** Market slug identifier */
|
|
1588
|
-
market_slug: string;
|
|
1589
|
-
/** Results per page — @default '20' */
|
|
1590
|
-
limit?: number;
|
|
1591
|
-
/** Pagination offset — @default '0' */
|
|
1592
|
-
offset?: number;
|
|
1593
|
-
}
|
|
1594
|
-
interface PolymarketOpenInterestItem {
|
|
1595
|
-
/** Daily net change in USD */
|
|
1596
|
-
daily_net_change_usd: number;
|
|
1597
|
-
/** Open interest in USD */
|
|
1598
|
-
open_interest_usd: number;
|
|
1599
|
-
/** Unix timestamp in seconds (midnight UTC) */
|
|
1600
|
-
timestamp: number;
|
|
1601
|
-
}
|
|
1602
|
-
interface PolymarketOpenInterestParams {
|
|
1603
|
-
/** Market condition identifier */
|
|
1604
|
-
condition_id: string;
|
|
1605
|
-
/** Predefined time range — @default '30d' */
|
|
1606
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1607
|
-
}
|
|
1608
|
-
interface PolymarketPositionsItem {
|
|
1609
|
-
/** Average entry price (0-1) */
|
|
1610
|
-
avg_price: number;
|
|
1611
|
-
/** Unrealized profit and loss in USD */
|
|
1612
|
-
cash_pnl: number;
|
|
1613
|
-
/** Market condition identifier */
|
|
1614
|
-
condition_id: string;
|
|
1615
|
-
/** Current market price (0-1) */
|
|
1616
|
-
cur_price: number;
|
|
1617
|
-
/** Current position value in USD */
|
|
1618
|
-
current_value: number;
|
|
1619
|
-
/** Outcome label */
|
|
1620
|
-
outcome_label: string;
|
|
1621
|
-
/** Market question */
|
|
1622
|
-
question: string;
|
|
1623
|
-
/** Realized profit and loss in USD */
|
|
1624
|
-
realized_pnl: number;
|
|
1625
|
-
/** Whether the position is redeemable */
|
|
1626
|
-
redeemable: boolean;
|
|
1627
|
-
/** Position size in shares */
|
|
1628
|
-
size: number;
|
|
1629
|
-
}
|
|
1630
|
-
interface PolymarketPositionsParams {
|
|
1631
|
-
/** Polymarket proxy wallet address */
|
|
1632
|
-
address: string;
|
|
1633
|
-
/** Results per page — @default '50' */
|
|
1634
|
-
limit?: number;
|
|
1635
|
-
/** Pagination offset — @default '0' */
|
|
1636
|
-
offset?: number;
|
|
1637
|
-
}
|
|
1638
|
-
interface PolymarketPricesItem {
|
|
1639
|
-
side_a?: PolymarketPricesItemSideA;
|
|
1640
|
-
side_b?: PolymarketPricesItemSideB;
|
|
1641
|
-
/** Interval start Unix timestamp in seconds */
|
|
1642
|
-
timestamp: number;
|
|
1643
|
-
}
|
|
1644
|
-
interface PolymarketPricesItemSideA {
|
|
1645
|
-
/** Outcome label such as `Yes` or `No` */
|
|
1646
|
-
label: string;
|
|
1647
|
-
/** Average price over the interval (0-1) */
|
|
1648
|
-
price: number;
|
|
1649
|
-
/** Outcome token identifier */
|
|
1650
|
-
token_id: string;
|
|
1651
|
-
}
|
|
1652
|
-
interface PolymarketPricesItemSideB {
|
|
1653
|
-
/** Outcome label such as `Yes` or `No` */
|
|
1654
|
-
label: string;
|
|
1655
|
-
/** Average price over the interval (0-1) */
|
|
1656
|
-
price: number;
|
|
1657
|
-
/** Outcome token identifier */
|
|
1658
|
-
token_id: string;
|
|
1659
|
-
}
|
|
1660
|
-
interface PolymarketPricesParams {
|
|
1661
|
-
/** Market condition identifier */
|
|
1662
|
-
condition_id: string;
|
|
1663
|
-
/** Predefined time range. Ignored when `interval` is `latest`. — @default '30d' */
|
|
1664
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1665
|
-
/** Aggregation interval: `1h` (hourly), `1d` (daily), or `latest` (most recent snapshot) — @default '1d' */
|
|
1666
|
-
interval?: '1h' | '1d' | 'latest';
|
|
1667
|
-
}
|
|
1668
|
-
interface PolymarketRankingItem {
|
|
1669
|
-
/** Surf curated market category */
|
|
1670
|
-
category?: string;
|
|
1671
|
-
/** Unique condition identifier */
|
|
1672
|
-
condition_id: string;
|
|
1673
|
-
/** Market end time (Unix seconds) */
|
|
1674
|
-
end_time?: number;
|
|
1675
|
-
/** Notional trading volume (USD) */
|
|
1676
|
-
notional_volume_usd: number;
|
|
1677
|
-
/** Current open interest (USD) */
|
|
1678
|
-
open_interest_usd: number;
|
|
1679
|
-
/** Link to Polymarket page */
|
|
1680
|
-
polymarket_link?: string;
|
|
1681
|
-
/** Market question text */
|
|
1682
|
-
question: string;
|
|
1683
|
-
/** Market status */
|
|
1684
|
-
status: string;
|
|
1685
|
-
/** Surf curated market subcategory */
|
|
1686
|
-
subcategory?: string;
|
|
1687
|
-
/** Market tags */
|
|
1688
|
-
tags?: unknown;
|
|
1689
|
-
}
|
|
1690
|
-
interface PolymarketRankingParams {
|
|
1691
|
-
/** Sort by last day's `notional_volume_usd` or `open_interest` — @default 'notional_volume_usd' */
|
|
1692
|
-
sort_by?: 'notional_volume_usd' | 'open_interest';
|
|
1693
|
-
/** Sort order — @default 'desc' */
|
|
1694
|
-
order?: 'asc' | 'desc';
|
|
1695
|
-
/** Market status filter: `active`, `finalized`, `ended`, `initialized`, or `closed` — @default 'active' */
|
|
1696
|
-
status?: 'active' | 'finalized' | 'ended' | 'initialized' | 'closed';
|
|
1697
|
-
/** Filter by Surf-curated category */
|
|
1698
|
-
category?: 'crypto' | 'culture' | 'early_polymarket_trades' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports' | 'unknown';
|
|
1699
|
-
/** Filter markets ending within this window from now: `24h`, `3d`, `7d`, `14d`, or `30d` */
|
|
1700
|
-
end_before?: '24h' | '3d' | '7d' | '14d' | '30d';
|
|
1701
|
-
/** Results per page — @default '20' */
|
|
1702
|
-
limit?: number;
|
|
1703
|
-
/** Pagination offset — @default '0' */
|
|
1704
|
-
offset?: number;
|
|
1705
|
-
}
|
|
1706
|
-
interface PolymarketTradesItem {
|
|
1707
|
-
/** Trade amount in USD */
|
|
1708
|
-
amount_usd: number;
|
|
1709
|
-
/** Block number */
|
|
1710
|
-
block_number: number;
|
|
1711
|
-
/** Trade Unix timestamp in seconds */
|
|
1712
|
-
block_time: number;
|
|
1713
|
-
/** Market condition identifier */
|
|
1714
|
-
condition_id: string;
|
|
1715
|
-
/** Event log index */
|
|
1716
|
-
evt_index: number;
|
|
1717
|
-
/** Exchange contract address */
|
|
1718
|
-
exchange_address: string;
|
|
1719
|
-
/** Fee amount in USD */
|
|
1720
|
-
fee_usd: number;
|
|
1721
|
-
/** Maker wallet address */
|
|
1722
|
-
maker_address: string;
|
|
1723
|
-
/** Whether this is a negative risk trade */
|
|
1724
|
-
neg_risk: boolean;
|
|
1725
|
-
/** Outcome label such as `Yes` or `No` */
|
|
1726
|
-
outcome_label: string;
|
|
1727
|
-
/** Outcome token identifier */
|
|
1728
|
-
outcome_token_id: string;
|
|
1729
|
-
/** Trade price (0-1) */
|
|
1730
|
-
price: number;
|
|
1731
|
-
/** Market question text */
|
|
1732
|
-
question: string;
|
|
1733
|
-
/** Number of shares traded */
|
|
1734
|
-
shares: number;
|
|
1735
|
-
/** Taker wallet address */
|
|
1736
|
-
taker_address: string;
|
|
1737
|
-
/** Transaction hash */
|
|
1738
|
-
tx_hash: string;
|
|
1739
|
-
}
|
|
1740
|
-
interface PolymarketTradesParams {
|
|
1741
|
-
/** Market condition identifier */
|
|
1742
|
-
condition_id?: string;
|
|
1743
|
-
/** Wallet address — returns trades where the address is maker or taker */
|
|
1744
|
-
address?: string;
|
|
1745
|
-
/** Filter by outcome label: `Yes` or `No` */
|
|
1746
|
-
outcome_label?: 'Yes' | 'No';
|
|
1747
|
-
/** Minimum trade amount in USD */
|
|
1748
|
-
min_amount?: number;
|
|
1749
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
1750
|
-
from?: string;
|
|
1751
|
-
/** End of time range. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
1752
|
-
to?: string;
|
|
1753
|
-
/** Field to sort results by — @default 'timestamp' */
|
|
1754
|
-
sort_by?: 'timestamp' | 'notional_volume_usd';
|
|
1755
|
-
/** Results per page — @default '50' */
|
|
1756
|
-
limit?: number;
|
|
1757
|
-
/** Pagination offset — @default '0' */
|
|
1758
|
-
offset?: number;
|
|
1759
|
-
}
|
|
1760
|
-
interface PolymarketVolumesItem {
|
|
1761
|
-
/** Notional trading volume in USD */
|
|
1762
|
-
notional_volume_usd: number;
|
|
1763
|
-
/** Interval start Unix timestamp in seconds */
|
|
1764
|
-
timestamp: number;
|
|
1765
|
-
/** Number of trades */
|
|
1766
|
-
trade_count: number;
|
|
1767
|
-
}
|
|
1768
|
-
interface PolymarketVolumesParams {
|
|
1769
|
-
/** Market condition identifier */
|
|
1770
|
-
condition_id: string;
|
|
1771
|
-
/** Predefined time range — @default '30d' */
|
|
1772
|
-
time_range?: '7d' | '30d' | '90d' | '180d' | '1y';
|
|
1773
|
-
/** Aggregation interval: `1h` (hourly) or `1d` (daily) — @default '1d' */
|
|
1774
|
-
interval?: '1h' | '1d';
|
|
1775
|
-
}
|
|
1776
|
-
interface ProjectDefiMetricsItem {
|
|
1777
|
-
/** Unix timestamp in seconds for this data point */
|
|
1778
|
-
timestamp: number;
|
|
1779
|
-
/** Metric value at this timestamp */
|
|
1780
|
-
value: number;
|
|
1781
|
-
}
|
|
1782
|
-
interface ProjectDefiMetricsParams {
|
|
1783
|
-
/** Surf project UUID. PREFERRED — always use this when available from a previous response (e.g. project_id from /fund/portfolio or id from /search/project). Takes priority over q. */
|
|
1784
|
-
id?: string;
|
|
1785
|
-
/** Fuzzy entity name search. Only use when 'id' is not available. May return unexpected results for ambiguous names. */
|
|
1786
|
-
q?: string;
|
|
1787
|
-
/** Metric to query. Can be `volume`, `fees` (or `fee` alias), `revenue`, `tvl`, or `users`. */
|
|
1788
|
-
metric: 'volume' | 'fee' | 'fees' | 'revenue' | 'tvl' | 'users';
|
|
1789
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
1790
|
-
from?: string;
|
|
1791
|
-
/** End of time range. Accepts Unix seconds (`1706745600`) or date string (`2024-02-01`) */
|
|
1792
|
-
to?: string;
|
|
1793
|
-
/** Filter by chain. Can be `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `base`, `avalanche`, `fantom`, or `solana`. */
|
|
1794
|
-
chain?: 'ethereum' | 'polygon' | 'bsc' | 'arbitrum' | 'optimism' | 'base' | 'avalanche' | 'fantom' | 'solana';
|
|
1795
|
-
/** Results per page — @default '20' */
|
|
1796
|
-
limit?: number;
|
|
1797
|
-
/** Pagination offset — @default '0' */
|
|
1798
|
-
offset?: number;
|
|
1799
|
-
}
|
|
1800
|
-
interface ProjectDefiRankingItem {
|
|
1801
|
-
fees?: number;
|
|
1802
|
-
/** Project logo image URL */
|
|
1803
|
-
logo_url?: string;
|
|
1804
|
-
name: string;
|
|
1805
|
-
revenue?: number;
|
|
1806
|
-
symbol?: string;
|
|
1807
|
-
tvl?: number;
|
|
1808
|
-
users?: number;
|
|
1809
|
-
volume?: number;
|
|
1810
|
-
}
|
|
1811
|
-
interface ProjectDefiRankingParams {
|
|
1812
|
-
/** Ranking metric. Can be `tvl`, `revenue`, `fees`, `volume`, or `users`. */
|
|
1813
|
-
metric: 'tvl' | 'revenue' | 'fees' | 'volume' | 'users';
|
|
1814
|
-
/** Results per page — @default '20' */
|
|
1815
|
-
limit?: number;
|
|
1816
|
-
/** Pagination offset — @default '0' */
|
|
1817
|
-
offset?: number;
|
|
1818
|
-
}
|
|
1819
|
-
interface ProjectDetailData {
|
|
1820
|
-
contracts?: ProjectDetailDataContracts;
|
|
1821
|
-
funding?: ProjectDetailDataFunding;
|
|
1822
|
-
overview?: ProjectDetailDataOverview;
|
|
1823
|
-
social?: ProjectDetailDataSocial;
|
|
1824
|
-
team?: ProjectDetailDataTeam;
|
|
1825
|
-
tge_status?: ProjectDetailDataTgeStatus;
|
|
1826
|
-
token_info?: ProjectDetailDataTokenInfo;
|
|
1827
|
-
tokenomics?: ProjectDetailDataTokenomics;
|
|
1828
|
-
}
|
|
1829
|
-
interface ProjectDetailDataContracts {
|
|
1830
|
-
/** List of deployed smart contract addresses across chains */
|
|
1831
|
-
contracts?: ProjectDetailDataContractsContractsItem[];
|
|
1832
|
-
}
|
|
1833
|
-
interface ProjectDetailDataFunding {
|
|
1834
|
-
/** List of individual funding rounds */
|
|
1835
|
-
rounds?: ProjectDetailDataFundingRoundsItem[];
|
|
1836
|
-
/** Total capital raised across all rounds in USD */
|
|
1837
|
-
total_raise?: number;
|
|
1838
|
-
}
|
|
1839
|
-
interface ProjectDetailDataOverview {
|
|
1840
|
-
/** Chains the project is deployed on */
|
|
1841
|
-
chains?: unknown;
|
|
1842
|
-
/** Short description of the project */
|
|
1843
|
-
description?: string;
|
|
1844
|
-
/** Exchange names where the token is listed */
|
|
1845
|
-
exchanges?: unknown;
|
|
1846
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup. Prefer over 'q' (fuzzy name search). */
|
|
1847
|
-
id: string;
|
|
1848
|
-
/** Project logo image URL */
|
|
1849
|
-
logo_url?: string;
|
|
1850
|
-
/** Project name */
|
|
1851
|
-
name: string;
|
|
1852
|
-
/** URL-friendly project slug */
|
|
1853
|
-
slug?: string;
|
|
1854
|
-
/** Project category tags like `DeFi`, `NFT`, or `Layer2` */
|
|
1855
|
-
tags?: unknown;
|
|
1856
|
-
/** TGE status: pre, upcoming, or post */
|
|
1857
|
-
tge_status?: string;
|
|
1858
|
-
/** Primary token ticker symbol */
|
|
1859
|
-
token_symbol?: string;
|
|
1860
|
-
/** Project official website URL */
|
|
1861
|
-
website?: string;
|
|
1862
|
-
/** Number of X (Twitter) followers */
|
|
1863
|
-
x_followers: number;
|
|
1864
|
-
/** X (Twitter) handle without the @ prefix */
|
|
1865
|
-
x_handle?: string;
|
|
1866
|
-
}
|
|
1867
|
-
interface ProjectDetailDataSocial {
|
|
1868
|
-
discord?: ProjectDetailDataSocialDiscord;
|
|
1869
|
-
github?: ProjectDetailDataSocialGithub;
|
|
1870
|
-
telegram?: ProjectDetailDataSocialTelegram;
|
|
1871
|
-
twitter?: ProjectDetailDataSocialTwitter;
|
|
1872
|
-
}
|
|
1873
|
-
interface ProjectDetailDataTeam {
|
|
1874
|
-
/** List of team members with their roles and social links */
|
|
1875
|
-
members?: ProjectDetailDataTeamMembersItem[];
|
|
1876
|
-
}
|
|
1877
|
-
interface ProjectDetailDataTgeStatus {
|
|
1878
|
-
/** TGE status: `pre`, `upcoming`, or `post`. Omitted when unknown. */
|
|
1879
|
-
current_status?: string;
|
|
1880
|
-
/** Exchange names where the token is listed */
|
|
1881
|
-
exchanges?: unknown;
|
|
1882
|
-
/** Unix timestamp of the last TGE event */
|
|
1883
|
-
last_event_time?: number;
|
|
1884
|
-
}
|
|
1885
|
-
interface ProjectDetailDataTokenInfo {
|
|
1886
|
-
/** All-time high price in USD */
|
|
1887
|
-
all_time_high?: number;
|
|
1888
|
-
/** All-time low price in USD */
|
|
1889
|
-
all_time_low?: number;
|
|
1890
|
-
/** Circulating token supply */
|
|
1891
|
-
circulating_supply?: number;
|
|
1892
|
-
/** Fully diluted valuation in USD */
|
|
1893
|
-
fdv?: number;
|
|
1894
|
-
/** 24-hour high price in USD */
|
|
1895
|
-
high_24h?: number;
|
|
1896
|
-
/** Token logo image URL */
|
|
1897
|
-
image?: string;
|
|
1898
|
-
/** 24-hour low price in USD */
|
|
1899
|
-
low_24h?: number;
|
|
1900
|
-
/** Market capitalization in USD */
|
|
1901
|
-
market_cap_usd?: number;
|
|
1902
|
-
/** Full token name */
|
|
1903
|
-
name: string;
|
|
1904
|
-
/** 24-hour price change percentage */
|
|
1905
|
-
price_change_24h?: number;
|
|
1906
|
-
/** 30-day price change percentage */
|
|
1907
|
-
price_change_30d?: number;
|
|
1908
|
-
/** 7-day price change percentage */
|
|
1909
|
-
price_change_7d?: number;
|
|
1910
|
-
/** Current price in USD */
|
|
1911
|
-
price_usd?: number;
|
|
1912
|
-
/** Token ticker symbol */
|
|
1913
|
-
symbol: string;
|
|
1914
|
-
/** Total token supply */
|
|
1915
|
-
total_supply?: number;
|
|
1916
|
-
/** 24-hour trading volume in USD */
|
|
1917
|
-
volume_24h?: number;
|
|
1918
|
-
}
|
|
1919
|
-
interface ProjectDetailDataTokenomics {
|
|
1920
|
-
/** Number of tokens currently in public circulation */
|
|
1921
|
-
circulating_supply?: number;
|
|
1922
|
-
/** Fully diluted valuation in USD */
|
|
1923
|
-
fdv?: number;
|
|
1924
|
-
/** Total market capitalization in USD */
|
|
1925
|
-
market_cap_usd?: number;
|
|
1926
|
-
/** Total token supply */
|
|
1927
|
-
total_supply?: number;
|
|
1928
|
-
}
|
|
1929
|
-
interface ProjectDetailDataContractsContractsItem {
|
|
1930
|
-
/** Contract address on the specified chain */
|
|
1931
|
-
address: string;
|
|
1932
|
-
/** Chain name like `ethereum`, `bsc`, or `solana` */
|
|
1933
|
-
chain: string;
|
|
1934
|
-
/** Human-readable label for this contract like `Token` or `Staking` */
|
|
1935
|
-
label?: string;
|
|
1936
|
-
}
|
|
1937
|
-
interface ProjectDetailDataFundingRoundsItem {
|
|
1938
|
-
/** Amount raised in USD */
|
|
1939
|
-
amount?: number;
|
|
1940
|
-
/** Date when the round closed in ISO 8601 format */
|
|
1941
|
-
date?: string;
|
|
1942
|
-
/** Investors participating in this round */
|
|
1943
|
-
investors?: ProjectDetailDataFundingRoundsItemInvestorsItem[];
|
|
1944
|
-
/** Funding round name like `Seed`, `Series A`, or `Private` */
|
|
1945
|
-
round_name: string;
|
|
1946
|
-
/** Project valuation at round close in USD */
|
|
1947
|
-
valuation?: number;
|
|
1948
|
-
}
|
|
1949
|
-
interface ProjectDetailDataSocialDiscord {
|
|
1950
|
-
/** Number of followers on this platform */
|
|
1951
|
-
followers_count?: number;
|
|
1952
|
-
/** Username or handle on the social platform */
|
|
1953
|
-
handle?: string;
|
|
1954
|
-
/** Profile URL on the social platform */
|
|
1955
|
-
url?: string;
|
|
1956
|
-
}
|
|
1957
|
-
interface ProjectDetailDataSocialGithub {
|
|
1958
|
-
/** Number of followers on this platform */
|
|
1959
|
-
followers_count?: number;
|
|
1960
|
-
/** Username or handle on the social platform */
|
|
1961
|
-
handle?: string;
|
|
1962
|
-
/** Profile URL on the social platform */
|
|
1963
|
-
url?: string;
|
|
1964
|
-
}
|
|
1965
|
-
interface ProjectDetailDataSocialTelegram {
|
|
1966
|
-
/** Number of followers on this platform */
|
|
1967
|
-
followers_count?: number;
|
|
1968
|
-
/** Username or handle on the social platform */
|
|
1969
|
-
handle?: string;
|
|
1970
|
-
/** Profile URL on the social platform */
|
|
1971
|
-
url?: string;
|
|
1972
|
-
}
|
|
1973
|
-
interface ProjectDetailDataSocialTwitter {
|
|
1974
|
-
/** Number of followers on this platform */
|
|
1975
|
-
followers_count?: number;
|
|
1976
|
-
/** Username or handle on the social platform */
|
|
1977
|
-
handle?: string;
|
|
1978
|
-
/** Profile URL on the social platform */
|
|
1979
|
-
url?: string;
|
|
1980
|
-
}
|
|
1981
|
-
interface ProjectDetailDataTeamMembersItem {
|
|
1982
|
-
/** Team member profile image URL */
|
|
1983
|
-
image?: string;
|
|
1984
|
-
/** Team member's full name */
|
|
1985
|
-
name: string;
|
|
1986
|
-
/** Team member's role or title */
|
|
1987
|
-
role?: string;
|
|
1988
|
-
/** Social profile links keyed by platform name like `twitter` or `linkedin` */
|
|
1989
|
-
social_links?: ProjectDetailDataTeamMembersItemSocialLinks;
|
|
1990
|
-
}
|
|
1991
|
-
interface ProjectDetailDataFundingRoundsItemInvestorsItem {
|
|
1992
|
-
/** Whether this investor led the round */
|
|
1993
|
-
is_lead: boolean;
|
|
1994
|
-
/** Investor logo URL */
|
|
1995
|
-
logo?: string;
|
|
1996
|
-
/** Investor name */
|
|
1997
|
-
name: string;
|
|
1998
|
-
/** Investor type (FUND or PERSON) */
|
|
1999
|
-
type?: string;
|
|
2000
|
-
}
|
|
2001
|
-
interface ProjectDetailDataTeamMembersItemSocialLinks {
|
|
2002
|
-
[key: string]: unknown;
|
|
2003
|
-
}
|
|
2004
|
-
interface ProjectDetailParams {
|
|
2005
|
-
/** Surf project UUID. PREFERRED — always use this when available from a previous response (e.g. project_id from /fund/portfolio or id from /search/project). Takes priority over q. */
|
|
2006
|
-
id?: string;
|
|
2007
|
-
/** Fuzzy entity name search. Only use when 'id' is not available. May return unexpected results for ambiguous names. */
|
|
2008
|
-
q?: string;
|
|
2009
|
-
/** Comma-separated sub-resources to include. Can be `overview`, `token_info`, `tokenomics`, `funding`, `team`, `contracts`, `social`, or `tge_status`. — @default 'overview,token_info,tokenomics,funding,team,contracts,social,tge_status' */
|
|
2010
|
-
fields?: string;
|
|
2011
|
-
}
|
|
2012
|
-
interface SearchAirdropItem {
|
|
2013
|
-
/** Token ticker symbol */
|
|
2014
|
-
coin_symbol?: string;
|
|
2015
|
-
/** X/Twitter follower count (0 if unknown) */
|
|
2016
|
-
followers_count: number;
|
|
2017
|
-
/** Last status change as Unix seconds */
|
|
2018
|
-
last_status_update: number;
|
|
2019
|
-
/** Project logo image URL */
|
|
2020
|
-
logo_url?: string;
|
|
2021
|
-
/** Surf project UUID if linked */
|
|
2022
|
-
project_id?: string;
|
|
2023
|
-
/** Project/coin name */
|
|
2024
|
-
project_name: string;
|
|
2025
|
-
/** Expected reward date as Unix seconds (0 if unknown) */
|
|
2026
|
-
reward_date: number;
|
|
2027
|
-
/** Reward type: airdrop, points, whitelist, nft, role, ambassador */
|
|
2028
|
-
reward_type?: string;
|
|
2029
|
-
/** Airdrop lifecycle stage: `POTENTIAL` (speculated, tasks open), `CONFIRMED` (announced, tasks open), `SNAPSHOT` (eligibility snapshot taken), `VERIFICATION` (claim window open), `REWARD_AVAILABLE` (ready to claim), `DISTRIBUTED` (sent, historical) */
|
|
2030
|
-
status: string;
|
|
2031
|
-
task_summary?: SearchAirdropItemTaskSummary;
|
|
2032
|
-
/** Full task list (only with include_tasks=true) */
|
|
2033
|
-
tasks?: SearchAirdropItemTasksItem[];
|
|
2034
|
-
/** Total project fundraise in USD (0 if unknown) */
|
|
2035
|
-
total_raise: number;
|
|
2036
|
-
/** CryptoRank social score (0 if unknown) */
|
|
2037
|
-
xscore: number;
|
|
2038
|
-
}
|
|
2039
|
-
interface SearchAirdropItemTaskSummary {
|
|
2040
|
-
/** Number of currently open tasks */
|
|
2041
|
-
open: number;
|
|
2042
|
-
/** Total number of tasks */
|
|
2043
|
-
total: number;
|
|
2044
|
-
/** Distinct task types */
|
|
2045
|
-
types: unknown;
|
|
2046
|
-
}
|
|
2047
|
-
interface SearchAirdropItemTasksItem {
|
|
2048
|
-
/** Supported blockchain names */
|
|
2049
|
-
blockchains?: unknown;
|
|
2050
|
-
/** Task close date as Unix seconds (0 if unknown) */
|
|
2051
|
-
close_date: number;
|
|
2052
|
-
/** Participation cost in USD (0 = free) */
|
|
2053
|
-
cost: number;
|
|
2054
|
-
/** Public participation URL */
|
|
2055
|
-
external_link?: string;
|
|
2056
|
-
/** Whether task is exclusive */
|
|
2057
|
-
is_exclusive: boolean;
|
|
2058
|
-
/** Task open date as Unix seconds (0 if unknown) */
|
|
2059
|
-
open_date: number;
|
|
2060
|
-
/** Task status: OPEN, CLOSED, UPCOMING */
|
|
2061
|
-
status: string;
|
|
2062
|
-
/** Estimated time in minutes */
|
|
2063
|
-
time_minutes: number;
|
|
2064
|
-
/** Task title */
|
|
2065
|
-
title: string;
|
|
2066
|
-
/** Task type: social, testnet, mainnet, staking, trading, etc. */
|
|
2067
|
-
type: string;
|
|
2068
|
-
}
|
|
2069
|
-
interface SearchAirdropParams {
|
|
2070
|
-
/** Search keyword for coin name */
|
|
2071
|
-
q?: string;
|
|
2072
|
-
/** Comma-separated lifecycle phases. `active` = tasks open, can participate (POTENTIAL + CONFIRMED). `claimable` = eligible, can claim (SNAPSHOT + VERIFICATION + REWARD_AVAILABLE). `completed` = done (DISTRIBUTED). Defaults to `active,claimable` to show actionable airdrops. — @default 'active,claimable' */
|
|
2073
|
-
phase?: string;
|
|
2074
|
-
/** Filter by reward type */
|
|
2075
|
-
reward_type?: 'airdrop' | 'points' | 'whitelist' | 'nft' | 'role' | 'ambassador';
|
|
2076
|
-
/** Filter activities containing tasks of this type */
|
|
2077
|
-
task_type?: 'social' | 'bounty-platforms' | 'testnet' | 'mainnet' | 'role' | 'form' | 'liquidity' | 'mint-nft' | 'game' | 'trading' | 'staking' | 'depin' | 'node' | 'ambassador' | 'hold' | 'check-wallet' | 'mint-domain' | 'predictions' | 'deploy';
|
|
2078
|
-
/** Only return activities with currently OPEN tasks — @default 'False' */
|
|
2079
|
-
has_open?: boolean;
|
|
2080
|
-
/** Field to sort results by — @default 'last_status_update' */
|
|
2081
|
-
sort_by?: 'total_raise' | 'xscore' | 'last_status_update';
|
|
2082
|
-
/** Sort order — @default 'desc' */
|
|
2083
|
-
order?: 'asc' | 'desc';
|
|
2084
|
-
/** Results per page — @default '20' */
|
|
2085
|
-
limit?: number;
|
|
2086
|
-
/** Pagination offset — @default '0' */
|
|
2087
|
-
offset?: number;
|
|
2088
|
-
/** Include full task list per activity — @default 'False' */
|
|
2089
|
-
include_tasks?: boolean;
|
|
2090
|
-
}
|
|
2091
|
-
interface SearchEventsItem {
|
|
2092
|
-
/** Event date in ISO 8601 format */
|
|
2093
|
-
date?: string;
|
|
2094
|
-
/** Detailed event description */
|
|
2095
|
-
description?: string;
|
|
2096
|
-
/** Project logo image URL */
|
|
2097
|
-
logo_url?: string;
|
|
2098
|
-
/** Short event title */
|
|
2099
|
-
title: string;
|
|
2100
|
-
/** Event type — one of: launch, upgrade, partnership, news, airdrop, listing, twitter */
|
|
2101
|
-
type: string;
|
|
2102
|
-
}
|
|
2103
|
-
interface SearchEventsParams {
|
|
2104
|
-
/** Surf project UUID. PREFERRED — always use this when available from a previous response (e.g. project_id from /fund/portfolio or id from /search/project). Takes priority over q. */
|
|
2105
|
-
id?: string;
|
|
2106
|
-
/** Fuzzy entity name search. Only use when 'id' is not available. May return unexpected results for ambiguous names. */
|
|
2107
|
-
q?: string;
|
|
2108
|
-
/** Filter by event type. Can be `launch`, `upgrade`, `partnership`, `news`, `airdrop`, `listing`, or `twitter`. */
|
|
2109
|
-
type?: 'launch' | 'upgrade' | 'partnership' | 'news' | 'airdrop' | 'listing' | 'twitter';
|
|
2110
|
-
/** Results per page — @default '20' */
|
|
2111
|
-
limit?: number;
|
|
2112
|
-
/** Pagination offset — @default '0' */
|
|
2113
|
-
offset?: number;
|
|
2114
|
-
}
|
|
2115
|
-
interface SearchFundItem {
|
|
2116
|
-
/** Surf fund UUID — pass as 'id' parameter to /fund/detail or /fund/portfolio for exact lookup */
|
|
2117
|
-
id: string;
|
|
2118
|
-
/** Fund logo URL */
|
|
2119
|
-
image?: string;
|
|
2120
|
-
/** Total number of unique invested projects (a project with multiple funding rounds counts once) */
|
|
2121
|
-
invested_projects_count: number;
|
|
2122
|
-
/** Fund name */
|
|
2123
|
-
name: string;
|
|
2124
|
-
/** Fund tier ranking (lower is better) */
|
|
2125
|
-
tier: number;
|
|
2126
|
-
/** Top invested projects (up to 5) */
|
|
2127
|
-
top_projects: SearchFundItemTopProjectsItem[];
|
|
2128
|
-
/** Fund type */
|
|
2129
|
-
type?: string;
|
|
2130
|
-
}
|
|
2131
|
-
interface SearchFundItemTopProjectsItem {
|
|
2132
|
-
/** Investment date (Unix seconds) */
|
|
2133
|
-
invested_at?: number;
|
|
2134
|
-
/** Whether this fund was the lead investor */
|
|
2135
|
-
is_lead: boolean;
|
|
2136
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup. Prefer over 'q' (fuzzy name search). */
|
|
2137
|
-
project_id: string;
|
|
2138
|
-
/** Project logo URL */
|
|
2139
|
-
project_logo?: string;
|
|
2140
|
-
/** Project name */
|
|
2141
|
-
project_name: string;
|
|
2142
|
-
/** Project slug */
|
|
2143
|
-
project_slug?: string;
|
|
2144
|
-
/** Most recent funding round amount in USD */
|
|
2145
|
-
recent_raise?: number;
|
|
2146
|
-
/** Total amount raised by the project in USD */
|
|
2147
|
-
total_raise?: number;
|
|
2148
|
-
}
|
|
2149
|
-
interface SearchFundParams {
|
|
2150
|
-
/** Search keyword — fund name like `a16z`, `paradigm`, or `coinbase ventures` */
|
|
2151
|
-
q: string;
|
|
2152
|
-
/** Results per page — @default '20' */
|
|
2153
|
-
limit?: number;
|
|
2154
|
-
/** Pagination offset — @default '0' */
|
|
2155
|
-
offset?: number;
|
|
2156
|
-
}
|
|
2157
|
-
interface SearchKalshiItem {
|
|
2158
|
-
/** Event subtitle */
|
|
2159
|
-
event_subtitle?: string;
|
|
2160
|
-
/** Unique event ticker identifier */
|
|
2161
|
-
event_ticker: string;
|
|
2162
|
-
/** Event title */
|
|
2163
|
-
event_title: string;
|
|
2164
|
-
/** Number of markets in this event */
|
|
2165
|
-
market_count: number;
|
|
2166
|
-
/** Markets within this event */
|
|
2167
|
-
markets: SearchKalshiItemMarketsItem[];
|
|
2168
|
-
}
|
|
2169
|
-
interface SearchKalshiItemMarketsItem {
|
|
2170
|
-
/** Surf curated market category */
|
|
2171
|
-
category?: string;
|
|
2172
|
-
/** Market close time (Unix seconds) */
|
|
2173
|
-
close_time?: number;
|
|
2174
|
-
/** Market end time (Unix seconds) */
|
|
2175
|
-
end_time?: number;
|
|
2176
|
-
/** Parent event ticker */
|
|
2177
|
-
event_ticker: string;
|
|
2178
|
-
/** Event title */
|
|
2179
|
-
event_title?: string;
|
|
2180
|
-
/** Previous day open interest from daily report */
|
|
2181
|
-
last_day_open_interest: number;
|
|
2182
|
-
/** Unique market ticker identifier */
|
|
2183
|
-
market_ticker: string;
|
|
2184
|
-
/** Last day notional trading volume in USD (each contract = $1) */
|
|
2185
|
-
notional_volume_usd: number;
|
|
2186
|
-
/** Open interest (contracts) */
|
|
2187
|
-
open_interest: number;
|
|
2188
|
-
/** Payout type */
|
|
2189
|
-
payout_type: string;
|
|
2190
|
-
/** Market result if resolved */
|
|
2191
|
-
result?: string;
|
|
2192
|
-
/** Market start time (Unix seconds) */
|
|
2193
|
-
start_time?: number;
|
|
2194
|
-
/** Market status */
|
|
2195
|
-
status: string;
|
|
2196
|
-
/** Surf curated market subcategory */
|
|
2197
|
-
subcategory?: string;
|
|
2198
|
-
/** Market title */
|
|
2199
|
-
title: string;
|
|
2200
|
-
/** Total trading volume (contracts) */
|
|
2201
|
-
total_volume: number;
|
|
2202
|
-
}
|
|
2203
|
-
interface SearchKalshiParams {
|
|
2204
|
-
/** Search keyword matching event title, subtitle, or market title */
|
|
2205
|
-
q?: string;
|
|
2206
|
-
/** Filter by category */
|
|
2207
|
-
category?: 'crypto' | 'culture' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports' | 'unknown';
|
|
2208
|
-
/** Market status filter: `active`, `closed`, `determined`, `disputed`, `finalized`, `inactive`, or `initialized` */
|
|
2209
|
-
status?: 'active' | 'closed' | 'determined' | 'disputed' | 'finalized' | 'inactive' | 'initialized';
|
|
2210
|
-
/** Results per page — @default '20' */
|
|
2211
|
-
limit?: number;
|
|
2212
|
-
/** Pagination offset — @default '0' */
|
|
2213
|
-
offset?: number;
|
|
2214
|
-
}
|
|
2215
|
-
interface SearchNewsItem {
|
|
2216
|
-
/** Search highlight fragments with <em> tags around matching terms. Only present in search results. */
|
|
2217
|
-
highlights?: SearchNewsItemHighlights;
|
|
2218
|
-
/** Article ID. Use with the detail endpoint to fetch full content. */
|
|
2219
|
-
id: string;
|
|
2220
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup */
|
|
2221
|
-
project_id?: string;
|
|
2222
|
-
/** Primary crypto project referenced in the article */
|
|
2223
|
-
project_name?: string;
|
|
2224
|
-
/** Unix timestamp in seconds when the article was published */
|
|
2225
|
-
published_at: number;
|
|
2226
|
-
/** Publisher name (e.g. COINDESK, COINTELEGRAPH) */
|
|
2227
|
-
source?: string;
|
|
2228
|
-
/** Short summary of the article */
|
|
2229
|
-
summary?: string;
|
|
2230
|
-
/** Article headline */
|
|
2231
|
-
title: string;
|
|
2232
|
-
/** Direct URL to the original article */
|
|
2233
|
-
url?: string;
|
|
2234
|
-
}
|
|
2235
|
-
interface SearchNewsItemHighlights {
|
|
2236
|
-
[key: string]: unknown;
|
|
2237
|
-
}
|
|
2238
|
-
interface SearchNewsParams {
|
|
2239
|
-
/** Search keyword or phrase */
|
|
2240
|
-
q: string;
|
|
2241
|
-
}
|
|
2242
|
-
interface SearchPolymarketItem {
|
|
2243
|
-
/** Surf curated event category */
|
|
2244
|
-
category?: string;
|
|
2245
|
-
/** Event description */
|
|
2246
|
-
description?: string;
|
|
2247
|
-
/** Event end time (Unix seconds) */
|
|
2248
|
-
end_time?: number;
|
|
2249
|
-
/** Event identifier slug */
|
|
2250
|
-
event_slug: string;
|
|
2251
|
-
/** Event image URL */
|
|
2252
|
-
image?: string;
|
|
2253
|
-
/** Number of markets in this event */
|
|
2254
|
-
market_count: number;
|
|
2255
|
-
/** Markets within this event */
|
|
2256
|
-
markets: SearchPolymarketItemMarketsItem[];
|
|
2257
|
-
/** Resolution source URL */
|
|
2258
|
-
settlement_sources?: string;
|
|
2259
|
-
/** Event start time (Unix seconds) */
|
|
2260
|
-
start_time?: number;
|
|
2261
|
-
/** Event status: `open` if any market is open, `closed` if all markets are closed */
|
|
2262
|
-
status: string;
|
|
2263
|
-
/** Surf curated event subcategory */
|
|
2264
|
-
subcategory?: string;
|
|
2265
|
-
/** Event tags */
|
|
2266
|
-
tags?: unknown;
|
|
2267
|
-
/** Event title */
|
|
2268
|
-
title: string;
|
|
2269
|
-
/** Total event volume across all markets (USD) */
|
|
2270
|
-
volume_total: number;
|
|
2271
|
-
}
|
|
2272
|
-
interface SearchPolymarketItemMarketsItem {
|
|
2273
|
-
/** Surf curated market category */
|
|
2274
|
-
category?: string;
|
|
2275
|
-
/** Market close time (Unix seconds) */
|
|
2276
|
-
close_time?: number;
|
|
2277
|
-
/** Resolution time (Unix seconds) */
|
|
2278
|
-
completed_time?: number;
|
|
2279
|
-
/** Unique condition identifier */
|
|
2280
|
-
condition_id: string;
|
|
2281
|
-
/** Market description */
|
|
2282
|
-
description?: string;
|
|
2283
|
-
/** Market end time (Unix seconds) */
|
|
2284
|
-
end_time?: number;
|
|
2285
|
-
/** Event identifier slug */
|
|
2286
|
-
event_slug?: string;
|
|
2287
|
-
/** Game start time for sports markets (Unix seconds) */
|
|
2288
|
-
game_start_time?: number;
|
|
2289
|
-
/** Market image URL */
|
|
2290
|
-
image?: string;
|
|
2291
|
-
/** Market identifier slug */
|
|
2292
|
-
market_slug: string;
|
|
2293
|
-
/** Negative risk market identifier */
|
|
2294
|
-
negative_risk_id?: string;
|
|
2295
|
-
/** Link to Polymarket page */
|
|
2296
|
-
polymarket_link?: string;
|
|
2297
|
-
/** URL to resolution data source */
|
|
2298
|
-
resolution_source?: string;
|
|
2299
|
-
side_a?: SearchPolymarketItemMarketsItemSideA;
|
|
2300
|
-
side_b?: SearchPolymarketItemMarketsItemSideB;
|
|
2301
|
-
/** Market start time (Unix seconds) */
|
|
2302
|
-
start_time?: number;
|
|
2303
|
-
/** Market status: `open` or `closed` */
|
|
2304
|
-
status: string;
|
|
2305
|
-
/** Surf curated market subcategory */
|
|
2306
|
-
subcategory?: string;
|
|
2307
|
-
/** Market tags */
|
|
2308
|
-
tags?: unknown;
|
|
2309
|
-
/** Market title */
|
|
2310
|
-
title: string;
|
|
2311
|
-
/** Trading volume in the past month (USD) */
|
|
2312
|
-
volume_1_month: number;
|
|
2313
|
-
/** Trading volume in the past week (USD) */
|
|
2314
|
-
volume_1_week: number;
|
|
2315
|
-
/** Trading volume in the past year (USD) */
|
|
2316
|
-
volume_1_year: number;
|
|
2317
|
-
/** Total trading volume (USD) */
|
|
2318
|
-
volume_total: number;
|
|
2319
|
-
/** Winning outcome label, if resolved */
|
|
2320
|
-
winning_side?: string;
|
|
2321
|
-
}
|
|
2322
|
-
interface SearchPolymarketItemMarketsItemSideA {
|
|
2323
|
-
/** Token identifier for this outcome */
|
|
2324
|
-
id: string;
|
|
2325
|
-
/** Outcome label */
|
|
2326
|
-
label: string;
|
|
2327
|
-
}
|
|
2328
|
-
interface SearchPolymarketItemMarketsItemSideB {
|
|
2329
|
-
/** Token identifier for this outcome */
|
|
2330
|
-
id: string;
|
|
2331
|
-
/** Outcome label */
|
|
2332
|
-
label: string;
|
|
2333
|
-
}
|
|
2334
|
-
interface SearchPolymarketParams {
|
|
2335
|
-
/** Search keyword matching market question, event title, or description */
|
|
2336
|
-
q?: string;
|
|
2337
|
-
/** Comma-separated tag labels to filter by (matches any). Commonly used tags: `Crypto`, `Politics`, `Sports`, `Science`, `Pop Culture` */
|
|
2338
|
-
tags?: string;
|
|
2339
|
-
/** Filter by Surf-curated category */
|
|
2340
|
-
category?: 'crypto' | 'culture' | 'early_polymarket_trades' | 'economics' | 'financials' | 'politics' | 'stem' | 'sports' | 'unknown';
|
|
2341
|
-
/** Market status filter: `active`, `finalized`, `ended`, `initialized`, or `closed` — @default 'active' */
|
|
2342
|
-
status?: 'active' | 'finalized' | 'ended' | 'initialized' | 'closed';
|
|
2343
|
-
/** Results per page — @default '20' */
|
|
2344
|
-
limit?: number;
|
|
2345
|
-
/** Pagination offset — @default '0' */
|
|
2346
|
-
offset?: number;
|
|
2347
|
-
}
|
|
2348
|
-
interface SearchProjectItem {
|
|
2349
|
-
/** Chains the project operates on */
|
|
2350
|
-
chains?: unknown;
|
|
2351
|
-
/** Short description of the project */
|
|
2352
|
-
description?: string;
|
|
2353
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup. Prefer over 'q' (fuzzy name search). */
|
|
2354
|
-
id: string;
|
|
2355
|
-
/** Project logo image URL */
|
|
2356
|
-
logo_url?: string;
|
|
2357
|
-
/** Project name */
|
|
2358
|
-
name: string;
|
|
2359
|
-
/** Project slug for URL construction */
|
|
2360
|
-
slug?: string;
|
|
2361
|
-
/** Primary token symbol like `BTC` or `ETH` */
|
|
2362
|
-
symbol?: string;
|
|
2363
|
-
/** Project category tags */
|
|
2364
|
-
tags?: unknown;
|
|
2365
|
-
/** Associated tokens */
|
|
2366
|
-
tokens?: SearchProjectItemTokensItem[];
|
|
2367
|
-
}
|
|
2368
|
-
interface SearchProjectItemTokensItem {
|
|
2369
|
-
/** Token identifier */
|
|
2370
|
-
id: string;
|
|
2371
|
-
/** Token logo image URL */
|
|
2372
|
-
image?: string;
|
|
2373
|
-
/** Token name */
|
|
2374
|
-
name: string;
|
|
2375
|
-
/** Token symbol */
|
|
2376
|
-
symbol: string;
|
|
2377
|
-
}
|
|
2378
|
-
interface SearchProjectParams {
|
|
2379
|
-
/** Search keyword — project name or ticker like `uniswap`, `bitcoin`, or `ETH` */
|
|
2380
|
-
q: string;
|
|
2381
|
-
/** Results per page — @default '20' */
|
|
2382
|
-
limit?: number;
|
|
2383
|
-
/** Pagination offset — @default '0' */
|
|
2384
|
-
offset?: number;
|
|
2385
|
-
}
|
|
2386
|
-
interface SearchSocialPeopleItem {
|
|
2387
|
-
/** Profile picture URL */
|
|
2388
|
-
avatar?: string;
|
|
2389
|
-
/** Profile biography text */
|
|
2390
|
-
bio?: string;
|
|
2391
|
-
/** Number of followers */
|
|
2392
|
-
followers_count: number;
|
|
2393
|
-
/** Number of accounts this user follows */
|
|
2394
|
-
following_count: number;
|
|
2395
|
-
/** X/Twitter handle without the @ prefix */
|
|
2396
|
-
handle: string;
|
|
2397
|
-
/** Display name on X/Twitter */
|
|
2398
|
-
name: string;
|
|
2399
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2400
|
-
user_id: string;
|
|
2401
|
-
}
|
|
2402
|
-
interface SearchSocialPeopleParams {
|
|
2403
|
-
/** Search keyword or `@handle` for exact handle lookup. Use a keyword like `vitalik` for fuzzy matching across names and bios, or `@VitalikButerin` to find a specific account by handle */
|
|
2404
|
-
q: string;
|
|
2405
|
-
/** Results per page — @default '20' */
|
|
2406
|
-
limit?: number;
|
|
2407
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2408
|
-
cursor?: string;
|
|
2409
|
-
}
|
|
2410
|
-
interface SearchSocialPostsItem {
|
|
2411
|
-
author: SearchSocialPostsItemAuthor;
|
|
2412
|
-
/** Unix timestamp (seconds) when the tweet was posted */
|
|
2413
|
-
created_at: number;
|
|
2414
|
-
/** Attached media items (photos, videos, GIFs) */
|
|
2415
|
-
media?: SearchSocialPostsItemMediaItem[];
|
|
2416
|
-
stats: SearchSocialPostsItemStats;
|
|
2417
|
-
/** Full text content of the tweet */
|
|
2418
|
-
text: string;
|
|
2419
|
-
/** Numeric tweet ID as a string (e.g. '1234567890123456789') */
|
|
2420
|
-
tweet_id: string;
|
|
2421
|
-
/** Permanent link to the tweet on X/Twitter */
|
|
2422
|
-
url: string;
|
|
2423
|
-
}
|
|
2424
|
-
interface SearchSocialPostsItemAuthor {
|
|
2425
|
-
/** Profile picture URL */
|
|
2426
|
-
avatar?: string;
|
|
2427
|
-
/** X/Twitter handle without the @ prefix (e.g. 'cz_binance') */
|
|
2428
|
-
handle: string;
|
|
2429
|
-
/** Display name on X/Twitter */
|
|
2430
|
-
name: string;
|
|
2431
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2432
|
-
user_id: string;
|
|
2433
|
-
}
|
|
2434
|
-
interface SearchSocialPostsItemMediaItem {
|
|
2435
|
-
/** Media type: photo, video, or animated_gif */
|
|
2436
|
-
type: string;
|
|
2437
|
-
/** Direct URL to the media asset */
|
|
2438
|
-
url: string;
|
|
2439
|
-
}
|
|
2440
|
-
interface SearchSocialPostsItemStats {
|
|
2441
|
-
/** Number of likes (hearts) */
|
|
2442
|
-
likes: number;
|
|
2443
|
-
/** Number of replies */
|
|
2444
|
-
replies: number;
|
|
2445
|
-
/** Number of retweets/reposts */
|
|
2446
|
-
reposts: number;
|
|
2447
|
-
/** Total view count */
|
|
2448
|
-
views: number;
|
|
2449
|
-
}
|
|
2450
|
-
interface SearchSocialPostsParams {
|
|
2451
|
-
/** Search keyword or `from:handle` syntax like `ethereum` or `from:cz_binance` */
|
|
2452
|
-
q: string;
|
|
2453
|
-
/** Results per page — @default '20' */
|
|
2454
|
-
limit?: number;
|
|
2455
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2456
|
-
cursor?: string;
|
|
2457
|
-
}
|
|
2458
|
-
interface SearchWalletItem {
|
|
2459
|
-
/** Primary wallet address for this entity */
|
|
2460
|
-
address?: string;
|
|
2461
|
-
/** Known wallet addresses for this entity (max 10, use num_addresses for the total count) */
|
|
2462
|
-
addresses?: SearchWalletItemAddressesItem[];
|
|
2463
|
-
/** Chain of the primary address */
|
|
2464
|
-
chain?: string;
|
|
2465
|
-
/** Name of the associated entity like `Binance` or `Aave` */
|
|
2466
|
-
entity_name?: string;
|
|
2467
|
-
/** Type of entity like `exchange`, `fund`, or `whale` */
|
|
2468
|
-
entity_type?: string;
|
|
2469
|
-
/** Human-readable label for the wallet entity */
|
|
2470
|
-
label?: string;
|
|
2471
|
-
/** Total number of wallet addresses associated with this entity */
|
|
2472
|
-
num_addresses?: number;
|
|
2473
|
-
/** Associated X (Twitter) handle */
|
|
2474
|
-
twitter?: string;
|
|
2475
|
-
}
|
|
2476
|
-
interface SearchWalletItemAddressesItem {
|
|
2477
|
-
/** Wallet address */
|
|
2478
|
-
address: string;
|
|
2479
|
-
/** Chain name like ethereum, arbitrum_one */
|
|
2480
|
-
chain: string;
|
|
2481
|
-
}
|
|
2482
|
-
interface SearchWalletParams {
|
|
2483
|
-
/** Search keyword like `binance`, `vitalik.eth`, or `0xd8dA...` */
|
|
2484
|
-
q: string;
|
|
2485
|
-
/** Results per page — @default '20' */
|
|
2486
|
-
limit?: number;
|
|
2487
|
-
/** Pagination offset — @default '0' */
|
|
2488
|
-
offset?: number;
|
|
2489
|
-
}
|
|
2490
|
-
interface SearchWebItem {
|
|
2491
|
-
/** Relevant content snippet from the page */
|
|
2492
|
-
content: string;
|
|
2493
|
-
/** Short description or meta description of the page */
|
|
2494
|
-
description: string;
|
|
2495
|
-
/** Page title from the search result */
|
|
2496
|
-
title: string;
|
|
2497
|
-
/** Full URL of the search result page */
|
|
2498
|
-
url: string;
|
|
2499
|
-
}
|
|
2500
|
-
interface SearchWebParams {
|
|
2501
|
-
/** Search query like `bitcoin price prediction 2026` */
|
|
2502
|
-
q: string;
|
|
2503
|
-
/** Results per page — @default '20' */
|
|
2504
|
-
limit?: number;
|
|
2505
|
-
/** Pagination offset — @default '0' */
|
|
2506
|
-
offset?: number;
|
|
2507
|
-
/** Comma-separated domain filter like `coindesk.com` or `cointelegraph.com` */
|
|
2508
|
-
site?: string;
|
|
2509
|
-
}
|
|
2510
|
-
interface SocialDetailData {
|
|
2511
|
-
follower_geo?: SocialDetailDataFollowerGeo;
|
|
2512
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics. Omitted for direct x_id lookups. */
|
|
2513
|
-
project_id?: string;
|
|
2514
|
-
/** Project name (omitted for direct x_id lookups) */
|
|
2515
|
-
project_name?: string;
|
|
2516
|
-
sentiment?: SocialDetailDataSentiment;
|
|
2517
|
-
smart_followers?: SocialDetailDataSmartFollowers;
|
|
2518
|
-
/** Numeric X (Twitter) account ID */
|
|
2519
|
-
twitter_id: string;
|
|
2520
|
-
}
|
|
2521
|
-
interface SocialDetailDataFollowerGeo {
|
|
2522
|
-
/** Follower count breakdown by geographic location */
|
|
2523
|
-
locations: SocialDetailDataFollowerGeoLocationsItem[];
|
|
2524
|
-
/** Total number of followers across all locations */
|
|
2525
|
-
total_follower_count: number;
|
|
2526
|
-
}
|
|
2527
|
-
interface SocialDetailDataSentiment {
|
|
2528
|
-
/** Sentiment score from -1 (very negative) to 1 (very positive) */
|
|
2529
|
-
score: number;
|
|
2530
|
-
/** Time range for the sentiment analysis like 7d or 30d */
|
|
2531
|
-
time_range: string;
|
|
2532
|
-
}
|
|
2533
|
-
interface SocialDetailDataSmartFollowers {
|
|
2534
|
-
/** Total number of smart followers */
|
|
2535
|
-
count: number;
|
|
2536
|
-
/** List of top smart followers sorted by influence score */
|
|
2537
|
-
followers: SocialDetailDataSmartFollowersFollowersItem[];
|
|
2538
|
-
}
|
|
2539
|
-
interface SocialDetailDataFollowerGeoLocationsItem {
|
|
2540
|
-
/** Number of followers in this location */
|
|
2541
|
-
follower_count: number;
|
|
2542
|
-
/** Geographic location name like a country or region */
|
|
2543
|
-
location: string;
|
|
2544
|
-
/** Percentage of total followers in this location (0-100) */
|
|
2545
|
-
percentage: number;
|
|
2546
|
-
}
|
|
2547
|
-
interface SocialDetailDataSmartFollowersFollowersItem {
|
|
2548
|
-
/** Profile image URL */
|
|
2549
|
-
avatar: string;
|
|
2550
|
-
/** Human-readable description of the follower's role */
|
|
2551
|
-
description?: string;
|
|
2552
|
-
/** Number of followers this account has */
|
|
2553
|
-
followers_count: number;
|
|
2554
|
-
/** X (Twitter) handle without the @ prefix */
|
|
2555
|
-
handle: string;
|
|
2556
|
-
/** Display name of the follower */
|
|
2557
|
-
name: string;
|
|
2558
|
-
/** Rank position among smart followers (1 = highest) */
|
|
2559
|
-
rank: number;
|
|
2560
|
-
/** Smart follower influence score */
|
|
2561
|
-
score: number;
|
|
2562
|
-
/** Smart follower category tag like VC, KOL, or Developer */
|
|
2563
|
-
tag: string;
|
|
2564
|
-
/** Numeric X (Twitter) user ID */
|
|
2565
|
-
twitter_id: string;
|
|
2566
|
-
}
|
|
2567
|
-
interface SocialDetailParams {
|
|
2568
|
-
/** Numeric X (Twitter) account ID (takes priority over `q`) */
|
|
2569
|
-
x_id?: string;
|
|
2570
|
-
/** Entity name to resolve like `uniswap`, `ethereum`, or `aave` */
|
|
2571
|
-
q?: string;
|
|
2572
|
-
/** Comma-separated sub-resources to include. Can be `sentiment`, `follower_geo`, or `smart_followers`. — @default 'sentiment,follower_geo,smart_followers' */
|
|
2573
|
-
fields?: string;
|
|
2574
|
-
/** Timeframe for sentiment data. Can be `24h`, `48h`, `7d`, `30d`, `3m`, `6m`, or `1y`. — @default '7d' */
|
|
2575
|
-
time_range?: '24h' | '48h' | '7d' | '30d' | '3m' | '6m' | '1y';
|
|
2576
|
-
/** Max geo locations to return — @default '20' */
|
|
2577
|
-
geo_limit?: number;
|
|
2578
|
-
}
|
|
2579
|
-
interface SocialMindshareItem {
|
|
2580
|
-
/** Unix timestamp in seconds */
|
|
2581
|
-
timestamp: number;
|
|
2582
|
-
/** Mindshare view count at this timestamp */
|
|
2583
|
-
value: number;
|
|
2584
|
-
}
|
|
2585
|
-
interface SocialMindshareParams {
|
|
2586
|
-
/** Entity name to resolve like `uniswap`, `ethereum`, or `aave` */
|
|
2587
|
-
q: string;
|
|
2588
|
-
/** Time aggregation interval. Can be `5m`, `1h`, `1d`, or `7d`. */
|
|
2589
|
-
interval: '5m' | '1h' | '1d' | '7d';
|
|
2590
|
-
/** Start timestamp. Accepts Unix seconds (1704067200) or date string (2024-01-01) */
|
|
2591
|
-
from?: string;
|
|
2592
|
-
/** End timestamp. Accepts Unix seconds (1706745600) or date string (2024-02-01) */
|
|
2593
|
-
to?: string;
|
|
2594
|
-
}
|
|
2595
|
-
interface SocialRankingItem {
|
|
2596
|
-
project?: SocialRankingItemProject;
|
|
2597
|
-
/** Rank position in the mindshare leaderboard */
|
|
2598
|
-
rank: number;
|
|
2599
|
-
/** Sentiment polarity: positive or negative */
|
|
2600
|
-
sentiment?: string;
|
|
2601
|
-
/** Weighted sentiment score from -1 (very negative) to 1 (very positive) */
|
|
2602
|
-
sentiment_score?: number;
|
|
2603
|
-
/** Project category tags */
|
|
2604
|
-
tags?: unknown;
|
|
2605
|
-
token?: SocialRankingItemToken;
|
|
2606
|
-
/** Deprecated: no longer populated. */
|
|
2607
|
-
trending_short_reason?: string;
|
|
2608
|
-
/** Deprecated: no longer populated. */
|
|
2609
|
-
trending_summary?: string;
|
|
2610
|
-
twitter?: SocialRankingItemTwitter;
|
|
2611
|
-
}
|
|
2612
|
-
interface SocialRankingItemProject {
|
|
2613
|
-
/** Surf project UUID — pass as 'id' parameter to /project/detail, /project/events, or /project/defi/metrics for exact lookup */
|
|
2614
|
-
id: string;
|
|
2615
|
-
/** Project name */
|
|
2616
|
-
name: string;
|
|
2617
|
-
/** URL-friendly project slug */
|
|
2618
|
-
slug?: string;
|
|
2619
|
-
}
|
|
2620
|
-
interface SocialRankingItemToken {
|
|
2621
|
-
/** Surf token UUID */
|
|
2622
|
-
id?: string;
|
|
2623
|
-
/** Token image URL */
|
|
2624
|
-
image?: string;
|
|
2625
|
-
/** Token name */
|
|
2626
|
-
name: string;
|
|
2627
|
-
/** Token ticker symbol */
|
|
2628
|
-
symbol?: string;
|
|
2629
|
-
}
|
|
2630
|
-
interface SocialRankingItemTwitter {
|
|
2631
|
-
/** Profile image URL */
|
|
2632
|
-
avatar_url?: string;
|
|
2633
|
-
/** X (Twitter) display name */
|
|
2634
|
-
display_name: string;
|
|
2635
|
-
/** Numeric X (Twitter) user ID */
|
|
2636
|
-
twitter_id: string;
|
|
2637
|
-
/** X (Twitter) handle without the @ prefix */
|
|
2638
|
-
x_handle: string;
|
|
2639
|
-
}
|
|
2640
|
-
interface SocialRankingParams {
|
|
2641
|
-
/** Pagination offset — @default '0' */
|
|
2642
|
-
offset?: number;
|
|
2643
|
-
/** Results per page — @default '20' */
|
|
2644
|
-
limit?: number;
|
|
2645
|
-
/** Filter by project category. `l1` = Layer 1, `l2` = Layer 2/scaling, `dex` = DEX/AMM, `derivatives` = perps/options, `cex` = centralized exchange, `gamefi` = gaming, `nft` = NFT collections, `oracle` = oracle, `prediction` = prediction market, `rwa` = real-world assets, `yield` = yield/asset management, `data` = data/analytics, `devtool` = developer tooling, `compliance` = compliance/regtech, `meme` = meme/token launchpad. */
|
|
2646
|
-
tag?: 'l1' | 'l2' | 'dex' | 'derivatives' | 'cex' | 'gamefi' | 'nft' | 'oracle' | 'prediction' | 'rwa' | 'yield' | 'data' | 'devtool' | 'compliance' | 'meme' | '';
|
|
2647
|
-
/** Mindshare ranking timeframe window — @default '7d' */
|
|
2648
|
-
time_range?: '24h' | '48h' | '7d' | '30d';
|
|
2649
|
-
/** Filter by sentiment polarity. Only projects with sufficient tweet data are classified. */
|
|
2650
|
-
sentiment?: 'positive' | 'negative' | '';
|
|
2651
|
-
}
|
|
2652
|
-
interface SocialSmartFollowersHistoryItem {
|
|
2653
|
-
/** Number of smart followers on this date */
|
|
2654
|
-
count: number;
|
|
2655
|
-
/** Date in YYYY-MM-DD format */
|
|
2656
|
-
date: string;
|
|
2657
|
-
}
|
|
2658
|
-
interface SocialSmartFollowersHistoryParams {
|
|
2659
|
-
/** Numeric X (Twitter) account ID (takes priority over `q`) */
|
|
2660
|
-
x_id?: string;
|
|
2661
|
-
/** Project name to resolve (e.g. `uniswap`, `ethereum`). Must be a project with a linked X account — personal handles like `VitalikButerin` return 404. Use `x_id` for individual accounts. */
|
|
2662
|
-
q?: string;
|
|
2663
|
-
/** Max data points to return (upstream typically provides ~36 daily points) — @default '36' */
|
|
2664
|
-
limit?: number;
|
|
2665
|
-
}
|
|
2666
|
-
interface SocialTweetRepliesItem {
|
|
2667
|
-
author: SocialTweetRepliesItemAuthor;
|
|
2668
|
-
/** Unix timestamp (seconds) when the tweet was posted */
|
|
2669
|
-
created_at: number;
|
|
2670
|
-
/** Attached media items (photos, videos, GIFs) */
|
|
2671
|
-
media?: SocialTweetRepliesItemMediaItem[];
|
|
2672
|
-
stats: SocialTweetRepliesItemStats;
|
|
2673
|
-
/** Full text content of the tweet */
|
|
2674
|
-
text: string;
|
|
2675
|
-
/** Numeric tweet ID as a string (e.g. '1234567890123456789') */
|
|
2676
|
-
tweet_id: string;
|
|
2677
|
-
/** Permanent link to the tweet on X/Twitter */
|
|
2678
|
-
url: string;
|
|
2679
|
-
}
|
|
2680
|
-
interface SocialTweetRepliesItemAuthor {
|
|
2681
|
-
/** Profile picture URL */
|
|
2682
|
-
avatar?: string;
|
|
2683
|
-
/** X/Twitter handle without the @ prefix (e.g. 'cz_binance') */
|
|
2684
|
-
handle: string;
|
|
2685
|
-
/** Display name on X/Twitter */
|
|
2686
|
-
name: string;
|
|
2687
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2688
|
-
user_id: string;
|
|
2689
|
-
}
|
|
2690
|
-
interface SocialTweetRepliesItemMediaItem {
|
|
2691
|
-
/** Media type: photo, video, or animated_gif */
|
|
2692
|
-
type: string;
|
|
2693
|
-
/** Direct URL to the media asset */
|
|
2694
|
-
url: string;
|
|
2695
|
-
}
|
|
2696
|
-
interface SocialTweetRepliesItemStats {
|
|
2697
|
-
/** Number of likes (hearts) */
|
|
2698
|
-
likes: number;
|
|
2699
|
-
/** Number of replies */
|
|
2700
|
-
replies: number;
|
|
2701
|
-
/** Number of retweets/reposts */
|
|
2702
|
-
reposts: number;
|
|
2703
|
-
/** Total view count */
|
|
2704
|
-
views: number;
|
|
2705
|
-
}
|
|
2706
|
-
interface SocialTweetRepliesParams {
|
|
2707
|
-
/** Tweet ID to get replies for */
|
|
2708
|
-
tweet_id: string;
|
|
2709
|
-
/** Max results to return — @default '20' */
|
|
2710
|
-
limit?: number;
|
|
2711
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2712
|
-
cursor?: string;
|
|
2713
|
-
}
|
|
2714
|
-
interface SocialTweetsItem {
|
|
2715
|
-
author: SocialTweetsItemAuthor;
|
|
2716
|
-
/** Unix timestamp (seconds) when the tweet was posted */
|
|
2717
|
-
created_at: number;
|
|
2718
|
-
/** Attached media items (photos, videos, GIFs) */
|
|
2719
|
-
media?: SocialTweetsItemMediaItem[];
|
|
2720
|
-
stats: SocialTweetsItemStats;
|
|
2721
|
-
/** Full text content of the tweet */
|
|
2722
|
-
text: string;
|
|
2723
|
-
/** Numeric tweet ID as a string (e.g. '1234567890123456789') */
|
|
2724
|
-
tweet_id: string;
|
|
2725
|
-
/** Permanent link to the tweet on X/Twitter */
|
|
2726
|
-
url: string;
|
|
2727
|
-
}
|
|
2728
|
-
interface SocialTweetsItemAuthor {
|
|
2729
|
-
/** Profile picture URL */
|
|
2730
|
-
avatar?: string;
|
|
2731
|
-
/** X/Twitter handle without the @ prefix (e.g. 'cz_binance') */
|
|
2732
|
-
handle: string;
|
|
2733
|
-
/** Display name on X/Twitter */
|
|
2734
|
-
name: string;
|
|
2735
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2736
|
-
user_id: string;
|
|
2737
|
-
}
|
|
2738
|
-
interface SocialTweetsItemMediaItem {
|
|
2739
|
-
/** Media type: photo, video, or animated_gif */
|
|
2740
|
-
type: string;
|
|
2741
|
-
/** Direct URL to the media asset */
|
|
2742
|
-
url: string;
|
|
2743
|
-
}
|
|
2744
|
-
interface SocialTweetsItemStats {
|
|
2745
|
-
/** Number of likes (hearts) */
|
|
2746
|
-
likes: number;
|
|
2747
|
-
/** Number of replies */
|
|
2748
|
-
replies: number;
|
|
2749
|
-
/** Number of retweets/reposts */
|
|
2750
|
-
reposts: number;
|
|
2751
|
-
/** Total view count */
|
|
2752
|
-
views: number;
|
|
2753
|
-
}
|
|
2754
|
-
interface SocialTweetsParams {
|
|
2755
|
-
/** Comma-separated numeric post ID strings, max 100 */
|
|
2756
|
-
ids: string;
|
|
2757
|
-
}
|
|
2758
|
-
interface SocialUserData {
|
|
2759
|
-
/** Profile picture URL */
|
|
2760
|
-
avatar?: string;
|
|
2761
|
-
/** Profile biography text */
|
|
2762
|
-
bio?: string;
|
|
2763
|
-
/** Number of followers */
|
|
2764
|
-
followers_count: number;
|
|
2765
|
-
/** Number of accounts this user follows */
|
|
2766
|
-
following_count: number;
|
|
2767
|
-
/** X/Twitter handle without the @ prefix */
|
|
2768
|
-
handle: string;
|
|
2769
|
-
/** Display name on X/Twitter */
|
|
2770
|
-
name: string;
|
|
2771
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2772
|
-
user_id: string;
|
|
2773
|
-
}
|
|
2774
|
-
interface SocialUserParams {
|
|
2775
|
-
/** X (Twitter) username without @ like `cz_binance` or `vitalikbuterin` */
|
|
2776
|
-
handle: string;
|
|
2777
|
-
}
|
|
2778
|
-
interface SocialUserFollowersItem {
|
|
2779
|
-
/** Profile picture URL */
|
|
2780
|
-
avatar?: string;
|
|
2781
|
-
/** Profile biography text */
|
|
2782
|
-
bio?: string;
|
|
2783
|
-
/** Number of followers */
|
|
2784
|
-
followers_count: number;
|
|
2785
|
-
/** Number of accounts this user follows */
|
|
2786
|
-
following_count: number;
|
|
2787
|
-
/** X/Twitter handle without the @ prefix */
|
|
2788
|
-
handle: string;
|
|
2789
|
-
/** Display name on X/Twitter */
|
|
2790
|
-
name: string;
|
|
2791
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2792
|
-
user_id: string;
|
|
2793
|
-
}
|
|
2794
|
-
interface SocialUserFollowersParams {
|
|
2795
|
-
/** X (Twitter) username without @ like `vitalikbuterin` or `cz_binance` */
|
|
2796
|
-
handle: string;
|
|
2797
|
-
/** Max results to return — @default '20' */
|
|
2798
|
-
limit?: number;
|
|
2799
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2800
|
-
cursor?: string;
|
|
2801
|
-
}
|
|
2802
|
-
interface SocialUserFollowingItem {
|
|
2803
|
-
/** Profile picture URL */
|
|
2804
|
-
avatar?: string;
|
|
2805
|
-
/** Profile biography text */
|
|
2806
|
-
bio?: string;
|
|
2807
|
-
/** Number of followers */
|
|
2808
|
-
followers_count: number;
|
|
2809
|
-
/** Number of accounts this user follows */
|
|
2810
|
-
following_count: number;
|
|
2811
|
-
/** X/Twitter handle without the @ prefix */
|
|
2812
|
-
handle: string;
|
|
2813
|
-
/** Display name on X/Twitter */
|
|
2814
|
-
name: string;
|
|
2815
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2816
|
-
user_id: string;
|
|
2817
|
-
}
|
|
2818
|
-
interface SocialUserFollowingParams {
|
|
2819
|
-
/** X (Twitter) username without @ like `vitalikbuterin` or `cz_binance` */
|
|
2820
|
-
handle: string;
|
|
2821
|
-
/** Max results to return — @default '20' */
|
|
2822
|
-
limit?: number;
|
|
2823
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2824
|
-
cursor?: string;
|
|
2825
|
-
}
|
|
2826
|
-
interface SocialUserPostsItem {
|
|
2827
|
-
author: SocialUserPostsItemAuthor;
|
|
2828
|
-
/** Unix timestamp (seconds) when the tweet was posted */
|
|
2829
|
-
created_at: number;
|
|
2830
|
-
/** Attached media items (photos, videos, GIFs) */
|
|
2831
|
-
media?: SocialUserPostsItemMediaItem[];
|
|
2832
|
-
stats: SocialUserPostsItemStats;
|
|
2833
|
-
/** Full text content of the tweet */
|
|
2834
|
-
text: string;
|
|
2835
|
-
/** Numeric tweet ID as a string (e.g. '1234567890123456789') */
|
|
2836
|
-
tweet_id: string;
|
|
2837
|
-
/** Permanent link to the tweet on X/Twitter */
|
|
2838
|
-
url: string;
|
|
2839
|
-
}
|
|
2840
|
-
interface SocialUserPostsItemAuthor {
|
|
2841
|
-
/** Profile picture URL */
|
|
2842
|
-
avatar?: string;
|
|
2843
|
-
/** X/Twitter handle without the @ prefix (e.g. 'cz_binance') */
|
|
2844
|
-
handle: string;
|
|
2845
|
-
/** Display name on X/Twitter */
|
|
2846
|
-
name: string;
|
|
2847
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2848
|
-
user_id: string;
|
|
2849
|
-
}
|
|
2850
|
-
interface SocialUserPostsItemMediaItem {
|
|
2851
|
-
/** Media type: photo, video, or animated_gif */
|
|
2852
|
-
type: string;
|
|
2853
|
-
/** Direct URL to the media asset */
|
|
2854
|
-
url: string;
|
|
2855
|
-
}
|
|
2856
|
-
interface SocialUserPostsItemStats {
|
|
2857
|
-
/** Number of likes (hearts) */
|
|
2858
|
-
likes: number;
|
|
2859
|
-
/** Number of replies */
|
|
2860
|
-
replies: number;
|
|
2861
|
-
/** Number of retweets/reposts */
|
|
2862
|
-
reposts: number;
|
|
2863
|
-
/** Total view count */
|
|
2864
|
-
views: number;
|
|
2865
|
-
}
|
|
2866
|
-
interface SocialUserPostsParams {
|
|
2867
|
-
/** X (Twitter) username without @ like `vitalikbuterin` or `cz_binance` */
|
|
2868
|
-
handle: string;
|
|
2869
|
-
/** Results per page — @default '20' */
|
|
2870
|
-
limit?: number;
|
|
2871
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2872
|
-
cursor?: string;
|
|
2873
|
-
/** Filter tweets: `all` returns everything, `original` excludes retweets — @default 'all' */
|
|
2874
|
-
filter?: 'all' | 'original';
|
|
2875
|
-
}
|
|
2876
|
-
interface SocialUserRepliesItem {
|
|
2877
|
-
author: SocialUserRepliesItemAuthor;
|
|
2878
|
-
/** Unix timestamp (seconds) when the tweet was posted */
|
|
2879
|
-
created_at: number;
|
|
2880
|
-
/** Attached media items (photos, videos, GIFs) */
|
|
2881
|
-
media?: SocialUserRepliesItemMediaItem[];
|
|
2882
|
-
stats: SocialUserRepliesItemStats;
|
|
2883
|
-
/** Full text content of the tweet */
|
|
2884
|
-
text: string;
|
|
2885
|
-
/** Numeric tweet ID as a string (e.g. '1234567890123456789') */
|
|
2886
|
-
tweet_id: string;
|
|
2887
|
-
/** Permanent link to the tweet on X/Twitter */
|
|
2888
|
-
url: string;
|
|
2889
|
-
}
|
|
2890
|
-
interface SocialUserRepliesItemAuthor {
|
|
2891
|
-
/** Profile picture URL */
|
|
2892
|
-
avatar?: string;
|
|
2893
|
-
/** X/Twitter handle without the @ prefix (e.g. 'cz_binance') */
|
|
2894
|
-
handle: string;
|
|
2895
|
-
/** Display name on X/Twitter */
|
|
2896
|
-
name: string;
|
|
2897
|
-
/** Numeric X/Twitter user ID as a string */
|
|
2898
|
-
user_id: string;
|
|
2899
|
-
}
|
|
2900
|
-
interface SocialUserRepliesItemMediaItem {
|
|
2901
|
-
/** Media type: photo, video, or animated_gif */
|
|
2902
|
-
type: string;
|
|
2903
|
-
/** Direct URL to the media asset */
|
|
2904
|
-
url: string;
|
|
2905
|
-
}
|
|
2906
|
-
interface SocialUserRepliesItemStats {
|
|
2907
|
-
/** Number of likes (hearts) */
|
|
2908
|
-
likes: number;
|
|
2909
|
-
/** Number of replies */
|
|
2910
|
-
replies: number;
|
|
2911
|
-
/** Number of retweets/reposts */
|
|
2912
|
-
reposts: number;
|
|
2913
|
-
/** Total view count */
|
|
2914
|
-
views: number;
|
|
2915
|
-
}
|
|
2916
|
-
interface SocialUserRepliesParams {
|
|
2917
|
-
/** X (Twitter) username without @ like `vitalikbuterin` or `cz_binance` */
|
|
2918
|
-
handle: string;
|
|
2919
|
-
/** Max results to return — @default '20' */
|
|
2920
|
-
limit?: number;
|
|
2921
|
-
/** Opaque cursor token from a previous response's next_cursor field for fetching the next page */
|
|
2922
|
-
cursor?: string;
|
|
2923
|
-
}
|
|
2924
|
-
interface TokenDexTradesItem {
|
|
2925
|
-
/** Trade value in USD at execution time */
|
|
2926
|
-
amount_usd: number;
|
|
2927
|
-
/** Unix timestamp in seconds when the trade was executed */
|
|
2928
|
-
block_time: number;
|
|
2929
|
-
/** DEX project name like `uniswap`, `sushiswap`, or `curve` */
|
|
2930
|
-
project: string;
|
|
2931
|
-
/** Wallet address that initiated the swap */
|
|
2932
|
-
taker: string;
|
|
2933
|
-
/** Contract address of the token bought */
|
|
2934
|
-
token_bought_address?: string;
|
|
2935
|
-
/** Amount of tokens bought (decimal-adjusted) */
|
|
2936
|
-
token_bought_amount: number;
|
|
2937
|
-
/** Symbol of the token bought in this trade */
|
|
2938
|
-
token_bought_symbol: string;
|
|
2939
|
-
/** Trading pair symbol like `WETH-USDC` */
|
|
2940
|
-
token_pair: string;
|
|
2941
|
-
/** Contract address of the token sold */
|
|
2942
|
-
token_sold_address?: string;
|
|
2943
|
-
/** Amount of tokens sold (decimal-adjusted) */
|
|
2944
|
-
token_sold_amount: number;
|
|
2945
|
-
/** Symbol of the token sold in this trade */
|
|
2946
|
-
token_sold_symbol: string;
|
|
2947
|
-
/** Transaction hash */
|
|
2948
|
-
tx_hash: string;
|
|
2949
|
-
/** DEX version like `v2` or `v3` */
|
|
2950
|
-
version: string;
|
|
2951
|
-
}
|
|
2952
|
-
interface TokenDexTradesParams {
|
|
2953
|
-
/** Token contract address (0x-prefixed hex) */
|
|
2954
|
-
address: string;
|
|
2955
|
-
/** Chain. Can be `ethereum` or `base`. — @default 'ethereum' */
|
|
2956
|
-
chain?: 'ethereum' | 'base';
|
|
2957
|
-
/** Results per page — @default '20' */
|
|
2958
|
-
limit?: number;
|
|
2959
|
-
/** Pagination offset — @default '0' */
|
|
2960
|
-
offset?: number;
|
|
2961
|
-
}
|
|
2962
|
-
interface TokenHoldersItem {
|
|
2963
|
-
/** Wallet address of the token holder */
|
|
2964
|
-
address: string;
|
|
2965
|
-
/** Token balance (decimal-adjusted, human-readable) */
|
|
2966
|
-
balance: string;
|
|
2967
|
-
/** Name of the associated entity like `Binance` or `Aave` */
|
|
2968
|
-
entity_name?: string;
|
|
2969
|
-
/** Type of entity like `exchange`, `fund`, or `whale` */
|
|
2970
|
-
entity_type?: string;
|
|
2971
|
-
/** Share of total supply held as a percentage (5.2 means 5.2%) */
|
|
2972
|
-
percentage?: number;
|
|
2973
|
-
}
|
|
2974
|
-
interface TokenHoldersParams {
|
|
2975
|
-
/** Token contract address (0x-prefixed hex or Solana base58) */
|
|
2976
|
-
address: string;
|
|
2977
|
-
/** Chain. Can be `ethereum`, `polygon`, `bsc`, `solana`, `avalanche`, `arbitrum`, `optimism`, or `base`. */
|
|
2978
|
-
chain: 'ethereum' | 'polygon' | 'bsc' | 'solana' | 'avalanche' | 'arbitrum' | 'optimism' | 'base';
|
|
2979
|
-
/** Results per page — @default '20' */
|
|
2980
|
-
limit?: number;
|
|
2981
|
-
/** Pagination offset (accepted for API consistency but currently ignored) — @default '0' */
|
|
2982
|
-
offset?: number;
|
|
2983
|
-
}
|
|
2984
|
-
interface TokenTokenomicsItem {
|
|
2985
|
-
/** Breakdown by allocation */
|
|
2986
|
-
allocations?: TokenTokenomicsItemAllocationsItem[];
|
|
2987
|
-
/** Unix timestamp in seconds */
|
|
2988
|
-
timestamp: number;
|
|
2989
|
-
/** Cumulative total tokens unlocked up to this timestamp (decimal-adjusted) */
|
|
2990
|
-
unlock_amount: number;
|
|
2991
|
-
}
|
|
2992
|
-
interface TokenTokenomicsItemAllocationsItem {
|
|
2993
|
-
/** Decimal-adjusted allocation amount */
|
|
2994
|
-
amount: number;
|
|
2995
|
-
/** Allocation name */
|
|
2996
|
-
name: string;
|
|
2997
|
-
}
|
|
2998
|
-
interface TokenTokenomicsParams {
|
|
2999
|
-
/** Surf project UUID. PREFERRED — always use this when available from a previous response. Takes priority over symbol. */
|
|
3000
|
-
id?: string;
|
|
3001
|
-
/** Token symbol like `ARB`, `OP`, or `APT` */
|
|
3002
|
-
symbol?: string;
|
|
3003
|
-
/** Start of time range. Accepts Unix seconds (`1704067200`) or date string (`2024-01-01`) */
|
|
3004
|
-
from?: string;
|
|
3005
|
-
/** End of time range. Accepts Unix seconds (`1735689600`) or date string (`2025-01-01`) */
|
|
3006
|
-
to?: string;
|
|
3007
|
-
}
|
|
3008
|
-
interface TokenTransfersItem {
|
|
3009
|
-
/** Transfer amount (decimal-adjusted, human-readable) */
|
|
3010
|
-
amount: string;
|
|
3011
|
-
/** Transfer value in USD at the time of the transaction. Not available for all transfers. */
|
|
3012
|
-
amount_usd?: number;
|
|
3013
|
-
/** Block number in which this transfer was included */
|
|
3014
|
-
block_number: number;
|
|
3015
|
-
/** Sender wallet address */
|
|
3016
|
-
from_address: string;
|
|
3017
|
-
/** Token symbol like ETH, USDC, or WETH */
|
|
3018
|
-
symbol?: string;
|
|
3019
|
-
/** Unix timestamp in seconds when the transfer occurred */
|
|
3020
|
-
timestamp: number;
|
|
3021
|
-
/** Recipient wallet address */
|
|
3022
|
-
to_address: string;
|
|
3023
|
-
/** Transaction hash */
|
|
3024
|
-
tx_hash: string;
|
|
3025
|
-
}
|
|
3026
|
-
interface TokenTransfersParams {
|
|
3027
|
-
/** Token contract address (0x-prefixed hex or Solana base58) */
|
|
3028
|
-
address: string;
|
|
3029
|
-
/** Chain. Can be `ethereum`, `base`, `solana`, or `tron`. */
|
|
3030
|
-
chain: 'ethereum' | 'base' | 'solana' | 'tron';
|
|
3031
|
-
/** Start of date range. Accepts Unix seconds or YYYY-MM-DD. Defaults to 30 days ago. */
|
|
3032
|
-
from?: string;
|
|
3033
|
-
/** End of date range. Accepts Unix seconds or YYYY-MM-DD. Defaults to today. */
|
|
3034
|
-
to?: string;
|
|
3035
|
-
/** Results per page — @default '20' */
|
|
3036
|
-
limit?: number;
|
|
3037
|
-
/** Pagination offset — @default '0' */
|
|
3038
|
-
offset?: number;
|
|
3039
|
-
}
|
|
3040
|
-
interface WalletDetailData {
|
|
3041
|
-
/** Chains the wallet has non-zero balances on. Always present (not controlled by fields param). For Solana addresses, returns a single entry. */
|
|
3042
|
-
active_chains?: WalletDetailDataActiveChainsItem[];
|
|
3043
|
-
/** Token approvals (EVM-only, up to 50). Only present when `approvals` is included in the `fields` param. */
|
|
3044
|
-
approvals?: WalletDetailDataApprovalsItem[];
|
|
3045
|
-
/** Per-field errors for any fields that failed to load */
|
|
3046
|
-
errors?: WalletDetailDataErrorsItem[];
|
|
3047
|
-
evm_balance?: WalletDetailDataEvmBalance;
|
|
3048
|
-
/** EVM token holdings (up to 50). Populated for EVM chains only. */
|
|
3049
|
-
evm_tokens?: WalletDetailDataEvmTokensItem[];
|
|
3050
|
-
labels?: WalletDetailDataLabels;
|
|
3051
|
-
/** NFT holdings (EVM-only, top 200 by value) */
|
|
3052
|
-
nft?: WalletDetailDataNftItem[];
|
|
3053
|
-
sol_balance?: WalletDetailDataSolBalance;
|
|
3054
|
-
/** Solana SPL token holdings from Solscan (up to 50). Populated for Solana chain only. */
|
|
3055
|
-
sol_tokens?: WalletDetailDataSolTokensItem[];
|
|
3056
|
-
}
|
|
3057
|
-
interface WalletDetailDataActiveChainsItem {
|
|
3058
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3059
|
-
chain: string;
|
|
3060
|
-
/** EVM chain ID like `1` for Ethereum or `137` for Polygon */
|
|
3061
|
-
chain_id?: number;
|
|
3062
|
-
/** Total USD value of assets on this chain */
|
|
3063
|
-
usd_value: number;
|
|
3064
|
-
}
|
|
3065
|
-
interface WalletDetailDataApprovalsItem {
|
|
3066
|
-
/** Current token balance */
|
|
3067
|
-
balance: number;
|
|
3068
|
-
/** Canonical chain name */
|
|
3069
|
-
chain: string;
|
|
3070
|
-
/** Full token name */
|
|
3071
|
-
name?: string;
|
|
3072
|
-
/** List of approved spender contracts */
|
|
3073
|
-
spenders: WalletDetailDataApprovalsItemSpendersItem[];
|
|
3074
|
-
/** Token ticker symbol */
|
|
3075
|
-
symbol: string;
|
|
3076
|
-
/** Token contract address */
|
|
3077
|
-
token_address: string;
|
|
3078
|
-
}
|
|
3079
|
-
interface WalletDetailDataErrorsItem {
|
|
3080
|
-
/** Field name that failed to load like `evm_balance`, `sol_balance`, `evm_tokens`, `sol_tokens`, `labels`, `nft`, `active_chains`, or `approvals` */
|
|
3081
|
-
field: string;
|
|
3082
|
-
/** Error message describing why the field could not be loaded */
|
|
3083
|
-
message: string;
|
|
3084
|
-
}
|
|
3085
|
-
interface WalletDetailDataEvmBalance {
|
|
3086
|
-
/** Wallet address */
|
|
3087
|
-
address: string;
|
|
3088
|
-
/** Per-chain balance breakdown, sorted by value descending (EVM only) */
|
|
3089
|
-
chain_balances?: WalletDetailDataEvmBalanceChainBalancesItem[];
|
|
3090
|
-
/** Total portfolio value in USD (EVM only) */
|
|
3091
|
-
total_usd: number;
|
|
3092
|
-
}
|
|
3093
|
-
interface WalletDetailDataEvmTokensItem {
|
|
3094
|
-
/** Decimal-adjusted token balance as a string */
|
|
3095
|
-
balance: string;
|
|
3096
|
-
/** Chain name like ethereum, polygon (EVM only) */
|
|
3097
|
-
chain?: string;
|
|
3098
|
-
/** Whether the token is verified (EVM only) */
|
|
3099
|
-
is_verified: boolean;
|
|
3100
|
-
/** Token logo image URL */
|
|
3101
|
-
logo_url?: string;
|
|
3102
|
-
/** Full token name */
|
|
3103
|
-
name?: string;
|
|
3104
|
-
/** Current USD price per token (EVM only) */
|
|
3105
|
-
price: number;
|
|
3106
|
-
/** Token ticker symbol */
|
|
3107
|
-
symbol: string;
|
|
3108
|
-
/** Token contract address (EVM only) */
|
|
3109
|
-
token_address: string;
|
|
3110
|
-
/** Total USD value (balance * price) (EVM only) */
|
|
3111
|
-
usd_value: number;
|
|
3112
|
-
}
|
|
3113
|
-
interface WalletDetailDataLabels {
|
|
3114
|
-
/** Wallet address */
|
|
3115
|
-
address: string;
|
|
3116
|
-
/** Name of the associated entity like `Binance` or `Aave` */
|
|
3117
|
-
entity_name?: string;
|
|
3118
|
-
/** Type of entity like `exchange`, `fund`, or `whale` */
|
|
3119
|
-
entity_type?: string;
|
|
3120
|
-
/** List of labels assigned to this address */
|
|
3121
|
-
labels: WalletDetailDataLabelsLabelsItem[];
|
|
3122
|
-
}
|
|
3123
|
-
interface WalletDetailDataNftItem {
|
|
3124
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3125
|
-
chain?: string;
|
|
3126
|
-
/** NFT collection name */
|
|
3127
|
-
collection_name?: string;
|
|
3128
|
-
/** NFT contract address */
|
|
3129
|
-
contract_address: string;
|
|
3130
|
-
/** NFT image or thumbnail URL */
|
|
3131
|
-
image_url?: string;
|
|
3132
|
-
/** NFT item name or title */
|
|
3133
|
-
name?: string;
|
|
3134
|
-
/** NFT token ID within the collection */
|
|
3135
|
-
token_id: string;
|
|
3136
|
-
/** Latest trading price in USD */
|
|
3137
|
-
usd_price?: number;
|
|
3138
|
-
}
|
|
3139
|
-
interface WalletDetailDataSolBalance {
|
|
3140
|
-
/** Wallet address */
|
|
3141
|
-
address: string;
|
|
3142
|
-
/** Decimal-adjusted native SOL balance as a string (Solana only) */
|
|
3143
|
-
sol_balance: string;
|
|
3144
|
-
}
|
|
3145
|
-
interface WalletDetailDataSolTokensItem {
|
|
3146
|
-
/** Decimal-adjusted token balance as a string */
|
|
3147
|
-
balance: string;
|
|
3148
|
-
/** Token decimal places (Solana only) */
|
|
3149
|
-
decimals: number;
|
|
3150
|
-
/** Full token name */
|
|
3151
|
-
name?: string;
|
|
3152
|
-
/** Token ticker symbol */
|
|
3153
|
-
symbol: string;
|
|
3154
|
-
/** SPL token mint address (Solana only) */
|
|
3155
|
-
token_address: string;
|
|
3156
|
-
}
|
|
3157
|
-
interface WalletDetailDataApprovalsItemSpendersItem {
|
|
3158
|
-
/** Approved token amount (use -1 for unlimited) */
|
|
3159
|
-
allowance: number;
|
|
3160
|
-
/** Address of the approved spender contract */
|
|
3161
|
-
spender_address: string;
|
|
3162
|
-
/** Human-readable name of the spender, absent for unrecognized contracts */
|
|
3163
|
-
spender_name?: string;
|
|
3164
|
-
}
|
|
3165
|
-
interface WalletDetailDataEvmBalanceChainBalancesItem {
|
|
3166
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3167
|
-
chain: string;
|
|
3168
|
-
/** EVM chain ID like `1` for Ethereum or `137` for Polygon */
|
|
3169
|
-
chain_id?: number;
|
|
3170
|
-
/** Total USD value of assets on this chain */
|
|
3171
|
-
usd_value: number;
|
|
3172
|
-
}
|
|
3173
|
-
interface WalletDetailDataLabelsLabelsItem {
|
|
3174
|
-
/** Confidence score 0.0-1.0 */
|
|
3175
|
-
confidence?: number;
|
|
3176
|
-
/** Human-readable label for this address like `Binance Hot Wallet` */
|
|
3177
|
-
label: string;
|
|
3178
|
-
}
|
|
3179
|
-
interface WalletDetailParams {
|
|
3180
|
-
/** Wallet address (0x hex for EVM, base58 for Solana) */
|
|
3181
|
-
address: string;
|
|
3182
|
-
/** Chain filter for `tokens`, `nft`, and `approvals`. When omitted, inferred from address format: 0x addresses query all EVM chains, base58 addresses query Solana. */
|
|
3183
|
-
chain?: 'ethereum' | 'polygon' | 'bsc' | 'avalanche' | 'arbitrum' | 'optimism' | 'fantom' | 'base' | 'solana';
|
|
3184
|
-
/** Comma-separated sub-resources to include. Valid: `balance`, `tokens`, `labels`, `nft`, `approvals`. The `active_chains` field is always returned. `approvals` is opt-in (not in default) as it triggers additional upstream calls. — @default 'balance,tokens,labels,nft' */
|
|
3185
|
-
fields?: string;
|
|
3186
|
-
}
|
|
3187
|
-
interface WalletHistoryItem {
|
|
3188
|
-
/** Sender wallet address */
|
|
3189
|
-
from_address: string;
|
|
3190
|
-
/** Unix timestamp in seconds when the transaction was confirmed */
|
|
3191
|
-
timestamp: number;
|
|
3192
|
-
/** Recipient wallet address */
|
|
3193
|
-
to_address: string;
|
|
3194
|
-
/** Transaction hash */
|
|
3195
|
-
tx_hash: string;
|
|
3196
|
-
/** Transaction type: `send`, `receive`, `swap`, `approve`, etc. */
|
|
3197
|
-
tx_type?: string;
|
|
3198
|
-
/** Decimal-adjusted transaction value in native token as a string */
|
|
3199
|
-
value: string;
|
|
3200
|
-
}
|
|
3201
|
-
interface WalletHistoryParams {
|
|
3202
|
-
/** Wallet address — must be a raw 0x-prefixed hex address, not an ENS name */
|
|
3203
|
-
address: string;
|
|
3204
|
-
/** Chain filter. Can be `ethereum`, `polygon`, `bsc`, `avalanche`, `arbitrum`, `optimism`, `fantom`, or `base`. — @default 'ethereum' */
|
|
3205
|
-
chain?: 'ethereum' | 'polygon' | 'bsc' | 'avalanche' | 'arbitrum' | 'optimism' | 'fantom' | 'base';
|
|
3206
|
-
/** Results per page — @default '20' */
|
|
3207
|
-
limit?: number;
|
|
3208
|
-
/** Pagination offset — @default '0' */
|
|
3209
|
-
offset?: number;
|
|
3210
|
-
/** Field to sort results by — @default 'timestamp' */
|
|
3211
|
-
sort_by?: 'timestamp' | 'value';
|
|
3212
|
-
/** Sort order — @default 'desc' */
|
|
3213
|
-
order?: 'asc' | 'desc';
|
|
3214
|
-
}
|
|
3215
|
-
interface WalletLabelsBatchItem {
|
|
3216
|
-
/** Wallet address */
|
|
3217
|
-
address: string;
|
|
3218
|
-
/** Name of the associated entity like `Binance` or `Aave` */
|
|
3219
|
-
entity_name?: string;
|
|
3220
|
-
/** Type of entity like `exchange`, `fund`, or `whale` */
|
|
3221
|
-
entity_type?: string;
|
|
3222
|
-
/** List of labels assigned to this address */
|
|
3223
|
-
labels: WalletLabelsBatchItemLabelsItem[];
|
|
3224
|
-
}
|
|
3225
|
-
interface WalletLabelsBatchItemLabelsItem {
|
|
3226
|
-
/** Confidence score 0.0-1.0 */
|
|
3227
|
-
confidence?: number;
|
|
3228
|
-
/** Human-readable label for this address like `Binance Hot Wallet` */
|
|
3229
|
-
label: string;
|
|
3230
|
-
}
|
|
3231
|
-
interface WalletLabelsBatchParams {
|
|
3232
|
-
/** Comma-separated wallet addresses to look up, max 100 */
|
|
3233
|
-
addresses: string;
|
|
3234
|
-
}
|
|
3235
|
-
interface WalletNetWorthItem {
|
|
3236
|
-
/** Unix timestamp in seconds */
|
|
3237
|
-
timestamp: number;
|
|
3238
|
-
/** Total portfolio value in USD at this point in time */
|
|
3239
|
-
usd_value: number;
|
|
3240
|
-
}
|
|
3241
|
-
interface WalletNetWorthParams {
|
|
3242
|
-
/** Wallet address (0x hex, base58, or ENS name like `vitalik.eth`) */
|
|
3243
|
-
address: string;
|
|
3244
|
-
}
|
|
3245
|
-
interface WalletProtocolsItem {
|
|
3246
|
-
/** Canonical chain name where the protocol operates */
|
|
3247
|
-
chain: string;
|
|
3248
|
-
/** Protocol logo image URL */
|
|
3249
|
-
logo_url?: string;
|
|
3250
|
-
/** Individual positions held in this protocol */
|
|
3251
|
-
positions: WalletProtocolsItemPositionsItem[];
|
|
3252
|
-
/** Human-readable protocol name */
|
|
3253
|
-
protocol_name: string;
|
|
3254
|
-
/** Protocol website URL */
|
|
3255
|
-
site_url?: string;
|
|
3256
|
-
/** Total USD value across all positions in this protocol */
|
|
3257
|
-
total_usd: number;
|
|
3258
|
-
}
|
|
3259
|
-
interface WalletProtocolsItemPositionsItem {
|
|
3260
|
-
/** Total USD value of this position */
|
|
3261
|
-
balance_usd: number;
|
|
3262
|
-
/** Tokens borrowed in this position */
|
|
3263
|
-
borrow_tokens?: WalletProtocolsItemPositionsItemBorrowTokensItem[];
|
|
3264
|
-
/** LP tokens in this position */
|
|
3265
|
-
lp_tokens?: WalletProtocolsItemPositionsItemLpTokensItem[];
|
|
3266
|
-
/** Position name or type like `Lending` or `Staking` */
|
|
3267
|
-
name: string;
|
|
3268
|
-
/** Unclaimed reward tokens in this position */
|
|
3269
|
-
reward_tokens?: WalletProtocolsItemPositionsItemRewardTokensItem[];
|
|
3270
|
-
/** Tokens supplied/deposited in this position */
|
|
3271
|
-
supply_tokens?: WalletProtocolsItemPositionsItemSupplyTokensItem[];
|
|
3272
|
-
}
|
|
3273
|
-
interface WalletProtocolsItemPositionsItemBorrowTokensItem {
|
|
3274
|
-
/** Token amount held in this position */
|
|
3275
|
-
amount: number;
|
|
3276
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3277
|
-
chain: string;
|
|
3278
|
-
/** Full token name */
|
|
3279
|
-
name?: string;
|
|
3280
|
-
/** Current token price in USD */
|
|
3281
|
-
price: number;
|
|
3282
|
-
/** Token ticker symbol */
|
|
3283
|
-
symbol: string;
|
|
3284
|
-
/** Token contract address */
|
|
3285
|
-
token_address?: string;
|
|
3286
|
-
}
|
|
3287
|
-
interface WalletProtocolsItemPositionsItemLpTokensItem {
|
|
3288
|
-
/** Token amount held in this position */
|
|
3289
|
-
amount: number;
|
|
3290
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3291
|
-
chain: string;
|
|
3292
|
-
/** Full token name */
|
|
3293
|
-
name?: string;
|
|
3294
|
-
/** Current token price in USD */
|
|
3295
|
-
price: number;
|
|
3296
|
-
/** Token ticker symbol */
|
|
3297
|
-
symbol: string;
|
|
3298
|
-
/** Token contract address */
|
|
3299
|
-
token_address?: string;
|
|
3300
|
-
}
|
|
3301
|
-
interface WalletProtocolsItemPositionsItemRewardTokensItem {
|
|
3302
|
-
/** Token amount held in this position */
|
|
3303
|
-
amount: number;
|
|
3304
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3305
|
-
chain: string;
|
|
3306
|
-
/** Full token name */
|
|
3307
|
-
name?: string;
|
|
3308
|
-
/** Current token price in USD */
|
|
3309
|
-
price: number;
|
|
3310
|
-
/** Token ticker symbol */
|
|
3311
|
-
symbol: string;
|
|
3312
|
-
/** Token contract address */
|
|
3313
|
-
token_address?: string;
|
|
3314
|
-
}
|
|
3315
|
-
interface WalletProtocolsItemPositionsItemSupplyTokensItem {
|
|
3316
|
-
/** Token amount held in this position */
|
|
3317
|
-
amount: number;
|
|
3318
|
-
/** Canonical chain name like `ethereum` or `polygon` */
|
|
3319
|
-
chain: string;
|
|
3320
|
-
/** Full token name */
|
|
3321
|
-
name?: string;
|
|
3322
|
-
/** Current token price in USD */
|
|
3323
|
-
price: number;
|
|
3324
|
-
/** Token ticker symbol */
|
|
3325
|
-
symbol: string;
|
|
3326
|
-
/** Token contract address */
|
|
3327
|
-
token_address?: string;
|
|
3328
|
-
}
|
|
3329
|
-
interface WalletProtocolsParams {
|
|
3330
|
-
/** Wallet address — must be a raw 0x-prefixed hex address, not an ENS name */
|
|
3331
|
-
address: string;
|
|
3332
|
-
/** Results per page — @default '20' */
|
|
3333
|
-
limit?: number;
|
|
3334
|
-
/** Pagination offset — @default '0' */
|
|
3335
|
-
offset?: number;
|
|
3336
|
-
}
|
|
3337
|
-
interface WalletTransfersItem {
|
|
3338
|
-
/** Transfer activity type (Solana only, e.g. ACTIVITY_SPL_TRANSFER) */
|
|
3339
|
-
activity_type?: string;
|
|
3340
|
-
/** Decimal-adjusted transfer amount as a string */
|
|
3341
|
-
amount: string;
|
|
3342
|
-
/** Transfer value in USD at the time of the transaction */
|
|
3343
|
-
amount_usd?: number;
|
|
3344
|
-
/** Transfer direction relative to the queried wallet: `in` or `out` */
|
|
3345
|
-
flow?: string;
|
|
3346
|
-
/** Sender wallet address */
|
|
3347
|
-
from_address: string;
|
|
3348
|
-
/** Unix timestamp in seconds when the transfer occurred */
|
|
3349
|
-
timestamp: number;
|
|
3350
|
-
/** Recipient wallet address */
|
|
3351
|
-
to_address: string;
|
|
3352
|
-
/** Token contract address (EVM) or SPL mint address (Solana) */
|
|
3353
|
-
token_address?: string;
|
|
3354
|
-
/** Token ticker symbol (available for EVM chains from on-chain data) */
|
|
3355
|
-
token_symbol?: string;
|
|
3356
|
-
/** Transaction hash (EVM) or transaction signature (Solana) */
|
|
3357
|
-
tx_hash: string;
|
|
3358
|
-
}
|
|
3359
|
-
interface WalletTransfersParams {
|
|
3360
|
-
/** Wallet address — must be a raw address (0x-prefixed hex for EVM, base58 for Solana). ENS names like `vitalik.eth` are not supported; resolve to a 0x address first. */
|
|
3361
|
-
address: string;
|
|
3362
|
-
/** Chain. Can be `ethereum`, `base`, or `solana`. — @default 'ethereum' */
|
|
3363
|
-
chain?: 'ethereum' | 'base' | 'solana';
|
|
3364
|
-
/** Filter by transfer direction relative to the queried wallet. `in` for incoming, `out` for outgoing. Omit for both directions. */
|
|
3365
|
-
flow?: 'in' | 'out';
|
|
3366
|
-
/** Filter by token contract address. Use `0x0000000000000000000000000000000000000000` for native token transfers. Omit for all tokens. */
|
|
3367
|
-
token?: string;
|
|
3368
|
-
/** Results per page — @default '20' */
|
|
3369
|
-
limit?: number;
|
|
3370
|
-
/** Pagination offset — @default '0' */
|
|
3371
|
-
offset?: number;
|
|
3372
|
-
}
|
|
3373
|
-
interface WebFetchData {
|
|
3374
|
-
/** Full page content converted to clean markdown text */
|
|
3375
|
-
content: string;
|
|
3376
|
-
/** Page title extracted from the HTML */
|
|
3377
|
-
title?: string;
|
|
3378
|
-
/** The URL that was fetched */
|
|
3379
|
-
url: string;
|
|
3380
|
-
}
|
|
3381
|
-
interface WebFetchParams {
|
|
3382
|
-
/** URL to fetch and parse */
|
|
3383
|
-
url: string;
|
|
3384
|
-
/** CSS selector to extract specific content */
|
|
3385
|
-
target_selector?: string;
|
|
3386
|
-
/** CSS selector to remove unwanted elements */
|
|
3387
|
-
remove_selector?: string;
|
|
3388
|
-
/** CSS selector to wait for before extracting */
|
|
3389
|
-
wait_for_selector?: string;
|
|
3390
|
-
/** Request timeout in milliseconds — @default '30000' */
|
|
3391
|
-
timeout?: number;
|
|
3392
|
-
}
|
|
3393
|
-
interface V2KalshiOrderbooksItem {
|
|
3394
|
-
}
|
|
3395
|
-
interface V2KalshiOrderbooksParams {
|
|
3396
|
-
/** Kalshi market ticker */
|
|
3397
|
-
ticker: string;
|
|
3398
|
-
/** Start time in Unix milliseconds. 0 means 7 days ago. */
|
|
3399
|
-
start_time?: number;
|
|
3400
|
-
/** End time in Unix milliseconds. 0 means current time. */
|
|
3401
|
-
end_time?: number;
|
|
3402
|
-
/** Maximum number of snapshots to return — @default '100' */
|
|
3403
|
-
limit?: number;
|
|
3404
|
-
/** Base64 cursor for pagination */
|
|
3405
|
-
pagination_key?: string;
|
|
3406
|
-
}
|
|
3407
|
-
interface V2PolymarketCandlesticksItem {
|
|
3408
|
-
}
|
|
3409
|
-
interface V2PolymarketCandlesticksParams {
|
|
3410
|
-
/** Start time (Unix seconds). 0 means no lower bound. */
|
|
3411
|
-
start_time?: number;
|
|
3412
|
-
/** End time (Unix seconds). 0 means current time. */
|
|
3413
|
-
end_time?: number;
|
|
3414
|
-
/** Candle interval in minutes: 1=1min, 60=1hour, 1440=1day — @default '60' */
|
|
3415
|
-
interval?: number;
|
|
3416
|
-
}
|
|
3417
|
-
interface V2PolymarketVolumeTimeseriesItem {
|
|
3418
|
-
}
|
|
3419
|
-
interface V2PolymarketVolumeTimeseriesParams {
|
|
3420
|
-
/** Time granularity for aggregation — @default 'day' */
|
|
3421
|
-
granularity?: 'day' | 'week' | 'month' | 'year' | 'all';
|
|
3422
|
-
/** Start time (Unix seconds). 0 means no lower bound. */
|
|
3423
|
-
start_time?: number;
|
|
3424
|
-
/** End time (Unix seconds). 0 means current time. */
|
|
3425
|
-
end_time?: number;
|
|
3426
|
-
}
|
|
3427
|
-
interface V2PolymarketOrderbooksItem {
|
|
3428
|
-
}
|
|
3429
|
-
interface V2PolymarketOrderbooksParams {
|
|
3430
|
-
/** Token identifier */
|
|
3431
|
-
token_id: string;
|
|
3432
|
-
/** Start time in Unix milliseconds. 0 means 7 days ago. */
|
|
3433
|
-
start_time?: number;
|
|
3434
|
-
/** End time in Unix milliseconds. 0 means current time. */
|
|
3435
|
-
end_time?: number;
|
|
3436
|
-
/** Maximum number of snapshots to return — @default '100' */
|
|
3437
|
-
limit?: number;
|
|
3438
|
-
/** Base64 cursor for pagination */
|
|
3439
|
-
pagination_key?: string;
|
|
3440
|
-
}
|
|
3441
|
-
interface V2PolymarketVolumeChartItem {
|
|
3442
|
-
}
|
|
3443
|
-
interface V2PolymarketVolumeChartParams {
|
|
3444
|
-
/** Time granularity for volume aggregation — @default 'hour' */
|
|
3445
|
-
granularity?: 'hour' | 'day' | 'week';
|
|
3446
|
-
/** Start time (Unix seconds). 0 means no lower bound. */
|
|
3447
|
-
start_time?: number;
|
|
3448
|
-
/** End time (Unix seconds). 0 means current time. */
|
|
3449
|
-
end_time?: number;
|
|
3450
|
-
}
|
|
3451
|
-
|
|
3452
|
-
/** Returns order book bid/ask levels with computed stats. **Included fields:** spread, spread percentage, mid-price, and total bid/ask depth. Use `limit` to control the number of price levels (1–100, default 20). Set `type=swap` to query perpetual contract order books instead of spot. */
|
|
3453
|
-
declare function useExchangeDepth(params: ExchangeDepthParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangeDepthItem>, Error>;
|
|
3454
|
-
/** Returns historical funding rate records for a perpetual contract. **Pagination:** use `from` to set the start time and `limit` to control result count. For longer history, pass the last returned timestamp as the next `from` value. **Note:** not all exchanges support historical queries via `from`; some only return recent data regardless. For the latest funding rate snapshot, see `/exchange/perp?fields=funding`. */
|
|
3455
|
-
declare function useExchangeFundingHistory(params: ExchangeFundingHistoryParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangeFundingHistoryItem>, Error>;
|
|
3456
|
-
/** Returns OHLCV candlestick data with period summary stats (high, low, total volume). **Intervals:** 15 options from `1m` to `1M`. **Pagination:** use `from` to set the start time and `limit` to control candle count. For longer ranges, pass the last returned candle's timestamp as the next `from` value. Exchange-side limits vary (200–1000 per request). Set `type=swap` to query perpetual contract candles instead of spot. */
|
|
3457
|
-
declare function useExchangeKlines(params: ExchangeKlinesParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangeKlinesItem>, Error>;
|
|
3458
|
-
/** Returns historical long/short ratio for a perpetual contract. **Included fields:** ratio value, long account percentage, short account percentage. **Granularity:** `interval` supports `1h`, `4h`, `1d`. **Pagination:** use `from` for start time and `limit` for result count. For longer history, pass the last returned timestamp as the next `from` value. **Note:** not all exchanges support historical queries via `from`; some only return recent data regardless. Just pass the base pair (e.g. `pair=BTC/USDT`). For aggregated cross-exchange long/short ratio, see `/market/futures`. */
|
|
3459
|
-
declare function useExchangeLongShortRatio(params: ExchangeLongShortRatioParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangeLongShortRatioItem>, Error>;
|
|
3460
|
-
/** Returns trading pairs available on an exchange. **Filters:** `type` (`spot`, `swap`, `future`, `option`) or free-text `search`. **Included fields:** pair name, base/quote currencies, market type, active status, and default fee rates. Use the returned `pair` values as the `pair` parameter in other exchange endpoints. */
|
|
3461
|
-
declare function useExchangeMarkets(params?: ExchangeMarketsParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangeMarketsItem>, Error>;
|
|
3462
|
-
/** Returns a combined snapshot of perpetual contract data for a pair. **Available fields** (via `fields`): - `funding` — current funding rate, next settlement, mark/index price - `oi` — open interest in contracts and USD Just pass the base pair (e.g. `pair=BTC/USDT`). The `:USDT` swap suffix is added automatically. */
|
|
3463
|
-
declare function useExchangePerp(params: ExchangePerpParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<ExchangePerpData>, Error>;
|
|
3464
|
-
/** Returns the real-time ticker for a trading pair. **Included fields:** last price, bid/ask, 24h high/low, 24h volume, 24h price change. Set `type=swap` to query perpetual contract prices instead of spot. For historical price trends, use `/market/price`. */
|
|
3465
|
-
declare function useExchangePrice(params: ExchangePriceParams): _tanstack_react_query.UseQueryResult<ApiResponse<ExchangePriceItem>, Error>;
|
|
3466
|
-
|
|
3467
|
-
/** Returns a fund's **profile metadata**. **Included fields:** X accounts, team members, recent research, invested project count. This does NOT return the list of investments — use `/fund/portfolio` for that. **Lookup:** by UUID (`id`) or name (`q`). Returns 404 if not found. */
|
|
3468
|
-
declare function useFundDetail(params?: FundDetailParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<FundDetailData>, Error>;
|
|
3469
|
-
/** Returns investment rounds for a fund's portfolio, sorted by date (newest first). A project may appear multiple times if the fund participated in multiple rounds. **Included fields:** project name, logo, date, raise amount, lead investor status. **Lookup:** by UUID (`id`) or name (`q`). */
|
|
3470
|
-
declare function useInfiniteFundPortfolio(params?: Omit<FundPortfolioParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<FundPortfolioItem>, unknown>, Error>;
|
|
3471
|
-
/** Returns top-ranked funds by a specified metric. **Available metrics:** `tier` (lower is better), `portfolio_count` (number of invested projects). */
|
|
3472
|
-
declare function useInfiniteFundRanking(params: Omit<FundRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<FundRankingItem>, unknown>, Error>;
|
|
3473
|
-
|
|
3474
|
-
/** Returns Kalshi events with nested markets, optionally filtered by `event_ticker`. Each event includes market count and a list of markets. **Data refresh:** ~30 minutes */
|
|
3475
|
-
declare function useInfiniteKalshiEvents(params: Omit<KalshiEventsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiEventsItem>, unknown>, Error>;
|
|
3476
|
-
/** Returns Kalshi markets, optionally filtered by `market_ticker`. Each market includes price, volume, and status. **Data refresh:** ~30 minutes */
|
|
3477
|
-
declare function useInfiniteKalshiMarkets(params: Omit<KalshiMarketsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiMarketsItem>, unknown>, Error>;
|
|
3478
|
-
/** Returns daily open interest history for a Kalshi market, filtered by `time_range`. **Data refresh:** ~30 minutes */
|
|
3479
|
-
declare function useInfiniteKalshiOpenInterest(params: Omit<KalshiOpenInterestParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiOpenInterestItem>, unknown>, Error>;
|
|
3480
|
-
/** Returns price history for a Kalshi market. **Interval options:** - `interval=1d` — daily OHLC from market reports (~30 min delay) - `interval=latest` — real-time price from trades **Data refresh:** ~30 minutes (daily), real-time (latest) */
|
|
3481
|
-
declare function useInfiniteKalshiPrices(params: Omit<KalshiPricesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiPricesItem>, unknown>, Error>;
|
|
3482
|
-
/** Returns top-ranked Kalshi markets by last day's `notional_volume_usd` or `open_interest`. **Filters:** `status`. **Data refresh:** ~30 minutes */
|
|
3483
|
-
declare function useInfiniteKalshiRanking(params?: Omit<KalshiRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiRankingItem>, unknown>, Error>;
|
|
3484
|
-
/** Returns individual trade records for a Kalshi market. **Filters:** `taker_side`, `min_contracts`, and date range. **Sort:** `timestamp` or `num_contracts`. **Data refresh:** real-time */
|
|
3485
|
-
declare function useInfiniteKalshiTrades(params: Omit<KalshiTradesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiTradesItem>, unknown>, Error>;
|
|
3486
|
-
/** Returns daily trading volume history for a Kalshi market, filtered by `time_range`. **Data refresh:** ~30 minutes */
|
|
3487
|
-
declare function useInfiniteKalshiVolumes(params: Omit<KalshiVolumesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<KalshiVolumesItem>, unknown>, Error>;
|
|
3488
|
-
|
|
3489
|
-
/** Returns daily ETF flow history for US spot ETFs. **Included fields:** net flow (USD), token price, per-ticker breakdown. Sorted by date descending. `symbol`: `BTC` or `ETH`. */
|
|
3490
|
-
declare function useMarketEtf(params: MarketEtfParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketEtfItem>, Error>;
|
|
3491
|
-
/** Returns Bitcoin Fear & Greed Index history. **Included fields:** index value (0-100), classification label, BTC price at each data point. Sorted newest-first. Use `from`/`to` to filter by date range. */
|
|
3492
|
-
declare function useMarketFearGreed(params?: MarketFearGreedParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketFearGreedItem>, Error>;
|
|
3493
|
-
/** Returns futures market data across all tracked tokens. **Included fields:** open interest, funding rate, long/short ratio, 24h volume. Sorted by `volume_24h` by default — use `sort_by` to change. */
|
|
3494
|
-
declare function useMarketFutures(params?: MarketFuturesParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketFuturesItem>, Error>;
|
|
3495
|
-
/** Returns OHLC-style aggregated liquidation data for a token on a specific exchange. **Filters:** `symbol`, `exchange`, `interval`. Useful for charting liquidation volume over time. */
|
|
3496
|
-
declare function useMarketLiquidationChart(params: MarketLiquidationChartParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketLiquidationChartItem>, Error>;
|
|
3497
|
-
/** Returns liquidation breakdown by exchange. **Included fields:** total, long, and short volumes in USD. **Filters:** `symbol` and `time_range` (`1h`, `4h`, `12h`, `24h`). */
|
|
3498
|
-
declare function useMarketLiquidationExchangeList(params?: MarketLiquidationExchangeListParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketLiquidationExchangeListItem>, Error>;
|
|
3499
|
-
/** Returns individual large liquidation orders above a USD threshold (`min_amount`, default 10000). **Filters:** `exchange` and `symbol`. For aggregate totals and long/short breakdown by exchange, use `/market/liquidation/exchange-list`. For historical liquidation charts, use `/market/liquidation/chart`. */
|
|
3500
|
-
declare function useMarketLiquidationOrder(params?: MarketLiquidationOrderParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketLiquidationOrderItem>, Error>;
|
|
3501
|
-
/** Returns on-chain indicator time-series for BTC or ETH. **Available metrics:** `nupl`, `sopr`, `mvrv`, `puell-multiple`, `nvm`, `nvt`, `nvt-golden-cross`, `exchange-flows` (inflow/outflow/netflow/reserve). */
|
|
3502
|
-
declare function useMarketOnchainIndicator(params: MarketOnchainIndicatorParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketOnchainIndicatorItem>, Error>;
|
|
3503
|
-
/** Returns options market data for a `symbol`. **Included fields:** open interest, volume, put/call ratio, max pain price. */
|
|
3504
|
-
declare function useMarketOptions(params: MarketOptionsParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketOptionsItem>, Error>;
|
|
3505
|
-
/** Returns historical price data points for a token over a specified time range. **Time range options:** - Predefined: `1d`, `7d`, `14d`, `30d`, `90d`, `180d`, `365d`, `max` - Custom: use `from` / `to` (Unix seconds or `YYYY-MM-DD`) **Granularity** is automatic based on range: - `1d` → 5-minute intervals - `7d`–`90d` → hourly - `180d`+ → daily */
|
|
3506
|
-
declare function useMarketPrice(params: MarketPriceParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketPriceItem>, Error>;
|
|
3507
|
-
/** Returns a technical indicator for a trading pair on a given exchange and interval. **Modes:** - Set `from`/`to` for time-series - Omit for latest value only **Indicator-specific tuning** via `options` (e.g. `period:7`, `fast_period:8,slow_period:21,signal_period:5`, `period:10,stddev:1.5`). **Available indicators:** `rsi`, `macd`, `ema`, `sma`, `bbands`, `stoch`, `adx`, `atr`, `cci`, `obv`, `vwap`, `dmi`, `ichimoku`, `supertrend`. */
|
|
3508
|
-
declare function useMarketPriceIndicator(params: MarketPriceIndicatorParams): _tanstack_react_query.UseQueryResult<ApiResponse<MarketPriceIndicatorItem>, Error>;
|
|
3509
|
-
/** Returns tokens ranked by a specified metric. **Available metrics:** `market_cap`, `top_gainers`, `top_losers`, `volume`. **Note:** `top_gainers` and `top_losers` rank by 24h price change within the top 250 coins by market cap. For circulating supply, FDV, ATH/ATL, use `/project/detail?fields=token_info`. */
|
|
3510
|
-
declare function useInfiniteMarketRanking(params?: Omit<MarketRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<MarketRankingItem>, unknown>, Error>;
|
|
3511
|
-
|
|
3512
|
-
/** Returns daily volume and open interest comparison for a specific matched market pair. Both `polymarket_condition_id` and `kalshi_market_ticker` are required. **Volume units:** Polymarket = USD, Kalshi = contracts. */
|
|
3513
|
-
declare function useInfiniteMatchingMarketDaily(params: Omit<MatchingMarketDailyParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<MatchingMarketDailyItem>, unknown>, Error>;
|
|
3514
|
-
/** Given a Polymarket condition_id or Kalshi market_ticker, find the corresponding match on the other platform. Provide at least one of `polymarket_condition_id` or `kalshi_market_ticker`. When both are provided, results are filtered to pairs matching both (useful for verifying a specific pair). */
|
|
3515
|
-
declare function useInfiniteMatchingMarketFind(params?: Omit<MatchingMarketFindParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<MatchingMarketFindItem>, unknown>, Error>;
|
|
3516
|
-
/** Returns one-to-one matched market pairs between Polymarket and Kalshi. Each pair maps a Polymarket condition_id to a Kalshi market_ticker with a confidence score. **Volume units differ:** Polymarket = USD, Kalshi = contracts ($1 binary options). **Data refresh:** seed-driven, updated periodically. */
|
|
3517
|
-
declare function useInfiniteMatchingMarketPairs(params?: Omit<MatchingMarketPairsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<MatchingMarketPairsItem>, unknown>, Error>;
|
|
3518
|
-
|
|
3519
|
-
/** Returns the full content of a single news article by its ID (returned as `id` in feed and search results). */
|
|
3520
|
-
declare function useNewsDetail(params: NewsDetailParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<NewsDetailData>, Error>;
|
|
3521
|
-
/** Returns crypto news from major sources. **Filters:** `source` (enum), `project`, and time range (`from`/`to`). **Sort:** `recency` (default) or `trending`. Use the detail endpoint with article `id` for full content. */
|
|
3522
|
-
declare function useInfiniteNewsFeed(params?: Omit<NewsFeedParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<NewsFeedItem>, unknown>, Error>;
|
|
3523
|
-
|
|
3524
|
-
/** Returns bridge protocols ranked by total USD volume over a specified time range. */
|
|
3525
|
-
declare function useInfiniteOnchainBridgeRanking(params?: Omit<OnchainBridgeRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainBridgeRankingItem>, unknown>, Error>;
|
|
3526
|
-
/** Returns the current gas price for an EVM chain via `eth_gasPrice` JSON-RPC. **Included fields:** gas price in both wei (raw) and Gwei (human-readable). **Supported chains:** `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `base`, `avalanche`, `fantom`, `linea`, `cyber`. */
|
|
3527
|
-
declare function useOnchainGasPrice(params: OnchainGasPriceParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<OnchainGasPriceData>, Error>;
|
|
3528
|
-
/** Executes a structured JSON query on blockchain data. No raw SQL needed — specify source, fields, filters, sort, and pagination. All tables live in the **agent** database. Use `GET /v1/onchain/schema` to discover available tables and their columns. **Key rules:** - **Source format:** `agent.<table_name>` (e.g. `agent.ethereum_transactions`, `agent.ethereum_dex_trades`) - Max 10,000 rows (default 20), 30s timeout - **Always filter on block_date** — it is the partition key. Without it, queries scan billions of rows and will timeout **Data refresh:** ~24 hours. ## Example ```json { "source": "agent.ethereum_dex_trades", "fields": ["block_time", "project", "token_pair", "amount_usd", "taker"], "filters": [ {"field": "block_date", "op": "gte", "value": "2025-03-01"}, {"field": "project", "op": "eq", "value": "uniswap"}, {"field": "amount_usd", "op": "gte", "value": 100000} ], "sort": [{"field": "amount_usd", "order": "desc"}], "limit": 20 } ``` */
|
|
3529
|
-
declare function useInfiniteOnchainStructuredQuery(params: Omit<OnchainStructuredQueryParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainStructuredQueryItem>, unknown>, Error>;
|
|
3530
|
-
/** Returns table metadata for all available on-chain databases. **Included fields:** database name, table name, column names, types, and comments. */
|
|
3531
|
-
declare function useInfiniteOnchainSchema(): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainSchemaItem>, unknown>, Error>;
|
|
3532
|
-
/** Executes a raw SQL SELECT query against blockchain data. All tables live in the **agent** database. Use `GET /v1/onchain/schema` to discover available tables and their columns before writing queries. ## Rules - Only SELECT/WITH statements allowed (read-only) - All table references must be database-qualified: `agent.<table_name>` - Max 10,000 rows (default 1,000), 30s timeout - **Always filter on block_date or block_number** — partition key, without it queries will timeout - Avoid `SELECT *` on large tables — specify only the columns you need **Data refresh:** ~24 hours. ## Example ```sql SELECT block_time, token_pair, amount_usd, taker, tx_hash FROM agent.ethereum_dex_trades WHERE block_date >= today() - 7 AND project = 'uniswap' AND amount_usd > 100000 ORDER BY amount_usd DESC LIMIT 20 ``` */
|
|
3533
|
-
declare function useInfiniteOnchainSql(params: Omit<OnchainSqlParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainSqlItem>, unknown>, Error>;
|
|
3534
|
-
/** Returns transaction details by hash. All numeric fields are hex-encoded — use parseInt(hex, 16) to convert. **Supported chains:** `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `base`, `avalanche`, `fantom`, `linea`, `cyber`. Returns 404 if the transaction is not found. */
|
|
3535
|
-
declare function useInfiniteOnchainTx(params: Omit<OnchainTxParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainTxItem>, unknown>, Error>;
|
|
3536
|
-
/** Returns DeFi yield pools ranked by APY or TVL. Returns the latest snapshot. Filter by protocol. */
|
|
3537
|
-
declare function useInfiniteOnchainYieldRanking(params?: Omit<OnchainYieldRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<OnchainYieldRankingItem>, unknown>, Error>;
|
|
3538
|
-
|
|
3539
|
-
/** Returns trade and redemption activity for a Polymarket wallet. **Data refresh:** ~30 minutes */
|
|
3540
|
-
declare function useInfinitePolymarketActivity(params: Omit<PolymarketActivityParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketActivityItem>, unknown>, Error>;
|
|
3541
|
-
/** Returns Polymarket events with nested markets, optionally filtered by `event_slug`. Each event includes aggregated status, volume, and a list of markets with `side_a`/`side_b` outcomes. **Data refresh:** ~30 minutes */
|
|
3542
|
-
declare function useInfinitePolymarketEvents(params: Omit<PolymarketEventsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketEventsItem>, unknown>, Error>;
|
|
3543
|
-
/** Returns Polymarket markets, optionally filtered by `market_slug`. Each market includes `side_a` and `side_b` outcomes. Current prices are available via `/polymarket/prices` using the `condition_id`. **Data refresh:** ~30 minutes */
|
|
3544
|
-
declare function useInfinitePolymarketMarkets(params: Omit<PolymarketMarketsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketMarketsItem>, unknown>, Error>;
|
|
3545
|
-
/** Returns daily open interest history for a Polymarket market. **Data refresh:** ~30 minutes */
|
|
3546
|
-
declare function useInfinitePolymarketOpenInterest(params: Omit<PolymarketOpenInterestParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketOpenInterestItem>, unknown>, Error>;
|
|
3547
|
-
/** Returns wallet positions on Polymarket markets. **Data refresh:** ~30 minutes */
|
|
3548
|
-
declare function useInfinitePolymarketPositions(params: Omit<PolymarketPositionsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketPositionsItem>, unknown>, Error>;
|
|
3549
|
-
/** Returns aggregated price history for a Polymarket market. Use `interval=latest` for the most recent price snapshot. **Data refresh:** ~30 minutes */
|
|
3550
|
-
declare function useInfinitePolymarketPrices(params: Omit<PolymarketPricesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketPricesItem>, unknown>, Error>;
|
|
3551
|
-
/** Returns top-ranked Polymarket markets. **Sort by:** `volume_24h`, `volume_7d`, `open_interest`, or `trade_count`. **Filters:** `status` and `end_before`. **Data refresh:** ~30 minutes */
|
|
3552
|
-
declare function useInfinitePolymarketRanking(params?: Omit<PolymarketRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketRankingItem>, unknown>, Error>;
|
|
3553
|
-
/** Returns paginated trade records for a Polymarket market or wallet. **Filters:** `condition_id` (market) or `address` (wallet), plus `outcome_label`, `min_amount`, and date range. At least one of `condition_id` or `address` is required. **Sort:** `newest`, `oldest`, or `largest`. **Data refresh:** ~30 minutes */
|
|
3554
|
-
declare function useInfinitePolymarketTrades(params?: Omit<PolymarketTradesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketTradesItem>, unknown>, Error>;
|
|
3555
|
-
/** Returns trading volume and trade count history for a Polymarket market. **Data refresh:** ~30 minutes */
|
|
3556
|
-
declare function useInfinitePolymarketVolumes(params: Omit<PolymarketVolumesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PolymarketVolumesItem>, unknown>, Error>;
|
|
3557
|
-
|
|
3558
|
-
/** Returns daily notional volume and open interest aggregated by category across Kalshi and Polymarket. **Filters:** `source` or `category`. **Data refresh:** daily */
|
|
3559
|
-
declare function useInfinitePredictionMarketCategoryMetrics(params?: Omit<PredictionMarketCategoryMetricsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<PredictionMarketCategoryMetricsItem>, unknown>, Error>;
|
|
3560
|
-
|
|
3561
|
-
/** Returns time-series DeFi metrics for a project. **Available metrics:** `volume`, `fee`, `fees`, `revenue`, `tvl`, `users`. **Lookup:** by UUID (`id`) or name (`q`). Filter by `chain` and date range (`from`/`to`). Returns 404 if the project is not found. **Note:** this endpoint only returns data for DeFi protocol projects (e.g. `aave`, `uniswap`, `lido`, `makerdao`). Use `q` with a DeFi protocol name. */
|
|
3562
|
-
declare function useInfiniteProjectDefiMetrics(params: Omit<ProjectDefiMetricsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<ProjectDefiMetricsItem>, unknown>, Error>;
|
|
3563
|
-
/** Returns top DeFi projects ranked by a protocol metric. **Available metrics:** `tvl`, `revenue`, `fees`, `volume`, `users`. */
|
|
3564
|
-
declare function useInfiniteProjectDefiRanking(params: Omit<ProjectDefiRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<ProjectDefiRankingItem>, unknown>, Error>;
|
|
3565
|
-
/** Returns multiple project sub-resources in a single request. **Available fields** (via `fields`): `overview`, `token_info`, `tokenomics`, `funding`, `team`, `contracts`, `social`, `tge_status`. **Lookup:** accepts project names directly via `q` (e.g. `?q=aave`) — no need to call `/search/project` first. Also accepts UUID via `id`. Returns 404 if not found. For DeFi metrics (TVL, fees, revenue, volume, users) and per-chain breakdown, use `/project/defi/metrics`. */
|
|
3566
|
-
declare function useProjectDetail(params?: ProjectDetailParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<ProjectDetailData>, Error>;
|
|
3567
|
-
|
|
3568
|
-
/** Searches and filters airdrop opportunities. **Filters:** keyword, status, reward type, task type. Returns paginated results with optional task details. */
|
|
3569
|
-
declare function useInfiniteSearchAirdrop(params?: Omit<SearchAirdropParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchAirdropItem>, unknown>, Error>;
|
|
3570
|
-
/** Searches project events by keyword, optionally filtered by `type`. **Valid types:** `launch`, `upgrade`, `partnership`, `news`, `airdrop`, `listing`, `twitter`. **Lookup:** by UUID (`id`) or name (`q`). Returns 404 if the project is not found. */
|
|
3571
|
-
declare function useInfiniteSearchEvents(params?: Omit<SearchEventsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchEventsItem>, unknown>, Error>;
|
|
3572
|
-
/** Searches funds by keyword. **Included fields:** name, tier, type, logo, top invested projects. */
|
|
3573
|
-
declare function useInfiniteSearchFund(params: Omit<SearchFundParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchFundItem>, unknown>, Error>;
|
|
3574
|
-
/** Searches Kalshi events by keyword and/or category. **Filters:** - Keyword matching event title, subtitle, or market title - Category At least one of `q` or `category` is required. Returns events with nested markets. **Data refresh:** ~30 minutes */
|
|
3575
|
-
declare function useInfiniteSearchKalshi(params?: Omit<SearchKalshiParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchKalshiItem>, unknown>, Error>;
|
|
3576
|
-
/** Searches crypto news articles by keyword. Returns top 10 results ranked by relevance with highlighted matching fragments. */
|
|
3577
|
-
declare function useInfiniteSearchNews(params: Omit<SearchNewsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchNewsItem>, unknown>, Error>;
|
|
3578
|
-
/** Searches Polymarket events by keyword, tags, and/or category. **Filters:** - Keyword matching market question, event title, or description - Comma-separated tag labels - Surf-curated category At least one of `q`, `tags`, or `category` is required. Returns events with nested markets ranked by volume. **Data refresh:** ~30 minutes */
|
|
3579
|
-
declare function useInfiniteSearchPolymarket(params?: Omit<SearchPolymarketParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchPolymarketItem>, unknown>, Error>;
|
|
3580
|
-
/** Searches crypto projects by keyword. **Included fields:** name, description, chains, logo. */
|
|
3581
|
-
declare function useInfiniteSearchProject(params: Omit<SearchProjectParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchProjectItem>, unknown>, Error>;
|
|
3582
|
-
/** Searches X (Twitter) users by keyword. **Included fields:** handle, display name, bio, follower count, avatar. */
|
|
3583
|
-
declare function useInfiniteSearchSocialPeople(params: Omit<SearchSocialPeopleParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SearchSocialPeopleItem>, unknown>, Error>;
|
|
3584
|
-
/** Searches X (Twitter) posts by keyword or `from:handle` syntax. **Included fields:** author, content, engagement metrics, timestamp. **Pagination:** check `meta.has_more`; if true, pass `meta.next_cursor` as the `cursor` query parameter in the next request. */
|
|
3585
|
-
declare function useInfiniteSearchSocialPosts(params: Omit<SearchSocialPostsParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SearchSocialPostsItem>, unknown>, Error>;
|
|
3586
|
-
/** Searches wallets by ENS name, address label, or address prefix. Returns matching wallet addresses with entity labels. */
|
|
3587
|
-
declare function useInfiniteSearchWallet(params: Omit<SearchWalletParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchWalletItem>, unknown>, Error>;
|
|
3588
|
-
/** Searches web pages, articles, and content by keyword. **Filters:** domain via `site` (e.g. `coindesk.com`). **Included fields:** titles, URLs, content snippets. */
|
|
3589
|
-
declare function useInfiniteSearchWeb(params: Omit<SearchWebParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SearchWebItem>, unknown>, Error>;
|
|
3590
|
-
|
|
3591
|
-
/** Returns a **point-in-time snapshot** of social analytics for a project. **Available fields** (via `fields`): `sentiment`, `follower_geo`, `smart_followers`. **Lookup:** by X account ID (`x_id`) or project name (`q`, e.g. `uniswap`, `solana`). The `q` parameter must be a crypto project name, not a personal Twitter handle. Returns 404 if the project has no linked Twitter account. For sentiment **trends over time**, use `/social/mindshare` instead. */
|
|
3592
|
-
declare function useSocialDetail(params?: SocialDetailParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<SocialDetailData>, Error>;
|
|
3593
|
-
/** Returns mindshare (social view count) **time-series trend** for a project, aggregated by `interval`. **Intervals:** `5m`, `1h`, `1d`, `7d`. **Filters:** date range with `from`/`to` (Unix seconds). Lookup by name (`q`). Use this for sentiment **trends**, mindshare **over time**, or social momentum changes. For a **point-in-time snapshot** of social analytics (sentiment score, follower geo, smart followers), use `/social/detail` instead. */
|
|
3594
|
-
declare function useInfiniteSocialMindshare(params: Omit<SocialMindshareParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SocialMindshareItem>, unknown>, Error>;
|
|
3595
|
-
/** Returns top crypto projects ranked by mindshare (social view count), refreshed every 5 minutes. **Filters:** - `tag` — scope to a category (e.g. `dex`, `l1`, `meme`) - `time_range` — ranking window (`24h`, `48h`, `7d`, `30d`) Supports `limit`/`offset` pagination. */
|
|
3596
|
-
declare function useInfiniteSocialRanking(params?: Omit<SocialRankingParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SocialRankingItem>, unknown>, Error>;
|
|
3597
|
-
/** Returns smart follower count time-series for a project, sorted by date descending. **Lookup:** by X account ID (`x_id`) or project name (`q`). The `q` parameter must be a project name (e.g. `uniswap`, `ethereum`), not a personal X handle — use `x_id` for individual accounts. Returns 404 if the project has no linked X account. */
|
|
3598
|
-
declare function useInfiniteSocialSmartFollowersHistory(params?: Omit<SocialSmartFollowersHistoryParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SocialSmartFollowersHistoryItem>, unknown>, Error>;
|
|
3599
|
-
/** Returns replies/comments on a specific tweet. **Lookup:** by `tweet_id`. */
|
|
3600
|
-
declare function useInfiniteSocialTweetReplies(params: Omit<SocialTweetRepliesParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SocialTweetRepliesItem>, unknown>, Error>;
|
|
3601
|
-
/** Returns X (Twitter) posts by numeric post ID strings. Pass up to 100 comma-separated IDs via the `ids` query parameter. */
|
|
3602
|
-
declare function useInfiniteSocialTweets(params: Omit<SocialTweetsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<SocialTweetsItem>, unknown>, Error>;
|
|
3603
|
-
/** Returns an X (Twitter) user profile. **Included fields:** display name, follower count, following count, and bio. **Lookup:** by `handle` (without @). */
|
|
3604
|
-
declare function useSocialUser(params: SocialUserParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<SocialUserData>, Error>;
|
|
3605
|
-
/** Returns a list of followers for the specified handle on X (Twitter). **Lookup:** by `handle` (without @). */
|
|
3606
|
-
declare function useInfiniteSocialUserFollowers(params: Omit<SocialUserFollowersParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SocialUserFollowersItem>, unknown>, Error>;
|
|
3607
|
-
/** Returns a list of users that the specified handle follows on X (Twitter). **Lookup:** by `handle` (without @). */
|
|
3608
|
-
declare function useInfiniteSocialUserFollowing(params: Omit<SocialUserFollowingParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SocialUserFollowingItem>, unknown>, Error>;
|
|
3609
|
-
/** Returns recent X (Twitter) posts by a specific user, ordered by recency. **Lookup:** by `handle` (without @). Use `filter=original` to exclude retweets. **Pagination:** check `meta.has_more`; if true, pass `meta.next_cursor` as the `cursor` query parameter in the next request. */
|
|
3610
|
-
declare function useInfiniteSocialUserPosts(params: Omit<SocialUserPostsParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SocialUserPostsItem>, unknown>, Error>;
|
|
3611
|
-
/** Returns recent replies by the specified handle on X (Twitter). **Lookup:** by `handle` (without @). */
|
|
3612
|
-
declare function useInfiniteSocialUserReplies(params: Omit<SocialUserRepliesParams, 'cursor'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiCursorResponse<SocialUserRepliesItem>, unknown>, Error>;
|
|
3613
|
-
|
|
3614
|
-
/** Returns recent DEX swap events for a token contract address. **Covered DEXes:** `uniswap`, `sushiswap`, `curve`, `balancer`. **Included fields:** trading pair, amounts, USD value, taker address. **Data refresh:** ~24 hours · **Chains:** Ethereum, Base */
|
|
3615
|
-
declare function useInfiniteTokenDexTrades(params: Omit<TokenDexTradesParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<TokenDexTradesItem>, unknown>, Error>;
|
|
3616
|
-
/** Returns top token holders for a contract address. **Included fields:** wallet address, balance, and percentage. **Lookup:** by `address` and `chain`. Supports EVM chains and Solana. */
|
|
3617
|
-
declare function useInfiniteTokenHolders(params: Omit<TokenHoldersParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<TokenHoldersItem>, unknown>, Error>;
|
|
3618
|
-
/** Returns token unlock time-series with amounts and allocation breakdowns. **Lookup:** by project UUID (`id`) or token `symbol`. Filter by date range with `from`/`to` — defaults to the current calendar month when omitted. Returns 404 if no token found. */
|
|
3619
|
-
declare function useInfiniteTokenTokenomics(params?: Omit<TokenTokenomicsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<TokenTokenomicsItem>, unknown>, Error>;
|
|
3620
|
-
/** Returns recent transfer events **for a specific token** (ERC-20/TRC-20 contract). Pass the **token contract address** in `address` — returns every on-chain transfer of that token regardless of sender/receiver. **Included fields:** sender, receiver, raw amount, block timestamp. Use this to analyze a token's on-chain activity (e.g. large movements, distribution patterns). **Lookup:** `address` (token contract) + `chain`. Sort by `asc` or `desc`. **Data refresh:** ~24 hours · **Chains:** Ethereum, Base, TRON (Solana uses a different source with no delay) */
|
|
3621
|
-
declare function useInfiniteTokenTransfers(params: Omit<TokenTransfersParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<TokenTransfersItem>, unknown>, Error>;
|
|
3622
|
-
|
|
3623
|
-
/** Historical orderbook snapshots for a Kalshi market. Returns yes-side bid/ask levels. Timestamps in milliseconds, prices in cents. Data refresh: ~5 minutes */
|
|
3624
|
-
declare function useV2KalshiOrderbooks(params: V2KalshiOrderbooksParams): _tanstack_react_query.UseQueryResult<ApiResponse<V2KalshiOrderbooksItem>, Error>;
|
|
3625
|
-
/** OHLCV candlestick data for a Polymarket market. Prices normalized to YES side. Data refresh: ~30 minutes */
|
|
3626
|
-
declare function useV2PolymarketCandlesticks(params?: V2PolymarketCandlesticksParams): _tanstack_react_query.UseQueryResult<ApiResponse<V2PolymarketCandlesticksItem>, Error>;
|
|
3627
|
-
/** Cumulative volume time series for a Polymarket token. Data refresh: ~30 minutes */
|
|
3628
|
-
declare function useV2PolymarketVolumeTimeseries(params?: V2PolymarketVolumeTimeseriesParams): _tanstack_react_query.UseQueryResult<ApiResponse<V2PolymarketVolumeTimeseriesItem>, Error>;
|
|
3629
|
-
/** Historical orderbook snapshots for a Polymarket token. Returns raw bid/ask depth levels. Timestamps in milliseconds. Data refresh: ~5 minutes */
|
|
3630
|
-
declare function useV2PolymarketOrderbooks(params: V2PolymarketOrderbooksParams): _tanstack_react_query.UseQueryResult<ApiResponse<V2PolymarketOrderbooksItem>, Error>;
|
|
3631
|
-
/** Volume breakdown by outcome (YES/NO) for a Polymarket market. Data refresh: ~30 minutes */
|
|
3632
|
-
declare function useV2PolymarketVolumeChart(params?: V2PolymarketVolumeChartParams): _tanstack_react_query.UseQueryResult<ApiResponse<V2PolymarketVolumeChartItem>, Error>;
|
|
3633
|
-
|
|
3634
|
-
/** Returns multiple wallet sub-resources in a single request. **Available fields** (via `fields`): `balance`, `tokens`, `labels`, `nft`. **Lookup:** by `address`. Partial failures return available fields with per-field error info. Returns 422 if `fields` is invalid. */
|
|
3635
|
-
declare function useWalletDetail(params: WalletDetailParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<WalletDetailData>, Error>;
|
|
3636
|
-
/** Returns full transaction history for a wallet — swaps, transfers, and contract interactions. **Lookup:** by `address`. Filter by `chain` — supports `ethereum`, `polygon`, `bsc`, `arbitrum`, `optimism`, `avalanche`, `fantom`, `base`. */
|
|
3637
|
-
declare function useInfiniteWalletHistory(params: Omit<WalletHistoryParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<WalletHistoryItem>, unknown>, Error>;
|
|
3638
|
-
/** Returns entity labels for multiple wallet addresses. Pass up to 100 comma-separated addresses via the `addresses` query parameter. **Included fields:** entity name, type, and labels per address. */
|
|
3639
|
-
declare function useInfiniteWalletLabelsBatch(params: Omit<WalletLabelsBatchParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<WalletLabelsBatchItem>, unknown>, Error>;
|
|
3640
|
-
/** Returns a time-series of the wallet's total net worth in USD. Returns ~288 data points at 5-minute intervals covering the last 24 hours. Fixed window — no custom time range supported. */
|
|
3641
|
-
declare function useInfiniteWalletNetWorth(params: Omit<WalletNetWorthParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<WalletNetWorthItem>, unknown>, Error>;
|
|
3642
|
-
/** Returns all DeFi protocol positions for a wallet — lending, staking, LP, and farming with token breakdowns and USD values. **Lookup:** by `address`. */
|
|
3643
|
-
declare function useInfiniteWalletProtocols(params: Omit<WalletProtocolsParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<WalletProtocolsItem>, unknown>, Error>;
|
|
3644
|
-
/** Returns recent token transfers **sent or received by a wallet**. Pass the **wallet address** in `address` — returns all ERC-20/SPL token transfers where this wallet is the sender or receiver. **Included fields:** token contract, counterparty, raw amount, block timestamp. Use this to audit a wallet's token flow (e.g. inflows, outflows, airdrop receipts). **Lookup:** `address` (wallet, raw 0x hex or base58 — ENS not supported). Filter by `chain` — supports `ethereum`, `base`, `solana`. **Data refresh:** ~24 hours · **Chains:** Ethereum, Base (Solana uses a different source with no delay) */
|
|
3645
|
-
declare function useInfiniteWalletTransfers(params: Omit<WalletTransfersParams, 'offset'>): _tanstack_react_query.UseInfiniteQueryResult<_tanstack_query_core.InfiniteData<ApiResponse<WalletTransfersItem>, unknown>, Error>;
|
|
3646
|
-
|
|
3647
|
-
/** Fetches a web page and converts it to clean, LLM-friendly markdown. **Options:** - `target_selector` — extract specific page sections - `remove_selector` — strip unwanted elements Returns 400 if the URL is invalid or unreachable. */
|
|
3648
|
-
declare function useWebFetch(params: WebFetchParams): _tanstack_react_query.UseQueryResult<ApiObjectResponse<WebFetchData>, Error>;
|
|
3649
|
-
|
|
3650
|
-
export { type ApiCursorResponse, type ApiObjectResponse, type ApiResponse, type CursorMeta, type ExchangeDepthItem, type ExchangeDepthItemAsksItem, type ExchangeDepthItemBidsItem, type ExchangeDepthParams, type ExchangeFundingHistoryItem, type ExchangeFundingHistoryParams, type ExchangeKlinesItem, type ExchangeKlinesItemCandlesItem, type ExchangeKlinesParams, type ExchangeLongShortRatioItem, type ExchangeLongShortRatioParams, type ExchangeMarketsItem, type ExchangeMarketsParams, type ExchangePerpData, type ExchangePerpDataFunding, type ExchangePerpDataOpenInterest, type ExchangePerpParams, type ExchangePriceItem, type ExchangePriceParams, type FundDetailData, type FundDetailDataLinksItem, type FundDetailDataMembersItem, type FundDetailDataRecentResearchesItem, type FundDetailDataXAccountsItem, type FundDetailParams, type FundPortfolioItem, type FundPortfolioParams, type FundRankingItem, type FundRankingItemTopProjectsItem, type FundRankingParams, type KalshiEventsItem, type KalshiEventsItemMarketsItem, type KalshiEventsParams, type KalshiMarketsItem, type KalshiMarketsParams, type KalshiOpenInterestItem, type KalshiOpenInterestParams, type KalshiPricesItem, type KalshiPricesItemSideA, type KalshiPricesItemSideB, type KalshiPricesParams, type KalshiRankingItem, type KalshiRankingParams, type KalshiTradesItem, type KalshiTradesParams, type KalshiVolumesItem, type KalshiVolumesParams, type MarketEtfItem, type MarketEtfItemEtfsItem, type MarketEtfParams, type MarketFearGreedItem, type MarketFearGreedParams, type MarketFuturesItem, type MarketFuturesParams, type MarketLiquidationChartItem, type MarketLiquidationChartParams, type MarketLiquidationExchangeListItem, type MarketLiquidationExchangeListParams, type MarketLiquidationOrderItem, type MarketLiquidationOrderParams, type MarketOnchainIndicatorItem, type MarketOnchainIndicatorParams, type MarketOptionsItem, type MarketOptionsParams, type MarketPriceIndicatorItem, type MarketPriceIndicatorItemValues, type MarketPriceIndicatorParams, type MarketPriceItem, type MarketPriceParams, type MarketRankingItem, type MarketRankingParams, type MatchingMarketDailyItem, type MatchingMarketDailyParams, type MatchingMarketFindItem, type MatchingMarketFindItemKalshi, type MatchingMarketFindItemPolymarket, type MatchingMarketFindParams, type MatchingMarketPairsItem, type MatchingMarketPairsItemKalshi, type MatchingMarketPairsItemPolymarket, type MatchingMarketPairsParams, type NewsDetailData, type NewsDetailParams, type NewsFeedItem, type NewsFeedItemHighlights, type NewsFeedParams, type OnchainBridgeRankingItem, type OnchainBridgeRankingParams, type OnchainGasPriceData, type OnchainGasPriceParams, type OnchainSchemaItem, type OnchainSchemaItemColumnsItem, type OnchainSqlItem, type OnchainSqlParams, type OnchainStructuredQueryItem, type OnchainStructuredQueryParams, type OnchainStructuredQueryParamsFiltersItem, type OnchainStructuredQueryParamsSortItem, type OnchainTxItem, type OnchainTxItemAccesslistItem, type OnchainTxParams, type OnchainYieldRankingItem, type OnchainYieldRankingParams, type PolymarketActivityItem, type PolymarketActivityParams, type PolymarketEventsItem, type PolymarketEventsItemMarketsItem, type PolymarketEventsItemMarketsItemSideA, type PolymarketEventsItemMarketsItemSideB, type PolymarketEventsParams, type PolymarketMarketsItem, type PolymarketMarketsItemSideA, type PolymarketMarketsItemSideB, type PolymarketMarketsParams, type PolymarketOpenInterestItem, type PolymarketOpenInterestParams, type PolymarketPositionsItem, type PolymarketPositionsParams, type PolymarketPricesItem, type PolymarketPricesItemSideA, type PolymarketPricesItemSideB, type PolymarketPricesParams, type PolymarketRankingItem, type PolymarketRankingParams, type PolymarketTradesItem, type PolymarketTradesParams, type PolymarketVolumesItem, type PolymarketVolumesParams, type PredictionMarketCategoryMetricsItem, type PredictionMarketCategoryMetricsParams, type ProjectDefiMetricsItem, type ProjectDefiMetricsParams, type ProjectDefiRankingItem, type ProjectDefiRankingParams, type ProjectDetailData, type ProjectDetailDataContracts, type ProjectDetailDataContractsContractsItem, type ProjectDetailDataFunding, type ProjectDetailDataFundingRoundsItem, type ProjectDetailDataFundingRoundsItemInvestorsItem, type ProjectDetailDataOverview, type ProjectDetailDataSocial, type ProjectDetailDataSocialDiscord, type ProjectDetailDataSocialGithub, type ProjectDetailDataSocialTelegram, type ProjectDetailDataSocialTwitter, type ProjectDetailDataTeam, type ProjectDetailDataTeamMembersItem, type ProjectDetailDataTeamMembersItemSocialLinks, type ProjectDetailDataTgeStatus, type ProjectDetailDataTokenInfo, type ProjectDetailDataTokenomics, type ProjectDetailParams, type ResponseMeta, type SearchAirdropItem, type SearchAirdropItemTaskSummary, type SearchAirdropItemTasksItem, type SearchAirdropParams, type SearchEventsItem, type SearchEventsParams, type SearchFundItem, type SearchFundItemTopProjectsItem, type SearchFundParams, type SearchKalshiItem, type SearchKalshiItemMarketsItem, type SearchKalshiParams, type SearchNewsItem, type SearchNewsItemHighlights, type SearchNewsParams, type SearchPolymarketItem, type SearchPolymarketItemMarketsItem, type SearchPolymarketItemMarketsItemSideA, type SearchPolymarketItemMarketsItemSideB, type SearchPolymarketParams, type SearchProjectItem, type SearchProjectItemTokensItem, type SearchProjectParams, type SearchSocialPeopleItem, type SearchSocialPeopleParams, type SearchSocialPostsItem, type SearchSocialPostsItemAuthor, type SearchSocialPostsItemMediaItem, type SearchSocialPostsItemStats, type SearchSocialPostsParams, type SearchWalletItem, type SearchWalletItemAddressesItem, type SearchWalletParams, type SearchWebItem, type SearchWebParams, type SocialDetailData, type SocialDetailDataFollowerGeo, type SocialDetailDataFollowerGeoLocationsItem, type SocialDetailDataSentiment, type SocialDetailDataSmartFollowers, type SocialDetailDataSmartFollowersFollowersItem, type SocialDetailParams, type SocialMindshareItem, type SocialMindshareParams, type SocialRankingItem, type SocialRankingItemProject, type SocialRankingItemToken, type SocialRankingItemTwitter, type SocialRankingParams, type SocialSmartFollowersHistoryItem, type SocialSmartFollowersHistoryParams, type SocialTweetRepliesItem, type SocialTweetRepliesItemAuthor, type SocialTweetRepliesItemMediaItem, type SocialTweetRepliesItemStats, type SocialTweetRepliesParams, type SocialTweetsItem, type SocialTweetsItemAuthor, type SocialTweetsItemMediaItem, type SocialTweetsItemStats, type SocialTweetsParams, type SocialUserData, type SocialUserFollowersItem, type SocialUserFollowersParams, type SocialUserFollowingItem, type SocialUserFollowingParams, type SocialUserParams, type SocialUserPostsItem, type SocialUserPostsItemAuthor, type SocialUserPostsItemMediaItem, type SocialUserPostsItemStats, type SocialUserPostsParams, type SocialUserRepliesItem, type SocialUserRepliesItemAuthor, type SocialUserRepliesItemMediaItem, type SocialUserRepliesItemStats, type SocialUserRepliesParams, type TokenDexTradesItem, type TokenDexTradesParams, type TokenHoldersItem, type TokenHoldersParams, type TokenTokenomicsItem, type TokenTokenomicsItemAllocationsItem, type TokenTokenomicsParams, type TokenTransfersItem, type TokenTransfersParams, type V2KalshiOrderbooksItem, type V2KalshiOrderbooksParams, type V2PolymarketCandlesticksItem, type V2PolymarketCandlesticksParams, type V2PolymarketOrderbooksItem, type V2PolymarketOrderbooksParams, type V2PolymarketVolumeChartItem, type V2PolymarketVolumeChartParams, type V2PolymarketVolumeTimeseriesItem, type V2PolymarketVolumeTimeseriesParams, type WalletDetailData, type WalletDetailDataActiveChainsItem, type WalletDetailDataApprovalsItem, type WalletDetailDataApprovalsItemSpendersItem, type WalletDetailDataErrorsItem, type WalletDetailDataEvmBalance, type WalletDetailDataEvmBalanceChainBalancesItem, type WalletDetailDataEvmTokensItem, type WalletDetailDataLabels, type WalletDetailDataLabelsLabelsItem, type WalletDetailDataNftItem, type WalletDetailDataSolBalance, type WalletDetailDataSolTokensItem, type WalletDetailParams, type WalletHistoryItem, type WalletHistoryParams, type WalletLabelsBatchItem, type WalletLabelsBatchItemLabelsItem, type WalletLabelsBatchParams, type WalletNetWorthItem, type WalletNetWorthParams, type WalletProtocolsItem, type WalletProtocolsItemPositionsItem, type WalletProtocolsItemPositionsItemBorrowTokensItem, type WalletProtocolsItemPositionsItemLpTokensItem, type WalletProtocolsItemPositionsItemRewardTokensItem, type WalletProtocolsItemPositionsItemSupplyTokensItem, type WalletProtocolsParams, type WalletTransfersItem, type WalletTransfersParams, type WebFetchData, type WebFetchParams, cn, toast, useExchangeDepth, useExchangeFundingHistory, useExchangeKlines, useExchangeLongShortRatio, useExchangeMarkets, useExchangePerp, useExchangePrice, useFundDetail, useInfiniteFundPortfolio, useInfiniteFundRanking, useInfiniteKalshiEvents, useInfiniteKalshiMarkets, useInfiniteKalshiOpenInterest, useInfiniteKalshiPrices, useInfiniteKalshiRanking, useInfiniteKalshiTrades, useInfiniteKalshiVolumes, useInfiniteMarketRanking, useInfiniteMatchingMarketDaily, useInfiniteMatchingMarketFind, useInfiniteMatchingMarketPairs, useInfiniteNewsFeed, useInfiniteOnchainBridgeRanking, useInfiniteOnchainSchema, useInfiniteOnchainSql, useInfiniteOnchainStructuredQuery, useInfiniteOnchainTx, useInfiniteOnchainYieldRanking, useInfinitePolymarketActivity, useInfinitePolymarketEvents, useInfinitePolymarketMarkets, useInfinitePolymarketOpenInterest, useInfinitePolymarketPositions, useInfinitePolymarketPrices, useInfinitePolymarketRanking, useInfinitePolymarketTrades, useInfinitePolymarketVolumes, useInfinitePredictionMarketCategoryMetrics, useInfiniteProjectDefiMetrics, useInfiniteProjectDefiRanking, useInfiniteSearchAirdrop, useInfiniteSearchEvents, useInfiniteSearchFund, useInfiniteSearchKalshi, useInfiniteSearchNews, useInfiniteSearchPolymarket, useInfiniteSearchProject, useInfiniteSearchSocialPeople, useInfiniteSearchSocialPosts, useInfiniteSearchWallet, useInfiniteSearchWeb, useInfiniteSocialMindshare, useInfiniteSocialRanking, useInfiniteSocialSmartFollowersHistory, useInfiniteSocialTweetReplies, useInfiniteSocialTweets, useInfiniteSocialUserFollowers, useInfiniteSocialUserFollowing, useInfiniteSocialUserPosts, useInfiniteSocialUserReplies, useInfiniteTokenDexTrades, useInfiniteTokenHolders, useInfiniteTokenTokenomics, useInfiniteTokenTransfers, useInfiniteWalletHistory, useInfiniteWalletLabelsBatch, useInfiniteWalletNetWorth, useInfiniteWalletProtocols, useInfiniteWalletTransfers, useMarketEtf, useMarketFearGreed, useMarketFutures, useMarketLiquidationChart, useMarketLiquidationExchangeList, useMarketLiquidationOrder, useMarketOnchainIndicator, useMarketOptions, useMarketPrice, useMarketPriceIndicator, useNewsDetail, useOnchainGasPrice, useProjectDetail, useSocialDetail, useSocialUser, useToast, useV2KalshiOrderbooks, useV2PolymarketCandlesticks, useV2PolymarketOrderbooks, useV2PolymarketVolumeChart, useV2PolymarketVolumeTimeseries, useWalletDetail, useWebFetch };
|