@0xinsider/sdk 0.18.0 → 0.19.0
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 +20 -1
- package/dist/client.d.ts +24 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +25 -0
- package/dist/client.js.map +1 -1
- package/dist/errors.d.ts +6 -4
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +6 -4
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/provenance.d.ts +3 -3
- package/dist/provenance.d.ts.map +1 -1
- package/dist/provenance.js +4 -4
- package/dist/provenance.js.map +1 -1
- package/dist/schema.d.ts +252 -17
- package/dist/schema.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/schema.d.ts
CHANGED
|
@@ -76,7 +76,7 @@ export type ApiError = {
|
|
|
76
76
|
/** The recommended next request instant (RFC3339), always in the future. Present on every retryable error: `pick_not_released`, `rate_limited`, `rate_limit_unavailable`, and `read_model_warming`. Omitted otherwise. The absolute twin of `Retry-After`; prefer the header for the sleep duration. For `pick_not_released`, the earliest of the next scheduled release, the next automatic selector attempt, the operating-window start, or about 60 seconds. See that response. */
|
|
77
77
|
retry_at?: string;
|
|
78
78
|
freshness?: FreshnessFailure;
|
|
79
|
-
/** ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests
|
|
79
|
+
/** ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests its plan includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown. */
|
|
80
80
|
reason?: "cursor_expired" | "unknown_endpoint" | "pick_not_released" | "trader_not_tracked" | "read_model_warming" | "database_unavailable" | "request_accounting_unavailable" | "idempotency_in_progress" | "webhook_delivery_in_progress" | "webhook_secret_rotation_not_prepared" | "webhook_secret_rotation_overlap_active" | "sandbox_api_key" | "api_key_in_query" | "subscription_inactive" | "monthly_quota_exceeded" | "invalid_query" | "unknown_query_parameter" | "invalid_path" | "invalid_body" | "unsupported_media_type" | "payload_too_large" | "method_not_allowed" | "ip_rate_limited" | "ip_throttled" | "export_expired" | "freshness_ceiling_unsatisfied";
|
|
81
81
|
};
|
|
82
82
|
meta: ResponseMeta;
|
|
@@ -87,10 +87,10 @@ export type ApiErrorBody = {
|
|
|
87
87
|
message: string;
|
|
88
88
|
doc_url?: string;
|
|
89
89
|
param?: string;
|
|
90
|
-
/** The recommended next retry instant (RFC3339). Present on every retryable error (reason=pick_not_released, code=rate_limited including reason=monthly_quota_exceeded, code=rate_limit_unavailable, reason=read_model_warming) and omitted otherwise. Always in the future. For pick_not_released: before the
|
|
90
|
+
/** The recommended next retry instant (RFC3339). Present on every retryable error (reason=pick_not_released, code=rate_limited including reason=monthly_quota_exceeded, code=rate_limit_unavailable, reason=read_model_warming) and omitted otherwise. Always in the future. For pick_not_released: before the 03:00 America/New_York operating-window start, before a selected pick's stored release, or after a skipped day, it names the automatic system's next boundary. While no candidate exists in the live window it normally names the persisted next automatic selector attempt. Every value is advisory and can change before release. When the automatic schedule is absent/due or a pick is overdue it degrades to ~60s. Schedule one request and do not poll. Prefer Retry-After for the duration because it is immune to client clock skew. */
|
|
91
91
|
retry_at?: string;
|
|
92
92
|
freshness?: FreshnessFailure;
|
|
93
|
-
/** ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests
|
|
93
|
+
/** ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests its plan includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown. */
|
|
94
94
|
reason?: "cursor_expired" | "unknown_endpoint" | "pick_not_released" | "trader_not_tracked" | "read_model_warming" | "database_unavailable" | "request_accounting_unavailable" | "idempotency_in_progress" | "webhook_delivery_in_progress" | "webhook_secret_rotation_not_prepared" | "webhook_secret_rotation_overlap_active" | "sandbox_api_key" | "api_key_in_query" | "subscription_inactive" | "monthly_quota_exceeded" | "invalid_query" | "unknown_query_parameter" | "invalid_path" | "invalid_body" | "unsupported_media_type" | "payload_too_large" | "method_not_allowed" | "ip_rate_limited" | "ip_throttled" | "export_expired" | "freshness_ceiling_unsatisfied";
|
|
95
95
|
};
|
|
96
96
|
export type BatchMarketFlowItem = {
|
|
@@ -171,6 +171,196 @@ export type CategorySkillV2 = {
|
|
|
171
171
|
edge_lower_95: number | null;
|
|
172
172
|
brier_event_avg: number | null;
|
|
173
173
|
};
|
|
174
|
+
export type Combo = {
|
|
175
|
+
/** Combo identifier: 0x followed by 62 lowercase hex characters. This differs from a binary market condition ID. */
|
|
176
|
+
condition_id: string;
|
|
177
|
+
leg_count: number | null;
|
|
178
|
+
prepared_at: string | null;
|
|
179
|
+
/** Whether the preparation event has been indexed. */
|
|
180
|
+
legs_known: boolean;
|
|
181
|
+
legs: ComboLeg[];
|
|
182
|
+
window: ComboWindowStats | null;
|
|
183
|
+
totals: ComboTotals | null;
|
|
184
|
+
/** Result of the YES conjunction, independent of the wallet side or its P&L. */
|
|
185
|
+
status: "pending" | "won" | "lost" | "unknown";
|
|
186
|
+
/** Reason the conjunction result cannot be verified, when unknown. */
|
|
187
|
+
status_reason: string | null;
|
|
188
|
+
};
|
|
189
|
+
export type ComboCoverage = {
|
|
190
|
+
state: "paused" | "uninitialized" | "stale" | "backfilling" | "live";
|
|
191
|
+
ingest_enabled: boolean;
|
|
192
|
+
cursors: ComboCoverageCursor[];
|
|
193
|
+
max_lag_blocks: number | null;
|
|
194
|
+
oldest_cursor_update: string | null;
|
|
195
|
+
lifecycle_lag_blocks: number | null;
|
|
196
|
+
lifecycle_backfilling: boolean;
|
|
197
|
+
/** Time the coverage state was evaluated; not a market-price timestamp. */
|
|
198
|
+
computed_at: string;
|
|
199
|
+
};
|
|
200
|
+
export type ComboCoverageCursor = {
|
|
201
|
+
/** Indexed contract. */
|
|
202
|
+
contract: string;
|
|
203
|
+
last_block: number;
|
|
204
|
+
seed_block: number;
|
|
205
|
+
seed_origin: string;
|
|
206
|
+
chain_finalized_block: number | null;
|
|
207
|
+
lag_blocks: number | null;
|
|
208
|
+
updated_at: string;
|
|
209
|
+
};
|
|
210
|
+
/** One combo with its newest 100 fills and all-time lifecycle totals. Paid API callers receive full access. */
|
|
211
|
+
export type ComboDetail = {
|
|
212
|
+
access: "full";
|
|
213
|
+
combo: Combo;
|
|
214
|
+
fills: ComboFill[];
|
|
215
|
+
lifecycle: ComboLifecycleStats | null;
|
|
216
|
+
coverage: ComboCoverage;
|
|
217
|
+
};
|
|
218
|
+
export type ComboFill = {
|
|
219
|
+
/** Stable fill identity. */
|
|
220
|
+
id: string;
|
|
221
|
+
block_number: number;
|
|
222
|
+
log_index: number;
|
|
223
|
+
block_timestamp: string;
|
|
224
|
+
tx_hash: string;
|
|
225
|
+
/** Taker wallet address. */
|
|
226
|
+
trader: string | null;
|
|
227
|
+
trader_name: string | null;
|
|
228
|
+
trader_grade: "S" | "A" | "B" | "C" | "D" | "F" | null;
|
|
229
|
+
/** Recorded wallet-wide trade time. */
|
|
230
|
+
last_traded_at: string | null;
|
|
231
|
+
action: "buy" | "sell";
|
|
232
|
+
/** Combo identifier: 0x followed by 62 lowercase hex characters. This differs from a binary market condition ID. */
|
|
233
|
+
condition_id: string;
|
|
234
|
+
/** 0 is YES, 1 is NO. */
|
|
235
|
+
outcome_index: number;
|
|
236
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
237
|
+
shares: string;
|
|
238
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
239
|
+
collateral_usdc: string;
|
|
240
|
+
/** Execution price for the traded outcome; null for a zero-share event. */
|
|
241
|
+
price: string | null;
|
|
242
|
+
/** Execution price normalized to YES. */
|
|
243
|
+
price_yes: string | null;
|
|
244
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
245
|
+
fee_usdc: string;
|
|
246
|
+
leg_count: number | null;
|
|
247
|
+
/** Result of the YES conjunction, independent of the wallet side or its P&L. */
|
|
248
|
+
status: "pending" | "won" | "lost" | "unknown";
|
|
249
|
+
status_reason: string | null;
|
|
250
|
+
won_legs: number;
|
|
251
|
+
/** Shares per dollar at execution; not a forecast or guaranteed return. */
|
|
252
|
+
payout_multiplier: string | null;
|
|
253
|
+
legs: ComboLeg[];
|
|
254
|
+
};
|
|
255
|
+
export type ComboFillsResponse = {
|
|
256
|
+
object: "list";
|
|
257
|
+
data: ComboFill[];
|
|
258
|
+
sort: "recent" | "largest" | "payout";
|
|
259
|
+
window: "24h" | "7d" | "all";
|
|
260
|
+
limit: number;
|
|
261
|
+
coverage: ComboCoverage;
|
|
262
|
+
/** A continuation is available based on page fullness. Its next page may be empty. */
|
|
263
|
+
has_more: boolean;
|
|
264
|
+
/** Exclusive block_number:log_index continuation for recent ordering. */
|
|
265
|
+
next_cursor?: string;
|
|
266
|
+
/** Continuation offset for largest or payout ordering. */
|
|
267
|
+
next_offset?: number;
|
|
268
|
+
meta: ResponseMeta;
|
|
269
|
+
/** Not computed for combo fill pages; omitted. */
|
|
270
|
+
total?: number;
|
|
271
|
+
};
|
|
272
|
+
export type ComboLeg = {
|
|
273
|
+
leg_index: number;
|
|
274
|
+
outcome_index: number;
|
|
275
|
+
module_id: number;
|
|
276
|
+
state: "pending" | "won" | "lost" | "void" | "unknown";
|
|
277
|
+
market: ComboLegMarket | null;
|
|
278
|
+
};
|
|
279
|
+
export type ComboLegMarket = {
|
|
280
|
+
/** Source of the leg facts. */
|
|
281
|
+
source: "markets" | "provider";
|
|
282
|
+
/** Full binary CTF condition ID for this leg. */
|
|
283
|
+
condition_id: string;
|
|
284
|
+
title: string | null;
|
|
285
|
+
slug: string | null;
|
|
286
|
+
event_slug: string | null;
|
|
287
|
+
/** Provider-resolved URL including the referral tag. */
|
|
288
|
+
polymarket_url?: string;
|
|
289
|
+
outcome_label: string | null;
|
|
290
|
+
image: string | null;
|
|
291
|
+
category: string | null;
|
|
292
|
+
/** Provider outcome index; negative sentinels describe void or unresolved states. */
|
|
293
|
+
winning_outcome: number | null;
|
|
294
|
+
resolved_at: string | null;
|
|
295
|
+
/** A closed market may still have no terminal outcome. */
|
|
296
|
+
market_closed: boolean | null;
|
|
297
|
+
/** Stored daily price for this leg outcome token; not a live quote. */
|
|
298
|
+
pick_price_daily: number | null;
|
|
299
|
+
/** Observation time of the stored daily price. */
|
|
300
|
+
pick_price_as_of: string | null;
|
|
301
|
+
/** Whole days since the stored daily bucket. */
|
|
302
|
+
pick_price_age_days: number | null;
|
|
303
|
+
/** Unmodified provider leg status when available. */
|
|
304
|
+
provider_leg_status: string | null;
|
|
305
|
+
};
|
|
306
|
+
export type ComboLifecycleStats = {
|
|
307
|
+
splits: number;
|
|
308
|
+
merges: number;
|
|
309
|
+
redeems: number;
|
|
310
|
+
compresses: number;
|
|
311
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
312
|
+
split_usdc: string;
|
|
313
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
314
|
+
merge_usdc: string;
|
|
315
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
316
|
+
redeemed_shares: string;
|
|
317
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
318
|
+
redeemed_usdc: string;
|
|
319
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
320
|
+
compressed_usdc: string;
|
|
321
|
+
last_event_at: string;
|
|
322
|
+
};
|
|
323
|
+
export type ComboLiveCount = {
|
|
324
|
+
/** Traded combos whose YES conjunction remains pending. */
|
|
325
|
+
count: number;
|
|
326
|
+
/** Time the count was computed; check its age before using it. */
|
|
327
|
+
computed_at: string;
|
|
328
|
+
};
|
|
329
|
+
export type ComboResponse = {
|
|
330
|
+
object: "combo";
|
|
331
|
+
data: ComboDetail;
|
|
332
|
+
meta: ResponseMeta;
|
|
333
|
+
};
|
|
334
|
+
/** Stored live combo count. Null means the first count is unavailable, never zero. */
|
|
335
|
+
export type CombosSummary = {
|
|
336
|
+
live: ComboLiveCount | null;
|
|
337
|
+
};
|
|
338
|
+
export type CombosSummaryResponse = {
|
|
339
|
+
object: "combos_summary";
|
|
340
|
+
data: CombosSummary;
|
|
341
|
+
meta: ResponseMeta;
|
|
342
|
+
};
|
|
343
|
+
export type ComboTotals = {
|
|
344
|
+
fills: number;
|
|
345
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
346
|
+
volume_usdc: string;
|
|
347
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
348
|
+
largest_fill_usdc: string;
|
|
349
|
+
first_fill_at: string;
|
|
350
|
+
last_fill_at: string;
|
|
351
|
+
/** Last taker execution normalized to YES; not a current quote. */
|
|
352
|
+
last_fill_price_yes: string | null;
|
|
353
|
+
last_fill_outcome_index: number;
|
|
354
|
+
last_fill_action: "buy" | "sell";
|
|
355
|
+
};
|
|
356
|
+
export type ComboWindowStats = {
|
|
357
|
+
fills: number;
|
|
358
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
359
|
+
volume_usdc: string;
|
|
360
|
+
distinct_traders: number;
|
|
361
|
+
/** Exact decimal string from the stored chain or SQL value; preserve precision until display. */
|
|
362
|
+
largest_fill_usdc: string;
|
|
363
|
+
};
|
|
174
364
|
export type ContentSearchResult = {
|
|
175
365
|
/** Backend-owned stable editorial content identifier. */
|
|
176
366
|
content_id: string;
|
|
@@ -781,7 +971,7 @@ export type LargePosition = {
|
|
|
781
971
|
username?: string;
|
|
782
972
|
grade?: "S" | "A" | "B" | "C" | "D" | "F";
|
|
783
973
|
win_rate?: number;
|
|
784
|
-
/**
|
|
974
|
+
/** The wallet's Total P&L in USD, the figure its 0xinsider profile shows: native Polymarket position P&L across all markets, fees included, plus credited maker and taker rebates. Distinct from this position's position_unrealized_pnl. Omitted when the wallet has no native accounting snapshot. */
|
|
785
975
|
pnl?: number;
|
|
786
976
|
markets_traded?: number;
|
|
787
977
|
};
|
|
@@ -824,7 +1014,7 @@ export type LargeTrade = {
|
|
|
824
1014
|
suspicion_score: number | null;
|
|
825
1015
|
/** Persisted scorer track. Null when a legacy row has no stored track label. */
|
|
826
1016
|
suspicion_track: "whale" | "fresh_conviction" | "sliced_position" | null;
|
|
827
|
-
/** This fill's size relative to its market: size_usd divided by
|
|
1017
|
+
/** This fill's size relative to its market: its share count (size_usd / price) divided by the shares the market has traded, Polymarket's recorded volume, which counts shares rather than dollars, as observed at or after the trade, so the value always falls between 0 and 1 inclusive. A 20,000-share fill is 0.00005 of a market that has traded 400M shares and 0.125 of one that has traded 160,000, which size_usd alone cannot distinguish. Absent when no volume figure recorded at or after the trade is available, or when that figure is smaller than the fill; never 0 as a stand-in and never capped at 1, because a denominator we cannot trust publishes nothing rather than a trimmed number. A market's volume keeps growing, so the same trade reports a smaller share as the market trades on. */
|
|
828
1018
|
market_volume_share?: number;
|
|
829
1019
|
trader: {
|
|
830
1020
|
id: string;
|
|
@@ -885,7 +1075,7 @@ export type LeaderboardEntry = {
|
|
|
885
1075
|
/** Hot-streak tier (trailing-7d cross-sectional percentile); a separate axis from the all-time grade. Omitted when there is no recent activity. */
|
|
886
1076
|
streak_tier?: "hot" | "rising" | "neutral" | "cooling" | "cold";
|
|
887
1077
|
score?: number;
|
|
888
|
-
/**
|
|
1078
|
+
/** Polymarket leaderboard all-time P&L in USD (traders.total_pnl), including unrealized open positions. Kept for back-compat. Not the profile's Total P&L, which GET /api/v1/trader/{address} serves as pnl.net_total; the two can differ by a wide margin. Prefer realized_pnl for the banked figure. */
|
|
889
1079
|
pnl?: number;
|
|
890
1080
|
/** Native realized P&L plus credited maker and taker rebates in USD, with fees already included. The exact numeric value is truncated toward zero to cents before JSON conversion. Wallets without a native snapshot retain their historical stored realized P&L. Omitted when the native snapshot has no net realized value. */
|
|
891
1081
|
realized_pnl?: number;
|
|
@@ -1264,7 +1454,7 @@ export type PickOfTheDay = {
|
|
|
1264
1454
|
matchup?: string;
|
|
1265
1455
|
/** Recorded canonical sport category. Prefer display_category for the public competition label. */
|
|
1266
1456
|
category?: string;
|
|
1267
|
-
/** Frozen public presentation category
|
|
1457
|
+
/** Frozen public presentation category. Tennis uses the provider-verified ATP or WTA tour, including Wimbledon and doubles; unknown tours retain Tennis. Every men's and women's cricket competition uses Cricket. Other sports use the curated league, esports title or soccer competition label, then the provider series name without its season year, then category when no competition is known. The canonical category and measured cohort are unchanged: an esports title still uses the pooled Esports category. Optional for mixed-version client compatibility. */
|
|
1268
1458
|
display_category?: string;
|
|
1269
1459
|
/** Provider platform. Always polymarket. */
|
|
1270
1460
|
platform?: "polymarket";
|
|
@@ -1369,8 +1559,6 @@ export type PickOfTheDay = {
|
|
|
1369
1559
|
display_holders?: PickHolder[];
|
|
1370
1560
|
/** S/A holder count for the public V1 compatibility projection. display_holders can include additional grades. */
|
|
1371
1561
|
holder_count?: number;
|
|
1372
|
-
/** Optional editorial note attached to the pick. */
|
|
1373
|
-
editorial_note?: string;
|
|
1374
1562
|
/** Required truthful thesis. With at least one profitable-wallet holder: Profitable wallets hold {pick_outcome_label}[, led by a grade-{top_grade} trader]. Without holder backing: 0xInsider's Pick of the Day is {pick_outcome_label}. Wallet counts are not appended. */
|
|
1375
1563
|
thesis?: string;
|
|
1376
1564
|
/** Canonical web market URL. */
|
|
@@ -1442,13 +1630,13 @@ export type PickOfTheDayArchiveEntry = {
|
|
|
1442
1630
|
* @deprecated
|
|
1443
1631
|
*/
|
|
1444
1632
|
pick_rank?: number;
|
|
1445
|
-
/** When this selection was published, as RFC3339 UTC. Use this instant for publication feeds and timelines; pick_date is the America/New_York product day, not a publication timestamp. Automatic
|
|
1633
|
+
/** When this selection was published, as RFC3339 UTC. Use this instant for publication feeds and timelines; pick_date is the America/New_York product day, not a publication timestamp. Automatic picks publish from 03:00 America/New_York on pick_date. Absent only for historical rows whose publication instant is unknown. */
|
|
1446
1634
|
published_at?: string;
|
|
1447
1635
|
/** Human-readable matchup (e.g. "Portugal vs. Uzbekistan"). */
|
|
1448
1636
|
matchup?: string;
|
|
1449
1637
|
/** Frozen canonical calibration/report bucket (e.g. "Basketball", "MMA", or "Soccer"). Existing semantics are unchanged; presentation consumers should prefer display_category when present. */
|
|
1450
1638
|
category?: string;
|
|
1451
|
-
/** Frozen public presentation category
|
|
1639
|
+
/** Frozen public presentation category. Tennis uses the provider-verified ATP or WTA tour, including Wimbledon and doubles; unknown tours retain Tennis. Every men's and women's cricket competition uses Cricket. Other sports use the curated league, esports title or soccer competition label, then the provider series name without its season year, then category when no competition is known. The canonical category and measured cohort are unchanged: an esports title still uses the pooled Esports category. Optional for mixed-version client compatibility. */
|
|
1452
1640
|
display_category?: string;
|
|
1453
1641
|
/** Provider (Polymarket Gamma) market thumbnail URL (markets.image); omitted (not null) when the market has no image. Public regardless of the backed-side gate, so present for pending rows too. */
|
|
1454
1642
|
image_url?: string;
|
|
@@ -1893,6 +2081,7 @@ export type Position = {
|
|
|
1893
2081
|
grade?: "S" | "A" | "B" | "C" | "D" | "F";
|
|
1894
2082
|
/** Percentage 0-100. */
|
|
1895
2083
|
win_rate?: number;
|
|
2084
|
+
/** The wallet's Total P&L in USD, the figure its 0xinsider profile shows: native Polymarket position P&L across all markets, fees included, plus credited maker and taker rebates (trader_trading_pnl.net_total_pnl). Not the Polymarket leaderboard figure, which GET /api/v1/trader/{address} still serves as pnl.total. Omitted when the wallet has no native accounting snapshot; the leaderboard figure is never substituted. */
|
|
1896
2085
|
pnl?: number;
|
|
1897
2086
|
markets?: number;
|
|
1898
2087
|
wallet_age_days?: number;
|
|
@@ -2505,7 +2694,10 @@ export type Trader = {
|
|
|
2505
2694
|
forecast_evidence?: number;
|
|
2506
2695
|
rank?: number;
|
|
2507
2696
|
pnl: {
|
|
2697
|
+
/** Polymarket leaderboard all-time P&L in USD (traders.total_pnl), kept for provider parity and back-compat. Not the profile's Total P&L and not realized plus unrealized: it can differ from net_total by a wide margin. Read net_total for the figure the 0xinsider profile shows. */
|
|
2508
2698
|
total?: number;
|
|
2699
|
+
/** The profile's Total P&L in USD: native Polymarket position P&L, with fees already included, plus credited maker and taker rebates (trader_trading_pnl.net_total_pnl). The same figure the 0xinsider profile, search, live feed, portfolio and watchlist show. Truncated toward zero to cents before conversion to a JSON number. Omitted when the wallet has no native accounting snapshot; pnl.total is never substituted. */
|
|
2700
|
+
net_total?: number;
|
|
2509
2701
|
/** For pnl.realized, expand=trust marks a matching native accounting snapshot as computed: native Polymarket realized P&L plus credited maker and taker rebates, with fees already included. The exact numeric value is truncated toward zero to cents before conversion to a JSON number. Without a matching native accounting snapshot, pnl.realized is omitted and its trust metadata is unavailable. Raw total P&L is never substituted for realized P&L. */
|
|
2510
2702
|
realized?: number;
|
|
2511
2703
|
unrealized?: number;
|
|
@@ -2558,7 +2750,7 @@ export type Trader = {
|
|
|
2558
2750
|
synced_at?: string;
|
|
2559
2751
|
/** synced, unknown, or pending. */
|
|
2560
2752
|
sync_status?: string;
|
|
2561
|
-
/** Data age and coverage for this trader body. Always present. Its five groups are sync (traders.last_synced, covering pnl.total, pnl.realized, stats.markets_traded, stats.win_rate, stats.daily_win_rate, last_active, synced_at and sync_status), ranking (trader_rankings.computed_at, covering grade, score, streak_tier, forecast_score and forecast_evidence), leaderboard_rank (leaderboard_rank_refresh_state.completed_at, the completion time of the latest fully completed global rank refresh, covering rank), volume (trader_usd_volume.observed_at, covering stats.total_volume) and positions (trader_position_snapshots.last_refreshed_at with traders.last_synced as fallback, covering pnl.unrealized, the open-position aggregate). The positions clock is the latest successful /positions snapshot when one exists, otherwise the last completed trader sync; it does not date closed or native accounting values. A rank or position value remains unknown or unavailable when its clock or value is absent. For an unknown wallet every group is unavailable. If the open-position read itself fails, positions is unavailable with a reason that says so, pnl.unrealized is absent, and the body is answered fresh (meta.cached false) and is not kept for later callers. */
|
|
2753
|
+
/** Data age and coverage for this trader body. Always present. Its five groups are sync (traders.last_synced, covering pnl.total, pnl.net_total, pnl.realized, stats.markets_traded, stats.win_rate, stats.daily_win_rate, last_active, synced_at and sync_status), ranking (trader_rankings.computed_at, covering grade, score, streak_tier, forecast_score and forecast_evidence), leaderboard_rank (leaderboard_rank_refresh_state.completed_at, the completion time of the latest fully completed global rank refresh, covering rank), volume (trader_usd_volume.observed_at, covering stats.total_volume) and positions (trader_position_snapshots.last_refreshed_at with traders.last_synced as fallback, covering pnl.unrealized, the open-position aggregate). The positions clock is the latest successful /positions snapshot when one exists, otherwise the last completed trader sync; it does not date closed or native accounting values. A rank or position value remains unknown or unavailable when its clock or value is absent. For an unknown wallet every group is unavailable. If the open-position read itself fails, positions is unavailable with a reason that says so, pnl.unrealized is absent, and the body is answered fresh (meta.cached false) and is not kept for later callers. */
|
|
2562
2754
|
data_quality: DataQuality;
|
|
2563
2755
|
/** Field-level trust metadata. Present only when expand=trust or expand[]=trust is requested. */
|
|
2564
2756
|
trust?: TraderTrust;
|
|
@@ -2787,7 +2979,7 @@ export type TraderGradeAt = {
|
|
|
2787
2979
|
observed_at: string;
|
|
2788
2980
|
/** Upper bound: a later snapshot confirmed the observation was committed. This is not an exact commit timestamp. */
|
|
2789
2981
|
published_by: string;
|
|
2790
|
-
/** Writer-proven model family, such as grading
|
|
2982
|
+
/** Writer-proven model family, such as grading. Null when unknown. */
|
|
2791
2983
|
model_version: string | null;
|
|
2792
2984
|
/** Exact writer build SHA when recorded. Null on old and non-model observations. */
|
|
2793
2985
|
model_build_sha: string | null;
|
|
@@ -2921,6 +3113,7 @@ export type TraderStatsExact = {
|
|
|
2921
3113
|
export type TraderTrust = {
|
|
2922
3114
|
total_pnl: TrustMetadata;
|
|
2923
3115
|
realized_pnl: TrustMetadata;
|
|
3116
|
+
net_total_pnl: TrustMetadata;
|
|
2924
3117
|
unrealized_pnl: TrustMetadata;
|
|
2925
3118
|
markets_traded: TrustMetadata;
|
|
2926
3119
|
win_rate: TrustMetadata;
|
|
@@ -2965,6 +3158,7 @@ export type TrendingWallet = {
|
|
|
2965
3158
|
grade?: "S" | "A" | "B" | "C" | "D" | "F";
|
|
2966
3159
|
/** Hot-streak tier (trailing-7d cross-sectional percentile). Omitted when there is no recent activity. */
|
|
2967
3160
|
streak_tier?: "hot" | "rising" | "neutral" | "cooling" | "cold";
|
|
3161
|
+
/** The wallet's all-time Total P&L in USD, the figure its 0xinsider profile shows: native Polymarket position P&L across all markets, fees included, plus credited maker and taker rebates (trader_trading_pnl.net_total_pnl). Context only: it does not affect the ranking, which follows trending_pnl_usd. Omitted when the wallet is not in the 0xinsider database or has no native accounting snapshot; the Polymarket leaderboard all-time figure is never substituted. */
|
|
2968
3162
|
all_time_pnl_usd?: number;
|
|
2969
3163
|
all_time_score?: number;
|
|
2970
3164
|
last_synced?: string;
|
|
@@ -3035,7 +3229,7 @@ export type Usage = {
|
|
|
3035
3229
|
monthly_quota: {
|
|
3036
3230
|
/** Admitted requests so far this UTC calendar month. */
|
|
3037
3231
|
used: number;
|
|
3038
|
-
/** Requests
|
|
3232
|
+
/** Requests the account's plan includes per UTC calendar month: 500,000 for Pro, 2,000,000 for Max. */
|
|
3039
3233
|
limit: number;
|
|
3040
3234
|
remaining: number;
|
|
3041
3235
|
/** Unix seconds: the first instant of the next UTC calendar month. */
|
|
@@ -3046,7 +3240,7 @@ export type Usage = {
|
|
|
3046
3240
|
binding: boolean;
|
|
3047
3241
|
/** Pay as you go is on: requests over the quota keep answering and bill on a monthly invoice, up to ceiling. */
|
|
3048
3242
|
pay_as_you_go: boolean;
|
|
3049
|
-
/** The most requests this account is admitted in a UTC calendar month once enforcement has begun: limit, or
|
|
3243
|
+
/** The most requests this account is admitted in a UTC calendar month once enforcement has begun: limit, or four times limit with pay as you go on (2,000,000 for Pro). null for an admin account, which no number stops. Additive since 2026-09-22. */
|
|
3050
3244
|
ceiling: number | null;
|
|
3051
3245
|
/** A historical usage price has not been reconciled to this plan allowance. Pay as you go remains unavailable until billing reconciliation. */
|
|
3052
3246
|
unavailable_reason?: "usage_price_reconciliation_required" | null;
|
|
@@ -3421,6 +3615,8 @@ export interface OperationData {
|
|
|
3421
3615
|
scopes: string[] | null;
|
|
3422
3616
|
};
|
|
3423
3617
|
getApiDiscovery: ApiDiscovery;
|
|
3618
|
+
getCombo: ComboDetail;
|
|
3619
|
+
getCombosSummary: CombosSummary;
|
|
3424
3620
|
getCoverage: Platforms;
|
|
3425
3621
|
getDailyReportSnapshot: ReportSnapshot;
|
|
3426
3622
|
getEventReplaySince: EventReplayEvent[];
|
|
@@ -3542,7 +3738,7 @@ export interface OperationData {
|
|
|
3542
3738
|
monthly_quota: {
|
|
3543
3739
|
/** Admitted requests so far this UTC calendar month. */
|
|
3544
3740
|
used: number;
|
|
3545
|
-
/** Requests
|
|
3741
|
+
/** Requests the account's plan includes per UTC calendar month: 500,000 for Pro, 2,000,000 for Max. */
|
|
3546
3742
|
limit: number;
|
|
3547
3743
|
remaining: number;
|
|
3548
3744
|
/** Unix seconds: the first instant of the next UTC calendar month. */
|
|
@@ -3553,7 +3749,7 @@ export interface OperationData {
|
|
|
3553
3749
|
binding: boolean;
|
|
3554
3750
|
/** Pay as you go is on: requests over the quota keep answering and bill on a monthly invoice, up to ceiling. */
|
|
3555
3751
|
pay_as_you_go: boolean;
|
|
3556
|
-
/** The most requests this account is admitted in a UTC calendar month once enforcement has begun: limit, or
|
|
3752
|
+
/** The most requests this account is admitted in a UTC calendar month once enforcement has begun: limit, or four times limit with pay as you go on (2,000,000 for Pro). null for an admin account, which no number stops. Additive since 2026-09-22. */
|
|
3557
3753
|
ceiling: number | null;
|
|
3558
3754
|
/** A historical usage price has not been reconciled to this plan allowance. Pay as you go remains unavailable until billing reconciliation. */
|
|
3559
3755
|
unavailable_reason?: "usage_price_reconciliation_required" | null;
|
|
@@ -3613,6 +3809,7 @@ export interface OperationData {
|
|
|
3613
3809
|
filters: WhaleDatasetFilters;
|
|
3614
3810
|
};
|
|
3615
3811
|
getWhaleTrade: LargeTradeDetail;
|
|
3812
|
+
listComboFills: ComboFill[];
|
|
3616
3813
|
listGames: Game[];
|
|
3617
3814
|
listInsiderRadar: SuspiciousTrade[];
|
|
3618
3815
|
listLargePositions: LargePosition[];
|
|
@@ -3779,6 +3976,8 @@ export interface OperationQuery {
|
|
|
3779
3976
|
};
|
|
3780
3977
|
getAccountIdentity: Record<string, never>;
|
|
3781
3978
|
getApiDiscovery: Record<string, never>;
|
|
3979
|
+
getCombo: Record<string, never>;
|
|
3980
|
+
getCombosSummary: Record<string, never>;
|
|
3782
3981
|
getCoverage: Record<string, never>;
|
|
3783
3982
|
getDailyReportSnapshot: {
|
|
3784
3983
|
/** UTC report date in YYYY-MM-DD format, from 2024-03-01 (the first day report data covers) through tomorrow UTC. Any other date returns 400 bad_request with error.param=date. */
|
|
@@ -3933,6 +4132,30 @@ export interface OperationQuery {
|
|
|
3933
4132
|
};
|
|
3934
4133
|
getWhaleDatasetStatus: Record<string, never>;
|
|
3935
4134
|
getWhaleTrade: Record<string, never>;
|
|
4135
|
+
listComboFills: {
|
|
4136
|
+
/** CSV of pending, won, or lost; all clears the filter. Unknown results appear only in unfiltered lists. */
|
|
4137
|
+
result?: string;
|
|
4138
|
+
/** CSV of 2, 3, 4, or 5+; all clears the filter. A combo matches any named pick count. */
|
|
4139
|
+
legs?: string;
|
|
4140
|
+
/** Minimum collateral in whole USDC. */
|
|
4141
|
+
min_stake?: number;
|
|
4142
|
+
/** 0 disables the filter; otherwise use 2..1000000. Minimum shares per dollar at execution. */
|
|
4143
|
+
min_multiplier?: number;
|
|
4144
|
+
/** CSV of S, A, B, C, D, F; all clears the filter. Ungraded wallets do not match. */
|
|
4145
|
+
grades?: string;
|
|
4146
|
+
/** CSV of nfl, ncaaf, nba, wnba, baseball, hockey, soccer, tennis, table-tennis, esports, mma, boxing, golf, cricket, f1, pickleball; all clears the filter. Matches when any leg belongs to a selected sport. */
|
|
4147
|
+
sports?: string;
|
|
4148
|
+
/** Recent is newest first; largest ranks collateral; payout ranks buy-fill shares and excludes sells. */
|
|
4149
|
+
sort?: "recent" | "largest" | "payout";
|
|
4150
|
+
/** Defaults to all for recent and 24h for largest or payout. */
|
|
4151
|
+
window?: "24h" | "7d" | "all";
|
|
4152
|
+
/** Page size. Integer values outside the range are clamped to 1..200. */
|
|
4153
|
+
limit?: number;
|
|
4154
|
+
/** Exclusive block_number:log_index cursor for recent only; send the returned next_cursor unchanged. */
|
|
4155
|
+
cursor?: string;
|
|
4156
|
+
/** Offset for ranked largest or payout ordering; use returned next_offset. */
|
|
4157
|
+
offset?: number;
|
|
4158
|
+
};
|
|
3936
4159
|
listGames: {
|
|
3937
4160
|
/** Canonical sport bucket, case-insensitive, with - and _ read as a space: table-tennis and Table Tennis are the same bucket. Omit for every covered sport. A bucket this deployment does not serve returns an empty page. */
|
|
3938
4161
|
sport?: string;
|
|
@@ -4302,6 +4525,11 @@ export interface OperationPath {
|
|
|
4302
4525
|
exploreMarkets: Record<string, never>;
|
|
4303
4526
|
getAccountIdentity: Record<string, never>;
|
|
4304
4527
|
getApiDiscovery: Record<string, never>;
|
|
4528
|
+
getCombo: {
|
|
4529
|
+
/** Combo identifier: 0x followed by 62 lowercase hex characters. This differs from a binary market condition ID. */
|
|
4530
|
+
condition_id: string;
|
|
4531
|
+
};
|
|
4532
|
+
getCombosSummary: Record<string, never>;
|
|
4305
4533
|
getCoverage: Record<string, never>;
|
|
4306
4534
|
getDailyReportSnapshot: Record<string, never>;
|
|
4307
4535
|
getEventReplaySince: Record<string, never>;
|
|
@@ -4417,6 +4645,7 @@ export interface OperationPath {
|
|
|
4417
4645
|
/** Raw whale_alerts.id or wt_-prefixed whale trade id. */
|
|
4418
4646
|
id: string;
|
|
4419
4647
|
};
|
|
4648
|
+
listComboFills: Record<string, never>;
|
|
4420
4649
|
listGames: Record<string, never>;
|
|
4421
4650
|
listInsiderRadar: Record<string, never>;
|
|
4422
4651
|
listLargePositions: Record<string, never>;
|
|
@@ -4534,6 +4763,8 @@ export interface OperationBody {
|
|
|
4534
4763
|
exploreMarkets: never;
|
|
4535
4764
|
getAccountIdentity: never;
|
|
4536
4765
|
getApiDiscovery: never;
|
|
4766
|
+
getCombo: never;
|
|
4767
|
+
getCombosSummary: never;
|
|
4537
4768
|
getCoverage: never;
|
|
4538
4769
|
getDailyReportSnapshot: never;
|
|
4539
4770
|
getEventReplaySince: never;
|
|
@@ -4572,6 +4803,7 @@ export interface OperationBody {
|
|
|
4572
4803
|
getWeeklyReportSnapshot: never;
|
|
4573
4804
|
getWhaleDatasetStatus: never;
|
|
4574
4805
|
getWhaleTrade: never;
|
|
4806
|
+
listComboFills: never;
|
|
4575
4807
|
listGames: never;
|
|
4576
4808
|
listInsiderRadar: never;
|
|
4577
4809
|
listLargePositions: never;
|
|
@@ -4687,6 +4919,8 @@ export interface OperationResponse {
|
|
|
4687
4919
|
data: OperationData["getApiDiscovery"];
|
|
4688
4920
|
meta: ResponseMeta;
|
|
4689
4921
|
};
|
|
4922
|
+
getCombo: ComboResponse;
|
|
4923
|
+
getCombosSummary: CombosSummaryResponse;
|
|
4690
4924
|
getCoverage: {
|
|
4691
4925
|
object: "platforms";
|
|
4692
4926
|
data: OperationData["getCoverage"];
|
|
@@ -4873,6 +5107,7 @@ export interface OperationResponse {
|
|
|
4873
5107
|
data: OperationData["getWhaleTrade"];
|
|
4874
5108
|
meta: ResponseMeta;
|
|
4875
5109
|
};
|
|
5110
|
+
listComboFills: ComboFillsResponse;
|
|
4876
5111
|
listGames: {
|
|
4877
5112
|
object: "list";
|
|
4878
5113
|
data: OperationData["listGames"];
|