0xinsider

io.github.0xinsider由 GitHub 账号 0xinsider 发布v3.15.0更新于 Nov 7, 2026

Polymarket sports and esports data: wallet grades on settled P&L, large trades, markets.

已验证Streamable HTTP可网页运行网页搜索与抓取金融数据与分析

概览

AI 生成的概览

0xinsider 为助手提供只读的 Polymarket 体育与电竞分析:评级交易者、大额交易、聪明资金流向、持仓与报告。

可以做什么
  • 按钱包地址或用户名查询及批量查询交易者,含基于已结算盈亏的 S 至 F 评级,并浏览排行榜
  • 列出、读取并回放大额交易,包括历史回放和基于游标的事件流
  • 对聪明资金流向排序,读取单个市场的流向与前几大持仓,并批量查询最多 25 个市场
  • 按关键词搜索市场、浏览发现聚类、读取市场快照,并列出比赛、比赛市场与球员盘口
  • 读取可疑交易、持仓以及单个交易者在某市场的持仓时间线
  • 读取每日、每周、每月巨鲸活动报告、编辑内容以及 webhook 端点记录
适用场景
适合需要回答 Polymarket 体育与电竞相关问题的场景:哪些钱包评级较高、大额或可疑交易出现在哪里、某市场的资金如何流动,或某场比赛的市场与盘口情况。它只读,适合研究与报告,不适合下单交易。
运行要求
可作为远程 Streamable HTTP 端点运行,也可通过 npx 作为本地 stdio 进程运行。initialize、ping 和 tools/list 无需凭证;tools/call 需要 Bearer 凭证:开发者门户的 API 密钥(OXINSIDER_API_KEY)或 OAuth 2.1 授权。无需账号也可使用沙箱。
安装前请注意
API 密钥是正式环境的机密,须以 Bearer 凭证形式提供,避免写入共享配置。仅提供体育与电竞市场,其他类别会返回超出范围错误。部分工具是已弃用的别名,计划于 2027 年移除。字段缺失表示提供方未报告该值,而非零。Polymarket 链接带有推荐标签,服务器要求保持完整。

安装

在 SourceWeft 中

  1. 打开 控制台中的 0xinsider,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.0xinsider%2Fmcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "0xinsider": {
      "type": "http",
      "url": "https://api.0xinsider.com/api/v1/mcp"
    }
  }
}

README

0xinsider Agent Plugin

[skills.sh]

The official Agent Plugin for 0xinsider - Polymarket analytics & infrastructure for sports and esports markets.

It bundles the 0xinsider MCP server with five skills that teach an agent how to read large trades, wallet grades, sharp-money flow, and published research without misreporting them.

Install

bash
npx skills add 0xinsider/agent-plugin

Refresh an existing installation with:

bash
npx skills@latest update 0xinsider-api-access polymarket-whale-trades polymarket-wallet-grades polymarket-sharp-money polymarket-market-research

Or install one skill without adding the whole plugin:

bash
npx skills add 0xinsider/agent-plugin --skill polymarket-wallet-grades

Contents

SkillCovers
0xinsider-api-accessCredentials, sandbox vs live hosts, MCP transports, rate limits, deprecated paths, typed errors
polymarket-whale-tradesLarge-trade feed, history replay, counterparties, review score
polymarket-wallet-gradesTrader grades, sports and esports P&L, category records, leaderboards, position timelines, exports
polymarket-sharp-moneyMarket flow, graded holders, candles, Max-only Edge Hunter board/full signals/cohort observations, suspicious-trade flags
polymarket-market-researchMarket search and explore, games, published research, report snapshots, Pick of the Day, coverage

Plugin 1.3.0 re-syncs every skill with the live API and MCP server. Calls use the canonical paths and tools (/large-trades, /suspicious-trades, /market/{condition_id}/flow, /markets/flow/batch, /markets/sharp-money-flows, /coverage); the older names are listed only as deprecated aliases, which stop working on 2027-02-01. A wallet's P&L is pnl.in_scope.realized_pnl, because pnl.realized has not been sent since 2026-10-27. The large-trade score is review_score, {address} accepts usernames, exports start with a POST, rate limits are per plan (100 a minute on Pro, 200 on Max), polymarket.com links carry via=0xinsider then r=0xinsidercom, and mcp.json now validates against the Agent Plugins 1.0.0 MCP schema and points at the canonical endpoint https://api.0xinsider.com/api/v1/mcp.

Plugin 1.2.0 documents configurable selections across every Edge Hunter view: sports/esports, canonical sports, exact leagues, market types, markets, events and series. Board defaults remain compatible; rows add frozen market_context for authoritative selector discovery, and selected responses echo normalized selection. Advanced records retain pagination, evidence and conditional reads. Selections need TypeScript SDK 0.22.0 or later and CLI/MCP runtime 3.2.0 or later. The four legacy URLs/tools remain retired.

AGENTS.md holds the rules for AI coding agents writing integration code against the API. .cursorrules mirrors it.

MCP server

mcp.json points at the remote Streamable HTTP endpoint:

json
{  "mcpServers": {    "0xinsider": {      "type": "streamable-http",      "url": "https://api.0xinsider.com/api/v1/mcp"    }  }}

It carries no credential. Agent Plugins clients do not expand environment variables in headers, so the client signs in on the first tools/call: the 401 names the OAuth 2.1 protected-resource metadata, and the authorization server supports dynamic client registration and PKCE. To use an API key instead, add the server to your client's own MCP configuration. In clients that expand ${VAR} in headers, such as Claude Code's .mcp.json:

json
{  "mcpServers": {    "0xinsider": {      "type": "http",      "url": "https://api.0xinsider.com/api/v1/mcp",      "headers": { "Authorization": "Bearer ${OXINSIDER_API_KEY}" }    }  }}

The server exposes tools across traders, markets, games, large trades, positions, flow, research, reports, and webhooks: 55 on 2026-10-28, nine of them deprecated aliases. initialize, ping and tools/list need no credential, so tools/list is always the current catalog; tools/call takes an API key or an OAuth 2.1 token. Its card is at /.well-known/mcp. https://0xinsider.com/mcp answers with the same tools, but OAuth clients should use the endpoint above, which the protected-resource metadata names.

A local stdio path ships in the CLI:

bash
npx -y @0xinsider/mcp@latest init

Try it with no account

Every documented operation answers from the sandbox with no credential:

bash
curl -s https://0xinsider.com/sandbox/api/v1/leaderboard

One POST returns a sandbox key and the steps to live access:

bash
curl -s -X POST https://api.0xinsider.com/api/v1/agents/register \  -H 'Content-Type: application/json' -d '{"name":"my-agent"}'

Official resources

License

MIT

来源:README.md,提交 f429f33

工具

72

get_leaderboard

Get Trader Leaderboard

Get the top-ranked prediction market traders (grades S, A, B only). By default in the board's own rank order; sort, dir and activity reorder and scope the same wallets as the site's leaderboard does. Supports cursor pagination and optional filters. Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response; it is bound to the sort, dir and activity it was read with - category (string, optional): Filter by a sport or esports bucket (case-insensitive) such as Basketball or Esports, or sports for every sport but Esports. Omit it for every sports and esports wallet - strategy (string, optional): Trading style: two_sided, category_focused, high_activity, diversified, mixed, unclassified - sort (string, optional): rank (default), grade, volume (sports and esports USD volume), predictions, pnl, win_rate (wallets with at least 5 decided markets), edge (price_edge.edge, wallets whose edge ranks); a missing value sorts lowest - dir (string, optional): asc or desc; omitted, rank 1 first for rank and largest first for the rest - activity (string, optional): all (default), active (last trade 30 days ago or less) or inactive Returns: Ranked list of traders with grade, score, sports and esports P&L, markets, win rate, edge over the price paid, and strategy. Without category or strategy, also summary: the whole board's ranked_total, by_grade (S, A, B), active_30d (last trade 30 days ago or less) and as_of, the counts the site's leaderboard shows.

输入参数dirsortlimitcursoractivitycategorystrategy

get_trader

Get trader

Look up a prediction market trader by wallet address or username. Returns grade (S through F), the edge over the price paid the profile badge shows (price_edge), and the sports and esports record: realized P&L (pnl.in_scope), markets traded, win rate, and volume. Wallet figures cover sports and esports markets only. Optional expand fields for heavier data: - strategy: Trading strategy classification - categories: Per-category performance breakdown - quant_metrics: retired since 2026-10-27; accepted and never returned, because its metrics covered every market of the wallet. Read pnl.in_scope or get_trader_pnl for the sports and esports record - trust: Per-field provenance (source, freshness, reconciliation, completeness) for grade, P&L, and stats - breakdowns: The profile's strategy breakdowns over sports and esports markets: P&L and win rate by UTC hour of first trade, hold-time and hour-of-day bands, risk metrics with category concentration, and entry-price buckets with their coverage (the settled positions the buckets leave out, such as two-sided hedges, by reason, count and P&L; its per-market P&L sum differs from pnl.in_scope.realized_pnl, which is Polymarket's published figure). Computed on the request, so slower for large wallets A wallet address with no trader yet returns sync_status "unknown" (not an error). A username or trader id that matches no trader is a not_found error. Args: - address (string, required): Ethereum wallet address (0x...) or trader username - expand (string[], optional): Heavy fields to include: "strategy", "categories", "trust", "breakdowns" ("quant_metrics" is accepted and returns nothing) - max_age_s (integer, optional, 0 or more): Freshness ceiling in seconds. The call answers only when data_quality.status is fresh or stale and data_quality.as_of is no older than this; otherwise it fails with reason freshness_ceiling_unsatisfied (HTTP 409). Nothing is refreshed to meet it Returns: Trader profile with grade, P&L, stats, and

输入参数expandaddress必填max_age_s

batch_get_traders

Batch traders

Batch lookup for 1-25 trader wallet addresses or known usernames. Results preserve request order and duplicate inputs return duplicate rows. Uses the same V1 batch item quota as POST /api/v1/traders/batch. Args: - traders (string[], required): Wallet addresses or known usernames - expand (string[], optional): Heavy fields to include for every trader: "strategy", "categories", "trust" (trust is per-field provenance for grade, P&L, and stats; "quant_metrics" is accepted and returns nothing since 2026-10-27) Returns: Ordered batch trader results with per-item success or error details. Each successful item's trader carries data_quality: status, as_of and field_groups; fresh and stale mean tracked and clocked (stale: older than the writer refresh budget, max_age_s), neither is a tolerance, and unknown means undatable, never recent.

输入参数expandtraders必填

get_large_trades

List large trades

Get recent large trades from graded prediction market traders. Each trade includes a 0-1 review score, persisted suspicion facts, trader grade, and market context. Cursor-paginated, newest first. Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response - min_size (number, default 5000): Minimum trade size in USD - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, a league such as NBA (it folds into its sport), Esports, or sports for every sport but Esports. Omit it for every sports and esports trade - min_grade (string, optional): Minimum trader grade now (S, A, B, C, D, F); not with min_grade_at_trade - min_grade_at_trade (string, optional): Minimum grade the trader held when the trade filled (graded only), the basis the stream and webhooks share; not with min_grade - suspicious_only (boolean, optional): Keep only persisted suspicion_score >= 60; false preserves the current result set - min_market_volume_share (number, 0-1, optional): Keep only trades whose market_volume_share is known and at least this; a fraction, so 0.01 is one percent of the market's traded volume - sort (string, optional): "recent" (default, newest first) or "market_volume_share" (biggest share of its market first, over the last 30 days, or from the from bound on the history tools; a cursor is bound to the order it was minted in) - since (string, optional): wt_ id of a trade a previous call returned; answers only the trades recorded after it, in commit order, so a trade recorded late still arrives. Poll with the first trade of the last answer that had trades and deduplicate on id; recent order only - condition_id (string, optional): One market's large trades, by exact raw provider condition_id; not with event_slug or since - event_slug (string, optional): Every market of one game (moneyline, spreads, totals and props), the markets get_game_t

输入参数sortlimitsincecursorcategorymin_sizemin_gradeevent_slugcondition_idsuspicious_onlymin_grade_at_trademin_market_volume_share

get_large_trade

Get large trade

Read one large trade by ID. Accepts either the wt_ ID returned by large-trade list/history responses or the raw numeric id. Args: - id (string, required): Large trade ID such as wt_123 or 123 Returns: One large trade with trader info, market context, size, side, price, current review_score (signal_score is its deprecated twin, same value, until its 2027-02-01 sunset) and trader grade, point-in-time recorded_review_score (recorded_signal_score is its deprecated twin until its 2027-02-01 sunset; null before 2026-08-03) and trader grade_at_trade with grade_at_trade_status (unknown before 2026-09-19), optional suspicion_score, and optional suspicion_track. A null suspicion track means the persisted legacy row has no track label. Each trade carries clv, its closing line value against the market's stored close (get_market_close): status measured, in_play, pending or unavailable, and when measured clv_cents, positive when the trade beat the close (buy: close minus price; sell: price minus close; cents per share, gross of fees). taker_fee_cents is the fee the fill paid as taker, cents per share, from the exchange's on-chain record of the fill (null until that record is decoded, about a minute after the trade, and before 2026-08-16); clv_after_fees_cents is clv_cents minus it, set when both are.

输入参数id必填

get_large_trades_history

Replay historical large trades

Replay historical large trades from the local record. Supports cursor pagination plus condition, trader, category, grade, platform, suspicion, market-share, and RFC3339 from/to filters, and a market_volume_share sort. Args: - limit (number, 1-100, default 20) - cursor (string, optional): Pagination cursor with wth_ prefix - min_size (number, optional): Minimum trade size in USD - condition_id (string, optional): Exact raw provider condition_id - event_slug (string, optional): Every market of one game, the markets get_game_trades reads; recent order only, not with condition_id; an unknown slug is not_found - trader (string, optional): Wallet, alias, or username - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, a league such as NBA (it folds into its sport), Esports, or sports for every sport but Esports. Omit it for every sports and esports trade - min_grade (string, optional): S, A, B, C, D, or F; filters on today's grade, not the grade at trade time; not with min_grade_at_trade - min_grade_at_trade (string, optional): Minimum grade the trader held when the trade filled (graded only), the basis the stream and webhooks share; not with min_grade - suspicious_only (boolean, optional): Keep only persisted suspicion_score >= 60 - platform (string, optional): polymarket or all - from/to (string, optional): RFC3339 traded_at bounds - min_market_volume_share (number, 0-1, optional): Keep only trades whose market_volume_share is known and at least this; a fraction, so 0.01 is one percent of the market's traded volume - sort (string, optional): "recent" (default, newest first) or "market_volume_share" (biggest share of its market first, over the last 30 days, or from the from bound on the history tools; a cursor is bound to the order it was minted in) Returns: Historical large trades with replay metadata, current review_score (signal_score is its deprecated twin, same value, until its 2027-02

输入参数tofromsortlimitcursortradercategorymin_sizeplatformmin_gradeevent_slugcondition_id另有 3 个

get_whale_trades

List Whale Trades

Deprecated alias of get_large_trades (#16304), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/whale-trades path. Get recent large trades from graded prediction market traders. Each trade includes a 0-1 review score, persisted suspicion facts, trader grade, and market context. Cursor-paginated, newest first. Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response - min_size (number, default 5000): Minimum trade size in USD - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, a league such as NBA (it folds into its sport), Esports, or sports for every sport but Esports. Omit it for every sports and esports trade - min_grade (string, optional): Minimum trader grade now (S, A, B, C, D, F); not with min_grade_at_trade - min_grade_at_trade (string, optional): Minimum grade the trader held when the trade filled (graded only), the basis the stream and webhooks share; not with min_grade - suspicious_only (boolean, optional): Keep only persisted suspicion_score >= 60; false preserves the current result set - min_market_volume_share (number, 0-1, optional): Keep only trades whose market_volume_share is known and at least this; a fraction, so 0.01 is one percent of the market's traded volume - sort (string, optional): "recent" (default, newest first) or "market_volume_share" (biggest share of its market first, over the last 30 days, or from the from bound on the history tools; a cursor is bound to the order it was minted in) - since (string, optional): wt_ id of a trade a previous call returned; answers only the trades recorded after it, in commit order, so a trade recorded late still arrives. Poll with the first trade of the last answer that had trades and deduplicate on id; recent order only - condition_id (string, optional): One market's large trades, by exact raw provider condi

输入参数sortlimitsincecursorcategorymin_sizemin_gradeevent_slugcondition_idsuspicious_onlymin_grade_at_trademin_market_volume_share

get_whale_trade

Get Whale Trade

Deprecated alias of get_large_trade (#16304), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/whale-trades/{id} path, whose envelope keeps object: whale_trade. Read one whale trade by ID. Accepts either the wt_ ID returned by whale-trade list/history responses or the raw numeric whale_alerts.id. Args: - id (string, required): Whale trade ID such as wt_123 or 123 Returns: One whale trade with trader info, market context, size, side, price, current review_score (signal_score is its deprecated twin, same value, until its 2027-02-01 sunset) and trader grade, point-in-time recorded_review_score (recorded_signal_score is its deprecated twin until its 2027-02-01 sunset; null before 2026-08-03) and trader grade_at_trade with grade_at_trade_status (unknown before 2026-09-19), optional suspicion_score, and optional suspicion_track. A null suspicion track means the persisted legacy row has no track label. Each trade carries clv, its closing line value against the market's stored close (get_market_close): status measured, in_play, pending or unavailable, and when measured clv_cents, positive when the trade beat the close (buy: close minus price; sell: price minus close; cents per share, gross of fees). taker_fee_cents is the fee the fill paid as taker, cents per share, from the exchange's on-chain record of the fill (null until that record is decoded, about a minute after the trade, and before 2026-08-16); clv_after_fees_cents is clv_cents minus it, set when both are.

输入参数id必填

get_whale_trades_history

Replay Historical Whale Trades

Deprecated alias of get_large_trades_history (#16304), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/whale-trades/history path. Replay historical whale trades from local whale_alerts rows. Supports cursor pagination plus condition, trader, category, grade, platform, suspicion, market-share, and RFC3339 from/to filters, and a market_volume_share sort. Args: - limit (number, 1-100, default 20) - cursor (string, optional): Pagination cursor with wth_ prefix - min_size (number, optional): Minimum trade size in USD - condition_id (string, optional): Exact raw provider condition_id - event_slug (string, optional): Every market of one game, the markets get_game_trades reads; recent order only, not with condition_id; an unknown slug is not_found - trader (string, optional): Wallet, alias, or username - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, a league such as NBA (it folds into its sport), Esports, or sports for every sport but Esports. Omit it for every sports and esports trade - min_grade (string, optional): S, A, B, C, D, or F; filters on today's grade, not the grade at trade time; not with min_grade_at_trade - min_grade_at_trade (string, optional): Minimum grade the trader held when the trade filled (graded only), the basis the stream and webhooks share; not with min_grade - suspicious_only (boolean, optional): Keep only persisted suspicion_score >= 60 - platform (string, optional): polymarket or all - from/to (string, optional): RFC3339 traded_at bounds - min_market_volume_share (number, 0-1, optional): Keep only trades whose market_volume_share is known and at least this; a fraction, so 0.01 is one percent of the market's traded volume - sort (string, optional): "recent" (default, newest first) or "market_volume_share" (biggest share of its market first, over the last 30 days, or from the from bound on the history tools; a cursor i

输入参数tofromsortlimitcursortradercategorymin_sizeplatformmin_gradeevent_slugcondition_id另有 3 个

get_edge_hunter

Get Edge Hunter

Read the Max-only Edge Hunter API at https://0xinsider.com/sports/edge. Pro receives 403 forbidden with reason max_plan_required. One view selector offers board (default), full signals and cohort observations. All views accept kind sports|esports (omission covers both), sports, leagues, market_types, condition_ids, event_slugs, series_slugs and legacy category. Array selections accept 1..100 supplied values before deduplication, including comma-separated values inside a value; repeat REST query keys or supply MCP arrays. Lists match OR; axes match AND. Canonical sports and machine league identities normalize case-insensitively; market types and event/series slugs are exact case-sensitive provider strings. category=NFL selects the Football bucket; leagues=[nfl] selects NFL. category=sports, in any casing, reads as kind sports and echoes both; with kind esports it is a 400. Selection precedes the cap or pagination and appears as normalized selection beside the result fields; changed selections cannot share cursors or ETags. Every row carries nullable market_context with nullable league, series_slug, market_type and metadata_updated_at for authoritative filter discovery; metadata_updated_at is the local canonical writer clock, not provider observation time. Selected reads fail closed with 503 read_model_warming if frozen sidecar readiness is absent. Board defaults stay B grade floor, 30 rows and 48-hour horizon; min_grade S/A/B and limit clamp 1..30 are configurable, total is before the cap, with both current outcome quotes. Signals use min_grade default B, horizon default 12/clamp 1..48, limit default 20/clamp 1..100 and cursor, retaining token_id, all ranked/holder/directional/category-skill fields and clocks. Grade floor requires a holder at that grade or better without removing other holders. Observations require cohort wider_holder|in_play|emerging_pile, accept limit/cursor, and retain full observation rows, snapshot_as_of, degraded, source-generation/category fun

输入参数kindviewlimitcohortcursorsportsleaguescategoryadmissionmin_gradeevent_slugsmarket_types另有 3 个

list_games

List covered games

The fixture list: one coherent game per row, so an agent never has to assemble a game from market searches and team-name matching. Each row carries both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, a tennis game's tournament edition (tier, place, venue time zone, draw and dates), and the game's winner markets (the moneyline, or a soccer game's three 1X2 legs) with their condition_id, outcome token ids and provider moneyline prices. A game's spreads, totals and player props are not on the row: list_game_markets lists every market of one event_slug. Ordered by kickoff, then event_slug; games whose kickoff the provider has not published sort last. For what is on now, pass window=now: without it the list is the whole catalog and starts at the oldest game still open, which can be weeks old. Args: - sport (string, optional): canonical bucket, case-insensitive, with - and _ read as a space (table-tennis and Table Tennis are one bucket). Omitted means every covered sport - league (string, optional): league tag as this list's coverage.leagues spells it (nfl, epl, cs2), case-insensitive - status (string, optional): scheduled, live, paused, ended, postponed, cancelled, suspended, delayed, or unknown. ended, cancelled and postponed also list finished games that have left the live board (freshness.source stored) for kickoffs in starts_after..starts_before, by default the 7 days before now; such a page can be short, or empty, while has_more is true, so follow next_cursor until has_more is false - starts_after / starts_before (string, optional): RFC 3339 kickoff bounds; a game with no published kickoff is excluded whenever either bound is set - window (string, optional): all (default, the whole catalog) or now: games the provider reports in play, plus any other game whose kickoff was at most 3 hours ago or is still to come, without ended, postponed or cancelled games - limit (number, 1-100, defau

输入参数limitsportcursorexpandleaguestatuswindowstarts_afterstarts_before

get_game

Get one game

The same game object list_games returns, for one event_slug: both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, a tennis game's tournament edition (tier, place, venue time zone, draw and dates), and the game's winner markets (the moneyline, or a soccer game's three 1X2 legs) with their condition_id, outcome token ids and provider moneyline prices. For the game's spreads, totals and player props, call list_game_markets with the same event_slug. The slug is the identity the live_sports_updated webhook pulse carries, so a receiver can read the full game straight from a pulse. Args: - event_slug (string, required): the game's event slug, for example nfl-buf-nyj-2026-09-22. Matched case-insensitively Returns: the game object with the envelope's meta. status.state keeps postponed, cancelled, suspended and delayed distinct from a plain 'not live'. Each game's own coverage reports whether scores, competitor provider ids and the schedule were available: when competitors reads labels, do not join on names. A slug outside the published coverage answers 404, including a real Polymarket event in a sport this deployment does not serve; list_games names what is covered. Each winner market carries settlement, the block list_game_markets serves (status observed, not_posed or unavailable; oracle_status, payouts, result outcome or split, the 50-50; resolved_at); it never waits for Polymarket: a market we saw settle reads its recorded settlement, and any other market of a game not read lately reads unavailable, and a read a moment later may answer. Carries no sharp-money split and no holder identity.

输入参数event_slug必填

list_game_markets

List a game's markets

Every stored Polymarket market of one event_slug: the moneyline, spreads, totals, team totals, half and quarter lines, player props and the rest, plus the markets of the event's child events (a soccer game's exact score, halftime result and more-markets events), each with its own event_slug. Each row carries the condition_id, the provider's sports_market_type and groupItemTitle, the provider's typed line and, when stated, the outcome index it belongs to, both outcome labels with their CLOB token ids, active or closed status, and settlement: how Polymarket's oracle settled or is settling the market (status observed, not_posed or unavailable; oracle_status, the provider lifecycle state such as proposed, disputed or resolved; settled; payouts, micro-USDC per share per outcome index; result outcome or split, the 50-50; winning_outcome_index; was_disputed; resolved_at; expected_settlement_time and settlement_time_basis; proposed_answer for a pending round; observed_at, on a settled market when we first saw the settlement, which never moves; a null is unknown). Ordered by sports_market_type, then line, then condition_id. Pass a condition_id to get_market_holders, get_market_flow or get_market_snapshot. Args: - event_slug (string, required): the event slug from list_games, get_game or a search_markets result, for example nba-bos-orl-2026-11-01. Matched case-insensitively. Live, upcoming and settled events all answer - sports_market_type (string, optional): comma-separated provider market types to keep, case-insensitive (spreads, totals, points, first_half_totals). Omitted keeps every type; an unknown type returns an empty page - status (string, optional): active, closed or all (default all) - limit (number, 1-100, default 20) - cursor (string, optional): opaque gmk_v1_ cursor from next_cursor, sent with the same filters - expand (string[], optional): sharp_money adds each row's sharp_money: status (computed, not_computed or unavailable; the first read of a gam

输入参数limitcursorexpandstatusevent_slug必填sports_market_type

list_props

List player props

Player props across the catalog's games of one league, one row per market: player, stat and line. NFL files props on a game's -player-props and -first-td-scorer child events and NBA on the game event; this reads both, so a caller does not walk list_games and then each game's markets. Each row carries player.name (the provider groupItemTitle before its first ": ", as the event page shows it; null with player_unavailable_reason when the provider stored no title), stat (the provider sportsMarketType), line (null for a yes/no prop such as an anytime touchdown), title, group_item_title, both outcomes with labels and CLOB token ids, status, resolved_at, and the game's game_event_slug, starts_at and competitors. Polymarket does not name a player's team. Rows are ordered by game slug, stat, player, line. Args: - league (string, required): league tag as list_games coverage.leagues spells it, for example nfl or nba - starts_after / starts_before (string, optional): RFC 3339 kickoff bounds; a game with no published kickoff is excluded whenever either is set - player (string, optional): part of player.name, ignoring case and accents (jokic matches Nikola Jokić) - stat (string[], optional): provider sportsMarketType values to keep, for example passing_yards or points. Repeat the key or pass an array - status (string, optional): active (default), closed, or all - max_spread_c (number, optional): keep only props with an outcome whose cached best ask less best bid is at most this many cents (above 0, at most 100, steps of 0.01), from the same books expand=quotes serves. A prop whose book is not cached yet is left out and counted on coverage.rows_without_book; the board reads its league's books behind the response. A cursor never revisits a prop a page passed over, whether its book was wider or not cached yet, so when coverage.rows_without_book is above 0, read from the first page again after a few seconds to judge those props; the board reads books for active props onl

输入参数statlimitcursorexpandleague必填playerstatusmax_spread_cstarts_afterstarts_beforemin_book_usd_within_2c

get_game_sharp_money

Get game sharp money

Where the graded money sits on a whole game, in one read: the S, A and B grade wallets' USD on each side (home, away and, for a 1X2 game, draw) summed across the game's markets, each side's integer share of it, the leader, and wallet counts by grade, plus the backend's verdict on the split. The same aggregate the game page on 0xinsider renders, so the two cannot disagree. Use it instead of paging get_market_holders per market and summing. Args: - event_slug (string, required): the game's event slug, for example nba-bos-orl-2026-11-01. Matched case-insensitively Returns: data with event_slug, status, lifecycle, verdict, allocation, total_usd, unallocated_usd, trader_count, holders_partial, outcomes[] (side, label, usd, pct, is_leader, wallets.s/a/b; side is the provider's own home/away designation of the team, or draw, and null when the provider designates neither), computed_at and money_as_of, plus meta. Every aggregate field is null unless status is computed; null means unknown, never zero. verdict.kind is no_sharp_money, all_on, split, leans (label, pct), leans_over_price (label, divergence_pts: how many probability points the money share sits above the price), no_clear_lean, unavailable (money exists but cannot be attributed) or withheld (the money is published but no directional claim is supported). When allocation is degraded, outcomes sum to total_usd minus unallocated_usd and carry no pct or leader. holders_partial true means a market's holder list was a capped page, so counts and dollars cover part of the holders. A settled game returns its recap with lifecycle settled. A game whose aggregate is still computing answers 503 read_model_warming with Retry-After; read again then. A slug with no sports market answers 404. Pro and Max. Descriptive analytics, not an order instruction.

输入参数event_slug必填

get_game_trades

List a game's trades

A game's newest fills across every market in it, live: the moneyline, spreads, totals and props, player props included, newest first. The same rows the 0xinsider game page's activity rail shows a Pro viewer. Every fill, not only large ones; use get_large_trades with event_slug for the game's large trades with review scores. Args: - event_slug (string, required): the game's event slug, for example nba-bos-orl-2026-11-01. Matched case-insensitively - limit (number, 1-200, default 100): newest fills to return Returns: data (each fill's id, traded_at, side, outcome, outcome_index, price, shares, size_usd, the signed spread point, the trader's address, display_name and current grade, and the market's condition_id, title, slug and line_label, its name within the game), has_more (always false: poll again rather than page), event_slug, source_stale and meta. source_stale true means the rows are the game's last complete read while its refresh runs. Deduplicate on id across polls. A 503 read_model_warming means the game's first read is still running: retry after Retry-After. An unknown slug answers not_found; an event outside sports and esports answers market_out_of_scope.

输入参数limitevent_slug必填

get_game_holders

Get a game's holders

The S, A and B graded holders of up to 25 markets of one game in one call. Each item is get_market_holders for one market, unfiltered and cut to limit, with its market, scan and totals. Pass condition_ids from list_game_markets; a market that is not one of the game's is that item's not_found. Results preserve request order and duplicate inputs return duplicate rows. Uses the V1 batch item quota, one item per condition_id. A market whose fresh roster is not ready within the request is served the last roster published for it in the past 15 minutes, with stale true and its own computed_at, while the fresh one keeps computing. Only a market with no such roster is an item error with reason read_model_warming and retry_at (its code is rate_limit_unavailable for compatibility; branch on reason): its scan keeps running, so a retry after that time reads it. Page past limit with get_market_holders. Args: - event_slug (string, required): the game's event slug, for example nba-bos-orl-2026-11-01. Matched case-insensitively - condition_ids (string[], required): 1-25 condition_id values of this game's markets - limit (number, 1-100, default 20): holders per market Returns: Ordered batch results with per-item success or error details; an ok item's data carries data (holders), has_more, total, market, scan, totals, computed_at, cached and stale.

输入参数limitevent_slug必填condition_ids必填

get_market_flow

Get market flow

One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its direction, YES or NO), the large-trade count, gross buy and sell volumes, and the top five graded trader positions. The envelope object is market_flow. Use search_markets first to find the condition_id for a market. Args: - condition_id (string, required): Market condition ID (from search_markets results) - timeframe (string, optional): Lookback window: "1h", "4h", "24h", "7d" (default "24h") Returns: Market info, the flow under sharp_money (net_flow_usd, direction YES/NO, large_trade_count, volumes) with smart_money as its deprecated byte-identical alias, and the top 5 graded trader positions.

输入参数timeframecondition_id必填

batch_get_market_flow

Batch market flow

Batch lookup of market flow for 1-25 raw provider condition_id values. Results preserve request order and duplicate inputs return duplicate rows. Uses the same V1 batch item quota as POST /api/v1/markets/flow/batch. Args: - condition_ids (string[], required): Raw provider condition IDs - timeframe (string, optional): "1h", "4h", "24h", or "7d" (default "24h") Returns: Ordered batch market-flow results with per-item success or error details.

输入参数timeframecondition_ids必填

get_market_intel

Get Market Intelligence

Deprecated alias of get_market_flow (#16312), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/market/{condition_id}/intel path, whose envelope keeps object: market_intel. Sharp money flow analysis for a specific prediction market. Shows net flow direction, whale trade count, buy/sell volumes, and top graded trader positions. Use search_markets first to find the condition_id for a market. Args: - condition_id (string, required): Market condition ID (from search_markets results) - timeframe (string, optional): Lookback window: "1h", "4h", "24h", "7d" (default "24h") Returns: Market info, sharp_money flow (net_flow_usd, direction YES/NO, volumes) with smart_money as its deprecated byte-identical alias, and top 5 trader positions.

输入参数timeframecondition_id必填

batch_get_market_intel

Batch Market Intelligence

Deprecated alias of batch_get_market_flow (#16312), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated POST /api/v1/markets/intel/batch path, whose envelope keeps object: market_intel_batch. Batch lookup for 1-25 raw provider condition_id values. Results preserve request order and duplicate inputs return duplicate rows. Uses the same V1 batch item quota as POST /api/v1/markets/intel/batch. Args: - condition_ids (string[], required): Raw provider condition IDs - timeframe (string, optional): "1h", "4h", "24h", or "7d" (default "24h") Returns: Ordered batch market-intelligence results with per-item success or error details.

输入参数timeframecondition_ids必填

get_sharp_money_flows

List sharp-money flows

Ranked sharp-money flow discovery across prediction markets. Use this before you know a condition_id to find where graded traders are net buying or selling. Cursor-paginated, ranked by absolute net flow descending. Args: - timeframe (string, optional): Lookback window: "1h", "4h", "24h", "7d" (default "24h") - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor with smf_ prefix - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, Esports, or sports for every sport but Esports - platform (string, optional): "polymarket" or "all" (default "all") - min_grade (string, optional): Minimum trader grade S, A, B, C, D, or F (default "B" = S/A/B) - direction (string, optional): Filter by net flow direction: "YES" or "NO" - condition_id (string, optional): One market's flow, by exact raw provider condition_id; not with event_slug - event_slug (string, optional): Rank only the markets of one game (moneyline, spreads, totals and props), the markets get_game_trades reads; not with condition_id; an unknown slug is not_found Returns: Ranked markets with sharp_money (net_flow_usd, direction, whale_trade_count, buy/sell volumes) and market identity. smart_money is a deprecated byte-identical alias of sharp_money until its 2027-02-01 sunset.

输入参数limitcursorcategoryplatformdirectionmin_gradetimeframeevent_slugcondition_id

get_smart_money_flows

List Smart-Money Flows

Deprecated alias of get_sharp_money_flows (#16308), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/markets/smart-money-flows path. Ranked sharp-money flow discovery across prediction markets. Use this before you know a condition_id to find where graded traders are net buying or selling. Cursor-paginated, ranked by absolute net flow descending. Args: - timeframe (string, optional): Lookback window: "1h", "4h", "24h", "7d" (default "24h") - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor with smf_ prefix - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, Esports, or sports for every sport but Esports - platform (string, optional): "polymarket" or "all" (default "all") - min_grade (string, optional): Minimum trader grade S, A, B, C, D, or F (default "B" = S/A/B) - direction (string, optional): Filter by net flow direction: "YES" or "NO" - condition_id (string, optional): One market's flow, by exact raw provider condition_id; not with event_slug - event_slug (string, optional): Rank only the markets of one game (moneyline, spreads, totals and props), the markets get_game_trades reads; not with condition_id; an unknown slug is not_found Returns: Ranked markets with sharp_money (net_flow_usd, direction, whale_trade_count, buy/sell volumes) and market identity. smart_money is a deprecated byte-identical alias of sharp_money until its 2027-02-01 sunset.

输入参数limitcursorcategoryplatformdirectionmin_gradetimeframeevent_slugcondition_id

get_market_snapshot

Get Market Snapshot

Provider-first live market-card snapshot for one raw provider condition_id. Forwards IDs to the V1 handler without mkt_ rewriting. Args: - condition_id (string, required): Raw provider condition_id returned by search or explore - expand (string[], optional): "trust" adds per-field provenance (source, freshness, reconciliation, completeness) for current_price and spread_bps Returns: Market identity, outcomes, liquidity, sports context, settlement, and freshness states, plus trust when expanded. settlement is the block list_game_markets serves (status observed, not_posed or unavailable; oracle_status, payouts, result outcome or split, the 50-50, resolved_at), read from the store of the market's event (a child event's market: its game's). It never waits for Polymarket: a market we saw settle reads its recorded settlement, and any other market with nothing stored is unavailable, and a read a moment later may answer.

输入参数expandcondition_id必填

get_suspicious_trades

Get suspicious trades

Stored trades whose recorded suspicion score meets the live flag threshold. Cursor-paginated by suspicion score (highest first). Use mode=stable when a walk must stay on one published scoring generation; restart when it returns cursor_expired. Each suspicious trade includes: - suspicion_score (60-100) - severity (currently flag) - Sub-scores: size and fresh_wallet when recorded; timing and edge are null - Evidence JSON with the scorer's stored signals Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response - min_suspicion (number, 0-100, default 0): Minimum score; the live floor of 60 also applies - severity (string, optional): "flag" selects live rows; "watch" returns none because no live watch policy exists - mode (string, optional): "live" (default) uses fresh cached pages; "stable" pins the walk to one published scoring generation Returns: List of suspicious trades with trader, market, scores, and evidence.

输入参数modelimitcursorseveritymin_suspicion

get_suspicious_trade

Get suspicious trade

Read one suspicious trade by ID. Accepts the rf_ ID returned by list responses or the raw numeric whale_alerts.id. Args: - id (string, required): Suspicious trade ID such as rf_123 or 123 Returns: One suspicious trade with trader, market, suspicion scores, and evidence.

输入参数id必填

get_insider_radar

Get Insider Radar Flags

Deprecated alias of get_suspicious_trades (#16301), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/insider-radar path. Stored trades whose recorded suspicion score meets the live flag threshold. Cursor-paginated by suspicion score (highest first). Use mode=stable when a walk must stay on one published scoring generation; restart when it returns cursor_expired. Each suspicious trade includes: - suspicion_score (60-100) - severity (currently flag) - Sub-scores: size and fresh_wallet when recorded; timing and edge are null - Evidence JSON with the scorer's stored signals Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response - min_suspicion (number, 0-100, default 0): Minimum score; the live floor of 60 also applies - severity (string, optional): "flag" selects live rows; "watch" returns none because no live watch policy exists - mode (string, optional): "live" (default) uses fresh cached pages; "stable" pins the walk to one published scoring generation Returns: List of suspicious trades with trader, market, scores, and evidence.

输入参数modelimitcursorseveritymin_suspicion

get_insider_radar_flag

Get Insider Radar Flag

Deprecated alias of get_suspicious_trade (#16301), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/insider-radar/{id} path. Read one suspicious trade by ID. Accepts the rf_ ID returned by list responses or the raw numeric whale_alerts.id. Args: - id (string, required): Suspicious trade ID such as rf_123 or 123 Returns: One suspicious trade with trader, market, suspicion scores, and evidence.

输入参数id必填

get_positions

List Current Positions

List current prediction-market positions from the public positions-board feed. Returns trader, market, value, side, share, P&L, and freshness context. Cursor-paginated by current value descending. Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from previous response - min_size (number, optional): Minimum current value in USD; defaults to 100, or to 0 when wallet is present; send 0 for every reconciled position - category (string, optional): Filter by provider-backed market category. One category such as Basketball or Esports; the word sports is rejected, so omit category for every sports and esports market - condition_id (string, optional): Scope to one market: raw provider condition_id or mkt_-prefixed market id - wallet (string[], optional): Scope to one wallet or a book of wallets (up to 25); each value is a wallet address, known username, or trd_-prefixed trader id - min_grade (string, optional): Minimum trader grade (S, A, B, C, D, F) - side (string, optional): Filter by binary side: "yes" or "no" - consistency (string, optional): live (default) or snapshot. snapshot requires wallet and freezes up to 500 positions and 2 MB for up to five minutes; repeat the same filters and consistency on every page. A new first page replaces the API key's prior snapshot; a changed filter errors, and an expired or replaced cursor returns cursor_expired Returns: List of current positions with pagination metadata. The page carries data_quality beside data: status, as_of (the oldest clock the page rests on) and field_groups. fresh and stale both mean tracked and clocked; stale means as_of is older than max_age_s, the refresh budget of the group writer. Neither is a tolerance: compare as_of with your own. unknown means this read cannot date that group, never that it is recent. With consistency=snapshot, the page also carries snapshot: as_of, expires_at, row_count.

输入参数sidelimitcursorwalletcategorymin_sizemin_gradeconsistencycondition_id

get_position_timeline

Get Position Timeline

Get every stored Polymarket fill for one tracked trader in one market, at any date, newest first, with server-computed running_amount and running_avg_price over all earlier fills. tx_hash is null for a fill with no large-trade alert. A pair with more than 20,000 fills before the page returns fill_history_too_large. The REST identity accepts a 0x wallet, username, trd_-prefixed trader id, or bare integer traders.id with precedence wallet, trd_, integer, then username. Only warm-tier traders, the wallets we sync most often, are tracked. Args: - condition_id (string, required): Market condition ID - address (string, optional): Any supported REST trader identity, including a bare integer traders.id - trader_id (number, optional): Convenience alias for a bare integer traders.id; provide exactly one of address or trader_id - limit (number, 1-100, default 20): Max events per page - cursor (string, optional): Pagination cursor from previous response Returns: List of position timeline events with pagination metadata.

输入参数limitcursoraddresstrader_idcondition_id必填

get_position_timeline_by_id

Get Position Timeline By Trader ID

Get every stored Polymarket fill for one internal trader id in one market, at any date, newest first, using the public V1 /api/v1/traders/{id}/position-timeline route. Args: - condition_id (string, required): Market condition ID - trader_id (number, required): Internal traders.id alias - limit (number, 1-100, default 20) - cursor (string, optional) Returns: List of position timeline events with pagination metadata.

输入参数limitcursortrader_id必填condition_id必填

search_markets

Search Markets

Search prediction markets by keyword. Returns one market per matching Polymarket event, with status, category, platform and event_slug: the event's representative market: the market whose title is q, else a moneyline or winner market before an O/U, spread or alt line, so a game's spreads, totals and player props never appear as separate results. An event holding a market whose title is q (case-insensitive) ranks first whatever its date, so a pasted market title returns that market first. Pass a sports result's event_slug to list_game_markets for every market of that game. Use this to find condition_id values needed by get_market_flow. Supports cursor pagination: pass next_cursor from the previous page with the same q, status and category to read the next page; stop when has_more is false. Args: - q (string, required): Search query - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Pagination cursor from the previous response's next_cursor - status (string, optional): Filter by status: "active", "closed", or "all" (default "all") - category (string, optional): Filter by category. One category such as Basketball or Esports; the word sports is rejected, so omit category for every sports and esports market Returns: data (one market per matching event, with id, condition_id, title, slug, event_slug, category, platform, status), has_more, next_cursor.

输入参数q必填limitcursorstatuscategory

search_content

Search Editorial Content

Search 0xinsider's editorial content by keyword. Returns matching learn articles, glossary entries, comparisons, research, and trading strategies with their canonical URLs. Args: - q (string, required): Search query, 1-256 characters before whitespace trimming - limit (number, 1-50, default 10): Max results Returns: List of matching content items with content_id, kind, slug, title, excerpt, and url.

输入参数q必填limit

explore_markets

Explore Markets

Browse large-trade-active titled markets for discovery surfaces. Returns grouped event clusters or standalone markets plus live facets. Cursor-paginated over visible discovery entries. Args: - limit (number, 1-48, default 24): Max discovery entries per page - cursor (string, optional): Pagination cursor from previous response - category (string, optional): Filter by market category (case-insensitive): a sport or esports bucket such as Basketball or Esports, or sports for every sport but Esports; any other category is rejected - status (string, optional): Filter by status: "active", "closed", or "all" - platform (string, optional): Explore is Polymarket-only; accepted for backward-compatibility, does not change the result set - sort (string, optional): Sort by "trending", "hot", "expiring", "large_trades" (deprecated spelling "whales" until its 2027-02-01 sunset), "volume", or "newest" - q (string, optional): Keyword search against market titles, up to 64 characters before whitespace trimming Returns: Market discovery entries, facets, and pagination metadata.

输入参数qsortlimitcursorstatuscategoryplatform

get_event_replay_since

Replay Public Events

Replay durable public large-trade events strictly after an opaque cursor, in commit order (a page never reaches past the oldest open write transaction, so a late-committing lower id is delivered later instead of skipped). Filters narrow the stream in place and are bound to the cursor: a cursor issued under other filters answers error.reason cursor_expired, so restart without a cursor. expand=trade adds the public trade read to every event, so a page needs no per-event get_whale_trade call. Args: - cursor (string, optional): Opaque event replay cursor - limit (number, 1-100, default 50) - trader (string, optional): wallet address, trd_ id or username - condition_id (string, optional): raw condition_id or mkt_ id - min_grade (string, optional): S, A, B, C, D or F; the wallet's grade now; not with min_grade_at_trade - min_grade_at_trade (string, optional): S, A, B, C, D or F; the grade the trader held when the trade filled (graded only), the basis the stream and webhooks share; not with min_grade - min_size (number, optional): minimum size in USD - expand (string, optional): "trade" Returns: Event replay window with retention and completeness metadata; each event carries trade when expanded.

输入参数limitcursorexpandtradermin_sizemin_gradecondition_idmin_grade_at_trade

list_webhooks

List Webhook Endpoints

List of webhook endpoints owned by the authenticated API key user. This does not create, update, verify, rotate, or delete webhook endpoints. Args: none Returns: List of webhook endpoint configuration records.

无需输入参数。

get_webhook

Get Webhook Endpoint

Lookup of one webhook endpoint owned by the authenticated API key user. This does not create, update, verify, rotate, or delete webhook endpoints. Args: - id (number, required): Webhook endpoint id Returns: Webhook endpoint configuration record.

输入参数id必填

get_daily_report_snapshot

Get Daily Report Snapshot

Read one dated daily whale-activity report snapshot. Args: - date (string, required): UTC report date in YYYY-MM-DD format Returns: Report snapshot metadata and entries.

输入参数date必填

get_weekly_report_snapshot

Get Weekly Report Snapshot

Read one weekly whale-activity report snapshot. Pass either from/to UTC dates or an ISO YYYY-WW week token. Args: - week (string, optional): YYYY-WW selector - from/to (string, optional): UTC dates in YYYY-MM-DD format Returns: Report snapshot metadata and entries.

输入参数tofromweek

get_monthly_report_snapshot

Get Monthly Report Snapshot

Read one UTC monthly whale-activity report snapshot. Args: - month (string, required): UTC report month in YYYY-MM format Returns: Report snapshot metadata and entries.

输入参数month必填

get_resolution_report

Get Resolution Report

Read one UTC day's resolution report: on the day's resolved sports and esports markets, how often the side the profitable (S, A and B grade) wallets held won, beside how often every qualifying wallet's side won, one vote each. markets lists each market they held a position in, with the consensus side, its confidence and each wallet's side, cost and realized P&L; view totals drops it. A past day is served from its retained build: generated_at says when it was built and source_updates_pending that a newer build has been requested. A day with no build yet returns read_model_warming with a retry time. Args: - date (string, required): UTC report date in YYYY-MM-DD format, no later than today - view (string, optional): full (default) or totals Returns: date, market_scope, grade_basis, the counts (total_resolved, with_smart_positions, smart_money_right, smart_money_wrong, accuracy, all_wallets_right, all_wallets_wrong, all_wallets_accuracy, total_smart_pnl), generated_at, source_updates_pending and markets[].

输入参数date必填view

get_report

Get Report Snapshot

Unified whale-activity report snapshot selector. One route for all three granularities; dispatches to the same per-granularity cap and date window as the granularity-specific report tools. Args: - granularity (string, required): "daily", "weekly", or "monthly" - period (string, required): Period token for the granularity. daily: UTC date YYYY-MM-DD. weekly: ISO week YYYY-WW, or a from,to YYYY-MM-DD pair. monthly: UTC month YYYY-MM. Returns: Report snapshot metadata and entries (source_range, snapshot.status, completeness, reconciliation, report).

输入参数period必填granularity必填

get_trader_export_snapshot

Get Trader Export Snapshot

Read export source-range, completeness, volume reconciliation, row-count estimate, and large-export policy for one trader. Metadata only; does not start an export job. Args: - address (string, required): Trader wallet address, known username-style lookup, or trd_-prefixed trader ID emitted by the API. Bare integer database IDs are not accepted Returns: Trader export snapshot metadata.

输入参数address必填

get_coverage

Get coverage

Read which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every surface reports the status supported: grade, pnl, strategy, timeline, large_trades, whale_signal (the deprecated spelling of large_trades, until its 2027-02-01 sunset), suspicious_trades, insider_radar (the deprecated spelling of suspicious_trades, until its 2027-02-01 sunset), and market_snapshot. Use this before choosing trader, market, large-trade, or suspicious-trade routes. Args: none Returns: Static backend-owned coverage document under the single key polymarket.

无需输入参数。

get_platforms

Get Platform Capability Matrix

Deprecated alias of get_coverage (#16315), kept live until its 2027-02-01 sunset (#29351), then removed; it calls the deprecated /api/v1/platforms path, which serves the same body. Read which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every surface reports the status supported: grade, pnl, strategy, timeline, large_trades, whale_signal (the deprecated spelling of large_trades, until its 2027-02-01 sunset), suspicious_trades, insider_radar (the deprecated spelling of suspicious_trades, until its 2027-02-01 sunset), and market_snapshot. Use this before choosing trader, market, large-trade, or suspicious-trade routes. Args: none Returns: Static backend-owned coverage document under the single key polymarket.

无需输入参数。

get_usage

Get API Usage

Read the calling credential's own request budget: the per-minute rate limit (used, limit, remaining, reset_at), today's UTC usage, and the monthly quota (used, limit, remaining, reset_at, binding, pay_as_you_go, ceiling, unavailable_reason). Call it before a long run and slow down or stop before monthly_quota.remaining reaches 0; when binding is true, requests past the limit are refused until reset_at. It costs no monthly quota and no per-minute request: it shares a separate 100 reads/minute inspection allowance with get_account. monthly_quota is null with unavailable_reason when the month's count cannot be read. Args: none Returns: rate_limit, daily_usage and monthly_quota. Times are Unix seconds.

无需输入参数。

get_account

Get Account Identity

Identify the calling account and credential: user_id, credential_id, credential_kind (api_key, oauth_grant or integration_key), credential_status, entitlement (paid_data_access active or lapsed, and the recovery_action when lapsed) and scopes (null for full developer-key access). Use it to confirm which account an agent is spending before a run. It costs no monthly quota and no per-minute request: it shares a separate 100 reads/minute inspection allowance with get_usage. It returns no secret, payment or contact detail. Args: none Returns: user_id, credential_id, credential_kind, credential_status, entitlement and scopes.

无需输入参数。

get_large_positions

List Large Positions

List the largest current open positions from graded traders (Polymarket-only). Each row carries position value, open (unrealized) P&L, share count, entry/current price, outcome label, and trader/market context. Cursor-paginated by position value descending. Polymarket-only: the scanner filters platform = 'polymarket', so an unknown condition_id matches nothing and returns an empty list (never fabricated rows). Args: - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Opaque pagination cursor from previous response - min_size (number, optional): Minimum position value in USD - category (string, optional): Filter by provider-backed market category. One category such as Basketball or Esports; the word sports is rejected, so omit category for every sports and esports market - min_grade (string, optional): Minimum trader grade (S, A, B, C, D, F) - condition_id (string, optional): Scope to one market (raw provider id or mkt_-prefixed) Returns: List of large positions with trader, market, value, P&L, and pagination metadata.

输入参数limitcursorcategorymin_sizemin_gradecondition_id

get_leaderboard_leagues

List Leaderboard Leagues

List every league that has its own skill leaderboard, grouped by sport, most ranked wallets first. Each row's sport and slug are the sport and league arguments of get_sport_leaderboard. A league is listed once its edge sort ranks at least min_ranked wallets. A ranking being rebuilt returns read_model_warming with a retry time. Args: none Returns: min_ranked, min_resolved, refreshed_at and leagues[] (category, sport, slug, name, ranked_traders, total_traders).

无需输入参数。

get_sport_leaderboard

Get Sport Leaderboard

Get one sport's skill leaderboard, or with league one league's: the board the site's sport pages show. Wallets need min_resolved resolved markets in the sport or league. sort edge (the default) ranks edge_skill, the edge over the price paid pulled toward the board's edge_average by how much of the record is noise; a wallet without a ranked edge sorts after the ranked ones. sort pnl ranks realized P&L and win_rate the Wilson lower bound of the win rate. Boards are ranked to 100 wallets. A sport outside sports and esports is not_found on sport; a league the sport has no board for is not_found on league (get_leaderboard_leagues lists them). Args: - sport (string, required): Sport slug, e.g. soccer, basketball, football, esports; an alias such as nba reads its sport's board - league (string, optional): League slug of the sport, e.g. premier-league - sort (string, optional): edge (default), pnl or win_rate - limit (number, 1-100, default 20): Rows from the top of the board Returns: sport, category, league, sort, min_resolved, limit, total_traders, edge_average, volume_scope, as_of and rows[] (rank, id, address, username, platform, grade, n_resolved, wins, losses, win_rate, win_rate_wilson_lb, price_edge, edge_hold, edge_skill, pnl, volume, cost, roi, last_category_trade_at).

输入参数sortlimitsport必填league

list_category_leaders

List Category Leaders

List every sports and esports category's top three edge leaders, the board the site's categories index shows: in each category, wallets ranked by the 95% lower bound of their edge over the price they paid, counted over independent events. Only wallets whose lower bound is above zero are listed, so a category can carry fewer than three. Rows come by category, then rank; get_category_leaderboard pages one category's full ranking. Args: none Returns: rows (rank, category, id, address, username, platform, grade, edge_lower_bound, independent_events, unresolved_events, n_resolved, win_rate, pnl, as_of).

无需输入参数。

get_category_leaderboard

Get Category Leaderboard

Get one sports or esports category's edge leaderboard, the board the site's category pages show: wallets ranked by the 95% lower bound of their edge over the price they paid in the category, counted over independent events, best first. Only wallets whose lower bound is above zero are listed; total counts them. active_within keeps wallets that traded in the category within 7d, 30d or 90d, and min_events sets the independent events a wallet needs. Cursor-paginated; a cursor issued before the ranking refreshed returns cursor_expired. A slug outside sports and esports is not_found on slug. Args: - slug (string, required): Category slug, e.g. soccer, basketball, tennis, esports - active_within (string, optional): all (default), 7d, 30d or 90d - min_events (number, optional, default 0): Independent events a wallet needs in the category - limit (number, 1-100, default 20): Max results per page - cursor (string, optional): Opaque pagination cursor from previous response Returns: rows (rank, category, id, address, username, platform, grade, edge_lower_bound, independent_events, unresolved_events, n_resolved, win_rate, pnl, as_of) and pagination metadata.

输入参数slug必填limitcursormin_eventsactive_within

get_trader_pnl

Get Trader P&L Time Series

Get a trader's sports and esports daily P&L time series and pre-derived stats. Returns entries (daily realized P&L and its running sum), period stats (all/90d/30d/7d), monthly aggregation, per-year totals, the drawdown series, series_status, and realized: how the days add up to the wallet's Sports P&L. A day's daily_change is the realized P&L of the wallet's sports and esports markets dated to that UTC day (the resolution day, else the last trade day), so the days plus realized.undated_pnl equal realized.realized_pnl, the Sports P&L on the trader object. series_status pending means the series is not computed yet: entries are empty and never mean zero. A resolved trader with no sports or esports day returns an empty structured object (HTTP 200); an unknown address returns not found. Args: - address (string, required): Wallet address (0x...), username, or trd_-prefixed trader id - from / to (string, optional): Inclusive UTC calendar dates (YYYY-MM-DD) bounding the daily series (entries and drawdown); stats, monthly and year_totals stay defined over the full history - sections (string[], optional): Which sections to return: "entries", "stats", "monthly", "year_totals", "drawdown"; omit for all five. A section left out is absent, and an unrecognized name is an error, never ignored Returns: Structured trader P&L object (entries, stats, monthly, year_totals, drawdown, freshness_at, series_status, realized). A request that sent from, to or sections also carries view: the bounds applied, the sections present, entries_total, entries_in_window and the pre-window anchor.

输入参数tofromaddress必填sections

get_pick_of_the_day

Get Pick of the Day

Get the published Pick of the Day selections for today, or for a past product day with `date`, and their recorded facts. Pro opens five selections in total: the explicitly designated free selection plus the first four non-free selections in publication order. Max opens every available daily selection, up to twenty-five. Read entitled `picks` in `publication_order` order; use stable decimal-string `pick_id` for identity, not deprecated `pick_rank`. `is_free_selection` designates account access; `supersedes_pick_id` is deprecated and always null. `locked_picks` lists extra unresolved slots with only pick_rank and required_tier=max; game identity, identifying clocks and backed facts are omitted. Each full pick carries the matchup, backed side (pick_outcome_label), recorded publication price and return on the flat $1,000 stake (`stake_usd`, `return_usd`; `return_per_100` keeps the literal $100 basis), available holder facts, top grade, CLV capture status and backend-provided thesis. `scheduled_picks` contains entitled scheduled slots with release_at and kickoff; unauthorized slots appear in identity-free locked_picks instead. No market identity is revealed before publication. Withdrawn picks are omitted from current and dated recommendations, the archive and its statistics, even after market settlement. The public ledger retains every published commitment under its original identity and proof bytes. With `date`, the tool reads that past day's slate as the dated web page shows it, under the same tier rule, with no scheduled_picks. A past day with no published pick returns not_found with param date; a past day does not change, so do not retry it. A date after today is a bad_request. For today, when no active pick is available, the tool returns reason pick_not_released and retry_at. Schedule the next read from the returned retry guidance or an entitled scheduled slot's release_at instead of polling. An entitled published pick whose holder proof is not readable appears in

输入参数dateviewpick_id

get_pick_of_the_day_ledger_entry

Get Pick of the Day Proof

Read one published pick's sealed, opened or uncommitted ledger entry by its stable decimal-string pick_id. commitment_version explicitly selects version 1 legacy proofs or version 2 rank-free proofs. Never infer a proof format from dates or reorder canonical bytes. Pending proofs withhold the backed side and nonce. This tool requires the usual authenticated MCP tools/call transport; the corresponding REST read is public.

输入参数pick_id必填

get_pick_of_the_day_archive

Get Pick of the Day Archive

Get the Pick of the Day track record: each published pick that has not been withdrawn, with its outcome (win, loss, void or pending), recorded publication price, unit score and CLV fields, plus the rolling hit rate (wins / decided; void and pending excluded) and flat-$1,000-stake profit and ROI (`hit_rate.stake_usd` names the stake). The actual API key tier controls unresolved access: Pro opens five selections in total, the designated free selection plus the first four non-free selections in publication order; Max opens every available daily selection, up to twenty-five. Every resolved outcome (win/loss/void) is public. Unentitled pending rows retain only slot/date/outcome and required_tier with backed_side_locked=true; matchup, category, league, image, publication clock and backed facts are omitted. The archive retains the included historical picks, losses included. Withdrawn recommendations are omitted from archive rows and every aggregate, including the cumulative series, even after market settlement. The public ledger retains every published commitment under its original pick_id and proof bytes. The default view=summary returns hit_rate without its per-pick series, and one page of short rows (pick_id, pick_date, publication_order, is_free_selection, matchup, display_category, pick_outcome_label, outcome, top_grade, backed_price, unit_score, clv_pct, backed_side_locked, required_tier), with page.total, page.has_more and page.next_cursor. Pass next_cursor as cursor for older rows. view=full returns every row field plus days and hit_rate.series (the whole record passed 1,000,000 characters in November 2026); send limit with it to page the rows. get_pick_of_the_day with date and pick_id reads one pick in full; get_pick_of_the_day_stats serves the series and per-day buckets. Args: - view (string, optional): summary (default) or full - limit (integer, optional): Rows per page, 1-200, default 50 - cursor (string, optional): page.next_cursor of the previous page

输入参数viewlimitcursor

get_pick_of_the_day_stats

Get Pick of the Day Stats

Get the Pick of the Day track-record breakdown the stats page shows, computed from the same rows the archive publishes: the rolling hit rate, the win rate the market expected at publication, flat-stake outcome stats (drawdown, rolling form, profit factor, concentration), and buckets by day, sport, league or category label, access group (Free, Pro, Max), month, entry-price band, market type and totals side, plus streaks, records and every void pick. Withdrawn picks are outside every figure, as in the archive. The default view=summary returns every section except the five that grow with the record: series (one point per decided pick), days, categories, months and voids (one row per void pick). Name them in sections to read them; sections returns exactly the sections named and overrides view. view=full returns every section (over 150,000 characters in November 2026). hit_rate never carries series in summary or sections; series is its own top-level section. Args: - view (string, optional): summary (default) or full - sections (string[], optional): hit_rate, series, market_expectations, outcome_stats, days, categories, sports, tiers, months, price_bands, market_types, total_sides, streaks, records, voids; an unknown name is an error Returns: view, sections and the selected sections of hit_rate, series, market_expectations, outcome_stats, days[], categories[], sports[], tiers[], months[], price_bands[], market_types[], total_sides[], streaks, records and voids[]; view=full returns the whole object without view or sections.

输入参数viewsections

get_trader_context

Get trader context

One structured context object for a trader: the full get_trader profile plus position_summary (sync coverage and realized and unrealized P&L rollups with an as_of open-position clock), data_as_of and a freshness_note on what the point-in-time snapshot covers. position_summary is absent when the trader is not tracked locally or native net economics is unavailable. Its open-position figures (markets_open, unrealized_mtm, cost_basis_locked) cover the wallet's sports and esports markets, each judged when read; markets_synced, markets_resolved and the resolved win figures count every stored market, which can include markets of other categories, and sync_coverage adds markets_pruned and markets_unstored, its deleted and its unstored markets of other categories, and markets_combo, its combo markets, to markets_synced; markets_total, total_realized_pnl and synced_realized_pnl cover every Polymarket market of the wallet. A wallet address with no trader yet returns sync_status "unknown" on the nested trader; a username or trader id that matches no trader is a not_found error. Args: - address (string, required): Wallet address (0x...), username, or trd_-prefixed trader id Returns: trader, position_summary, data_as_of, freshness_note and meta.

输入参数address必填

get_trader_categories

Get trader category records

One wallet's win record in every canonical category it has a settled market in: wins, decided (wins plus losses) and win_rate per category, busiest first. The Esports record also lists each esports game it has a settled market in, and every record lists in scopes each part of the category it has a settled market in: an esports title, a soccer league (UEFA Champions League, LaLiga, ...) or a registered league of another sport (NBA, ATP, ...), by scope_key and display_name. The basis is every settled market at any size, so it differs from get_trader's categories expansion, which applies a 20 USD notional floor and an entry-price rule; neither corrects the other. A category with fewer decided markets than min_decided_for_win_rate keeps its counts with win_rate null and status not_enough_data. An absent category means no record, never a 0% record. Args: - address (string, required): Wallet address (0x...), username, or trd_-prefixed trader id - category (string, optional): One canonical category through the shared rollup: soccer and EPL reach Soccer, every esports label reaches Esports, football is American football, and sports returns every record but Esports. A game or a league is not a filter: ask for its category and read games or scopes Returns: records, min_decided_for_win_rate, basis, computed_at and meta. A trader with no settled market returns empty records; an unknown address is a not_found error.

输入参数address必填category

get_trader_grade_at

Get trader grade at an instant

The grade a trader was visibly recorded with at a past instant, from prospective grade observations: what the wallet's grade was when a trade or decision happened, never a reconstruction. status is graded, ungraded or unknown; use grade only when status is graded. Before available_from (the first recorded observation), after deletion, or in a grade-transition gap, status is unknown and grade is null. observation carries observed_at, published_by and model provenance, which older observations leave null. Never substitute a current grade. Args: - address (string, required): Wallet address (0x...), username, or trd_-prefixed trader id - as_of (string, required): RFC3339 instant, such as the trade or decision time; future instants are refused Returns: status, grade, available_from, observation and meta.

输入参数as_of必填address必填

get_trader_clv

Get trader closing line value

Closing line value (CLV) over one wallet's large trades in a window: the trades get_large_trades_history returns for the same trader, from, to, min_size and category, each measured as its clv object is. CLV is cents per share against the market's stored close (get_market_close): a buy scores the close minus the price paid, a sell the price received minus the close, so positive beat the close. Only trades filled before kickoff on a market with a measured close count; the rest are counted in excluded (in_play, pending, unavailable). Gross of fees. Large trades only, not every fill. The window defaults to the 90 days before to (default now), at most 366 days; a window over 25,000 large trades is refused. Args: - address (string, required): Wallet address (0x...), username, or trd_-prefixed trader id - from (string, optional): Inclusive RFC3339 lower bound on the trade time; defaults to 90 days before to - to (string, optional): Exclusive RFC3339 upper bound; defaults to now - min_size (number, optional): Minimum trade size in USD, default 5000 - category (string, optional): Filter by market category (case-insensitive): a sport such as Basketball, a league such as NBA (it folds into its sport), Esports, or sports for every sport but Esports. Omit it for every sports and esports trade Returns: id, address, from, to, min_size, category, basis_version, large_trades, measured (trades, markets, size_usd, mean_clv_cents, stake_weighted_clv_cents, share_beat_close, market_mean_clv_cents, market_ci95_cents with low and high over at least two markets), excluded and meta.

输入参数tofromaddress必填categorymin_size

get_market_holders

Get market holders

The S, A and B graded wallets holding one Polymarket market, from a complete provider holder scan: shares, Polymarket's currentValue for the leg, grade, win record in the market's category, and badges. A wallet holding both outcomes is listed once on its net side. Ordered by current value. The roster is at most 60 seconds old over a provider walk at most 180 seconds old; scan.fetched_at is its only timestamp. An incomplete scan is an error with a retry time, never a shorter list. C, D, F and ungraded wallets are never listed and are counted only in scan.wallet_count; get_market_top_holders lists the largest holders of every grade. Counts differ from get_positions by design: a live scan, the graded cohort, and no 100 USD size floor. Args: - condition_id (string, required): Raw provider condition_id or the mkt_-prefixed market id - outcome (string, optional): yes, no, or all (default) - min_grade (string, optional): S keeps S, A keeps S and A, B (default) keeps S, A and B - limit (number, 1-100, default 20): Holders per page - cursor (string, optional): next_cursor from the previous page, bound to the same market and filters Returns: data (holders), has_more, next_cursor, total, market, scan, totals and meta. totals covers the whole roster before outcome and min_grade: yes_usd and no_usd, the S, A and B wallet counts per side (yes_grades, no_grades), and that USD split by grade per side (yes_grade_usd, no_grade_usd), so the S-grade money on each side needs no page walk.

输入参数limitcursoroutcomemin_gradecondition_id必填

get_market_top_holders

Get market top holders

The largest holders of one Polymarket market on each outcome, every grade from S to F and ungraded wallets included: the event page's Top holders table. Up to 100 per outcome, largest shares first, with Polymarket's current value, average entry price and position P&L for the leg, the wallet's grade, its sports and esports realized P&L and volume, its win record in the market's category, and badges. Use get_market_holders for the complete S, A and B roster; this is the top of the holder board, whatever the grade. On an open market the sample is rebuilt at most every 30 seconds from a holder board re-read at most every 120 seconds, so positions are usually up to about 150 seconds old: positions_as_of says when the board was fetched and computed_at when the sample was built. Once the 30 seconds pass, the last sample comes back with source_stale true while a new one builds, if its board is at most 300 seconds old; read again a few seconds later for the new sample. A resolved market's sample is at most 300 seconds old. Busy or unavailable holder data is an error with a retry time. Args: - condition_id (string, required): Raw provider condition_id or the mkt_-prefixed market id - limit (number, 1-100, default 20): Holders per outcome Returns: market, yes and no (holder rows, each with rank), totals (yes_count, no_count, yes_shares and no_shares over the whole sample before limit, and sample_cap: a count equal to it means that many or more), profiles_status, category_records_as_of, computed_at, positions_as_of, source_stale and meta.

输入参数limitcondition_id必填

get_market_candles

Get market price candles

OHLC price candles for a market's outcome tokens from the stored Polymarket CLOB price history, the series the market chart draws, for open and resolved markets. The stored series is daily: a 1d candle usually holds one point, so its open, high, low and close are that day's close, and 1w aggregates the daily closes. No intraday detail is invented. Args: - condition_id (string, required): Raw provider condition_id or the mkt_-prefixed market id - resolution (string, optional): 1d (default, UTC day) or 1w (ISO week from Monday 00:00 UTC) - from (integer, optional): Exclusive lower bound, unix seconds - to (integer, optional): Inclusive upper bound, unix seconds; from must not be after to Returns: condition_id, resolution, and outcomes, each with its token_id and candles, plus meta.

输入参数tofromresolutioncondition_id必填

get_market_close

Get market closing line

The closing line of one sports or esports market: the price Polymarket's own price-history series recorded for each outcome in the last minute bucket that ended at or before kickoff, read once after the market settles and stored unchanged. Not a midpoint and not a last trade. outcomes[0] is the YES leg as stored; outcomes[1] is the NO leg, 1 minus the YES price (derived_from_yes true). status is measured with both legs; pending when no close is stored yet (the game has not started, the market has not settled, or the capture has not reached it; it measures markets up to 30 days after kickoff); or unavailable with unavailable_reason when none will be served. A missing close is never 0. anchor_stale is true when kickoff has moved more than lookback_seconds since capture. The same close measures the clv object on each large trade. Args: - condition_id (string, required): Raw provider condition_id or the mkt_-prefixed market id Returns: condition_id, status, unavailable_reason, game_start_time, close_anchor_at, close_anchor_source, anchor_stale, lookback_seconds, observed_at, observation_window_seconds, price_source, basis_version, captured_at, outcomes (outcome_index, outcome, token_id, close_price, derived_from_yes) and meta.

输入参数condition_id必填

get_market_wallets_in_out

Get a market's net buyers and sellers

One market's net buyers and net sellers over the last 24 hours or 7 days, live: the 0xinsider market page's wallets in/out panel for a Pro viewer. A wallet's net is its buys minus its sells in the window across both outcomes, in USD of matched notional, fees excluded. Args: - condition_id (string, required): Raw provider condition_id or the mkt_-prefixed market id - window (string, optional): 24h (default) or 7d Returns: condition_id, window, window_start and window_end (the inclusive bounds the read used), summary (wallets_in and wallets_out, the count of wallets with a positive and a negative net over every wallet in the window, and net_usd, the sum of every net), net_buyers (largest net first) and net_sellers (most negative first), at most 25 each, each wallet with its address, display_name, current grade, net_usd, trades in the window and last_traded_at (its newest trade on any market, at or before window_end), plus meta. A wallet that bought and sold the same amount nets zero and is on neither list. Reads are cached for about a minute. A condition_id with no market page answers not_found; a market outside sports and esports answers market_out_of_scope.

输入参数windowcondition_id必填

get_combo_fills

Get combo fills

Live Polymarket combo (multi-leg) taker fills with exact decimal-string economics, wallet identity and grade, legs, conjunction result and ingest coverage. Requires a Pro or Max API key. The listing holds executions priced at most 0.95; get_combo has a combo's complete history. sort recent pages with next_cursor; largest and payout page with next_offset. A continuation can end on an empty page. Args: - result (string, optional): CSV of pending, won, lost; all clears the filter - legs (string, optional): CSV of 2, 3, 4, 5+; all clears the filter - min_stake (integer, optional, default 0): Minimum collateral in whole USDC - min_multiplier (integer, optional, default 0): 0 disables the filter; otherwise 2 to 1000000 shares per dollar at execution - grades (string, optional): CSV of S, A, B, C, D, F; all clears the filter; ungraded wallets never match - sports (string, optional): CSV of sport slugs such as nfl, nba, soccer, esports; all clears the filter; a combo matches when any leg is in a selected sport - sort (string, optional): recent (default, newest first), largest (collateral), or payout (buy-fill shares, sells excluded) - window (string, optional): 24h, 7d or all; defaults to all for recent and 24h for largest and payout - limit (number, 1-200, default 50): Fills per page - cursor (string, optional): next_cursor from the previous recent page - offset (number, 0-5000, optional): next_offset from the previous largest or payout page Returns: data (fills), has_more, next_cursor, next_offset, limit, sort, window, coverage and meta.

输入参数legssortlimitcursorgradesoffsetresultsportswindowmin_stakemin_multiplier

get_combos_summary

Get live combo count

The stored count of traded Polymarket combos whose YES conjunction is still pending, and when it was computed. Requires a Pro or Max API key. The count refreshes at most every five minutes and is cached for 60 seconds. A null live value is unknown, never zero. Returns: live (count and computed_at, or null) and meta.

无需输入参数。

get_combo

Get combo

One Polymarket combo: legs, conjunction result, all-time trade totals, the newest 100 taker fills, lifecycle totals and ingest coverage. Requires a Pro or Max API key. Unlike get_combo_fills it keeps executions priced above 0.95. Null lifecycle or missing leg facts are unknown, never zero. Args: - condition_id (string, required): Combo ID, 0x and 62 lowercase hex characters; not a binary market's condition_id Returns: combo, fills, lifecycle, coverage, access and meta. A malformed ID is a bad_request error and an unknown one not_found.

输入参数condition_id必填

get_large_trade_counterparty_executions

Get large trade counterparty executions

Page the counterparty executions of one large trade past the first page get_large_trade embeds in counterparty_analysis. Reads the immutable snapshot that response names; a stale or changed snapshot fails with reason cursor_expired, so read get_large_trade again and restart. Args: - id (string, required): Large trade ID such as wt_123 or 123 - snapshot_id (string, required): counterparty_analysis.snapshot_id from get_large_trade - cursor (string, optional): executions_next_cursor from get_large_trade or from the previous page - limit (number, 1-100, default 100): Executions per page Returns: executions (each with its first makers page and makers_next_cursor), executions_next_cursor, execution counts, status and meta.

输入参数id必填limitcursorsnapshot_id必填

get_large_trade_counterparty_makers

Get large trade counterparty makers

Page the maker wallets of one counterparty execution past the first page its execution embeds. Percentages keep the whole execution as their denominator across pages. Args: - id (string, required): Large trade ID such as wt_123 or 123 - execution_id (string, required): execution_id of the execution - snapshot_id (string, required): counterparty_analysis.snapshot_id from get_large_trade - cursor (string, optional): makers_next_cursor from the execution or next_cursor from the previous page - limit (number, 1-100, default 100): Makers per page Returns: items (makers), next_cursor, execution_id, snapshot_id and meta.

输入参数id必填limitcursorsnapshot_id必填execution_id必填

版本历史

23
  1. v3.15.0最新Nov 7, 2026
  2. v3.14.0Nov 4, 2026
  3. v3.13.0Nov 4, 2026
  4. v3.11.0Nov 3, 2026
  5. v3.10.0Nov 3, 2026
  6. v3.6.2Oct 22, 2026
  7. v3.6.1Oct 16, 2026
  8. v3.5.0Oct 14, 2026
  9. v3.4.0Oct 12, 2026
  10. v3.3.0Oct 12, 2026
  11. v3.0.0Oct 11, 2026
  12. v2.14.4Oct 7, 2026
  13. v2.14.3Oct 6, 2026
  14. v2.14.0Oct 1, 2026
  15. v2.12.4Sep 30, 2026
  16. v2.12.2Sep 29, 2026
  17. v2.12.1Sep 29, 2026
  18. v2.12.0Sep 27, 2026
  19. v2.11.4Sep 27, 2026
  20. v2.1.3Sep 23, 2026
  21. v2.1.0Sep 21, 2026
  22. v1.3.1Sep 19, 2026
  23. v1.2.3Sep 17, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分