Skip to main content
These are the objects the API returns, generated directly from the OpenAPI schema so they always match the live contract. Each table lists a field, its type, whether it is always present, and what it means.

AccountIdentity

AgentRegistration

A sandbox key and the path to live access (#13959). Nothing is stored: the key cannot be listed or revoked and does not expire. Register again for a new one.

ApiDiscovery

ApiError

ApiErrorBody

BatchMarketFlowItem

BatchRateLimitMeta

BatchResponseMeta

BatchTraderItem

Candle

One bucketed OHLC price candle. Prices are in provider [0, 1] units, truncated to 4 decimals at the rendering edge.

CategorySkillModelReadiness

Model-wide readiness, read in the same database snapshot as category_records. Individual category rows retain their own status.

CategorySkillV2

Forward-only category evidence from observed Polymarket taker fills. Status is category eligibility, not a global letter grade or a guarantee of positive edge. Scores are probability differences. Unknown and degraded rows withhold scores. Coverage is partial; observation counts are not lifetime market counts.

ContentSearchResult

CounterpartyAnalysis

CounterpartyExecution

CounterpartyMakerPage

CounterpartyMatchBreakdown

CounterpartyParticipant

CreateWebhookRequest

DataQuality

Compact data age and coverage for a response body, always present on the operations that publish it. Read status and as_of to decide whether to use the body at all, and field_groups to see which part is weak. Everything here comes from stored observation clocks, so a cached body reports the same ages a freshly computed one does: meta.cached and meta.cache_age_s stay the only transport-time facts and neither makes this block newer. The per-field audit object is still available through expand=trust; this is the default summary of the same question.

DataQualityGroup

One group of response fields that share a writer and therefore share a clock.

EventReplayEvent

EventReplayFreshness

EventReplayMeta

EventReplaySource

ExactDecimal

A lossless decimal atom rendered from the canonical NUMERIC or provider value. The value is a decimal string and must be parsed with a decimal library; it is never a display string and must not be converted through a binary float. scale is the source decimal scale. The field is omitted when its source is unavailable.

ExploreEntry

One of: ExploreGroup, ExploreStandalone. Discriminated by type.

ExploreFacetValue

ExploreFacets

ExploreGroup

ExploreMarket

ExploreStandalone

ExportCompleteness

ExportCounts

ExportSourceRange

ExportVolumeReconciliation

FreshnessFailure

Game

One sports or esports game: both sides, its schedule, provider status, linked Polymarket markets and their available provider moneyline price states. Assembled from the same provider-first live and upcoming projections the site’s boards use, with no request-time provider fan-out.

GameCompetitor

One side of the game.

GameCoverage

What this game’s read actually supplied, so a client branches on coverage instead of on a missing key.

GameFreshness

How current this game’s facts are. Independent per source: the board half that produced the game, and the live-score frame that produced its scores.

GameMarket

One Polymarket market linked to this game.

GameMarketPriceBindingProvenance

How the existing sports-board writer bound prices to competitors. String enum: provider_ids, exact_labels, containment_labels, elimination.

GameMarketPriceCompetitor

One competitor-bound provider moneyline price. No YES/NO inference is required.

GameMarketPriceIncomplete

The provider moneyline pair is incomplete; no numeric pair is invented.

GameMarketPriceInvalid

The provider moneyline pair is invalid; no numeric pair is invented.

GameMarketPricePaired

A validated provider moneyline pair bound to the two competitors.

GameMarketPrices

Provider-owned moneyline state with the observation clock that can be compared with game freshness.

GameMarketProviderPrices

One of: GameMarketPricePaired, GameMarketPriceIncomplete, GameMarketPriceInvalid. Discriminated by state.

GameStatus

Where the game is in its own life, as the provider reports it. A postponement, a cancellation and a suspension each keep their own state, so a client can tell a game that will be played later from one that never will be.

GamesCoverage

What this deployment covers, published with every page so a client never has to guess whether an empty list means no games or no coverage.

HolderCategoryEvidence

Current category evidence, independent of the global grade. Pick of the Day stamps only the served display roster; frozen entry snapshots remain unchanged.

LargeExportPolicy

LargePosition

LargeTrade

LargeTradeDetail

No documented fields.

LargeTradeHistoryMeta

LargeTradeSubscriptionFilters

All present fields narrow large_trade_inserted_v2 delivery. Grade is observed at publication; ungraded trades do not match min_grade. An empty object matches every large trade.

LeaderboardEntry

MarketCandles

Provider-first bucketed OHLC price candles for a market’s outcome tokens, derived from the stored token_price_snapshots series (covers open and resolved markets).

MarketFlow

MarketHolder

MarketHoldersMarket

MarketHoldersScan

MarketHoldersSideGrades

MarketHoldersTotals

Roster totals BEFORE any outcome or min_grade filter, so a page always knows the whole market it was cut from.

MarketSearchResult

MarketSnapshot

MarketSnapshotFreshness

MarketSnapshotTopOfBook

MarketSnapshotTrust

Price and spread trust metadata returned only when GET /api/v1/market/{condition_id}/snapshot includes expand=trust.

McpJsonRpcError

OutcomeCandles

One outcome token’s bucketed candle series.

PickHolder

PickOfTheDay

PickOfTheDayArchive

PickOfTheDayArchiveDay

PickOfTheDayArchiveEntry

PickOfTheDayCommitmentPayload

The frozen identity of the pick, exactly as the hash was taken over it. Served byte for byte as it was hashed — keys sorted by UTF-8 byte value, no insignificant whitespace — so a verifier concatenates and hashes with nothing to reconstruct. Property order below is the wire order. The outcome is deliberately NOT part of it: surviving a corrected outcome unchanged is the case the commitment exists for. Worked example: {“backed_price”:“0.545000”,“condition_id”:“0xabc”,“kickoff”:“2026-09-20T23:05:00Z”,“pick_date”:“2026-09-20”,“pick_outcome_index”:1,“pick_outcome_label”:“Lakers”,“pick_rank”:1,“platform”:“polymarket”} with the nonce 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f hashes to 44d18fa5e2aa3a2bf3c971dcc9317c8ccbdfd5480a4773b6d8ffd5fbeeea84dc.

PickOfTheDayHitRate

PickOfTheDayLedger

The commitment ledger: every published pick, ascending, in the state its commitment is actually in. The counts are derived from entries in the same pass that builds it.

PickOfTheDayLedgerEntry

One ledger entry. Read state to know which shape you have; the three are disjoint. One of: PickOfTheDayLedgerSealedEntry, PickOfTheDayLedgerOpenedEntry, PickOfTheDayLedgerUncommittedEntry. Discriminated by state.

PickOfTheDayLedgerOpenedEntry

A settled pick whose commitment is open: the nonce plus the exact payload the hash was taken over. Concatenate the payload bytes as received with the decoded nonce and sha256 them to reproduce commitment_hash.

PickOfTheDayLedgerSealedEntry

A published pick that has not settled. Carries the commitment and nothing that states a side or a price: no nonce, no payload, no outcome. Publishable the instant the pick releases.

PickOfTheDayLedgerUncommittedEntry

A published pick with no commitment: it predates the scheme, or it reached kickoff unsealed. Nothing here is evidence of WHEN the pick was made. It is emitted rather than skipped, because a ledger with holes where the unprovable picks were would silently flatter the record. Once the pick settles, payload names its market, side and price, so the outcome can still be checked against the market’s own resolution.

PickOfTheDayUncommittedPayload

A settled uncommitted pick’s market, side and price. The same eight fields as PickOfTheDayCommitmentPayload, in the same key order, so a settled pick’s side and price sit under payload whatever the entry’s state. It is NOT a commitment: no hash was taken over it before the game, and it proves nothing about when the pick was made.

PickSportsContext

Provider-first sports context for a Pick of the Day market: team crests, league branding, and live score. Team logos and league logo are provider-owned (Polymarket /teams crests for clubs, country flags for national teams and tennis players); no local derivation.

PickSportsTeam

A single sports team or competitor in a Pick of the Day market’s sports context. Identity and score fields are provider-owned and nullable. The structured score fields (sets, format, sets_won) and the tennis fields (headshot, tour) are backend-owned and are OMITTED rather than null when they do not apply, so a consumer must treat an absent key and a null the same way.

PickTrust

Field-level trust metadata for the full Pick of the Day payload. Present on the full shape only (omitted on the teaser and the no-pick state, because whether a specialist backs the pick is itself backed-side evidence). Unlike TraderTrust it is not gated behind expand=trust: it carries one member on an endpoint that returns a single object per day.

PlatformCapabilities

PlatformCapabilityStatus

String enum: supported, partial, unsupported.

Platforms

Position

PositionExact

Lossless position atoms from wallet_positions. shares and current_value_usd are required when this object is present; other source values are omitted when the mirror has no verified value.

PositionTimelineEvent

PotdEntryAuthorization

Policy-7 issuance binds one condition, selected token, outcome, canonical event and sport. Reuse the same authorization across public/private discovery and retries. Require a new account-size executable book and current market eligibility; this frozen reference does not prove current liquidity or positive expected value. Absence or expiry cannot authorize a new automated entry.

PreGameSide

One ranked pre-game sports market where graded sharp money is piled on one side, with required-status shadow category evidence from partial forward-observed Polymarket fills.

PreGameSideCategorySkill

Shadow-only category evidence over the full uncapped piled-side S/A/B holder allocation. It never changes signal membership, ordering, routing, or sizing.

PreGameSideFunnelReport

Per-sport accountable funnel for the full observation snapshot, returned on every page.

PreGameSideObservation

One explicitly observation-only holder-pile measurement. It is evidence for cohort evaluation, not an execution instruction, and is isolated from the funded sports-edge-signals route.

PreGameSideObservationTerminalReason

Closed 25-value terminal-reason vocabulary for the accountable sports-edge observation funnel. capacity_limited is intentional bounded provider-work admission and does not itself set the snapshot degraded. board_source_unavailable is a completed board-source failure; board_deadline_unavailable means live-board work missed either an internal configured-scope deadline or the outer fair-wave deadline; both classify only already-started rows, so for the upcoming source read funnel.sports[].board_upcoming_status instead; provider_unavailable is reserved for an attempted holder-provider failure; holder_deadline_unavailable is holder cache/provider absolute-deadline exhaustion. String enum: outside_horizon, resolved, provider_closed, provider_excluded, invalid_market, missing_token, missing_stored_market, not_provider_live, board_source_unavailable, board_deadline_unavailable, primary_slate_candidate, zero_indexed_holder_research, capacity_limited, provider_unavailable, holder_deadline_unavailable, holder_computation_unavailable, holder_scan_incomplete, no_current_graded_holder, split_holder_pile, price_unavailable, wider_holder_emitted, in_play_emitted, in_play_stale_observed, in_play_directional_unavailable, internal_unclassified.

PreGameSideSportFunnelReport

Independent sports-board supply plus stored-universe terminal accounting for one canonical sport.

ProofPendingPickSlot

One PUBLISHED same-day pick whose holder proof is not readable yet: its stable slot rank, the release and kickoff instants, and the instant before which a retry cannot succeed. Every item in picks carries its full required shape, so a pick that cannot meet it is listed here instead of being served with missing fields or a synthetic zero.

ReportPayload

ReportReconciliation

ReportSnapshot

ReportSourceRange

ResponseMeta

ScheduledPickSlot

One same-day pick that is selected but not yet released: its stable slot rank plus the backend-owned release and kickoff instants. Deliberately minimal — no matchup, category, platform, side, price, or holder fields exist on this shape before release.

ScoreCell

One side’s score in a single set. The verbatim provider text stays on the team’s score string; this is the parsed form.

ScoreFormat

Shape the provider score string was parsed into. two_side is one aggregate per side (basketball 105-98), multi_set is per-set columns (tennis 6-7(5-7), 6-0, 1-0), esports_series is a maps/sets/format triplet (000-000\|2-0\|Bo3). Omitted when the score could not be parsed. String enum: two_side, multi_set, esports_series.

SmartMoneyFlowMarket

SnapshotCompleteness

SnapshotState

SuspiciousTrade

Trader

TraderCategoryRecord

TraderCategoryRecords

TraderContext

TraderEsportsGameRecord

TraderExportArtifactManifest

TraderExportCategoryWatermark

TraderExportGeneration

TraderExportJob

TraderExportPnlWatermark

TraderExportPositionWatermark

TraderExportSnapshot

TraderExportSourceWatermarks

TraderExportTradeWatermark

TraderGradeAt

TraderPnl

A trader’s daily P&L object. id is always present. The five sections — entries, stats, monthly, year_totals, drawdown — are present unless the request’s sections parameter excluded them, so a request that sends no sections always carries all five. An excluded section is absent from the object, never null and never an empty array.

TraderPnlExact

Lossless counterparts for trader P&L values. The object is omitted when no trusted native realized-P&L snapshot is available.

TraderStatsExact

Lossless counterparts for trader statistics. The object is omitted when the verified provider observation is unavailable.

TraderTrust

Field-level trust metadata returned only when GET /api/v1/trader/{address} includes expand=trust.

TrendingWallet

TrustCompleteness

Whether the described value or result set is complete for its stated contract.

TrustFreshness

Freshness metadata for a trust-critical value. This is separate from transport cache fields in ResponseMeta.

TrustMetadata

Shared source/freshness/reconciliation/completeness metadata for public API values that may be cached, stale, partial, computed, or provider-unavailable. Unavailable provider values must be represented with explicit metadata instead of fabricated zeros or empty arrays.

TrustReconciliation

How provider-owned facts were reconciled with stored/read-model values.

TrustSource

Source metadata for a trust-critical value. Providers and DB/read models own business truth; clients should not infer missing provider facts from titles, slugs, zeros, or empty arrays.

UpdateWebhookRequest

Usage

VerifyWebhookRequest

WebhookDelivery

Owner-scoped view of one webhook delivery attempt. Deliberately omits the request body and the endpoint signing secret: a delivery log never re-exposes the payload or any secret material.

WebhookEndpoint

WebhookEventDescriptor

Self-describing entry in the webhook event catalog: the event type a subscriber lists in event_types, when it fires, the data payload shape, and whether it currently fires (active) or is reserved (dormant, subscribable but not yet delivered). Pro-only event types (large_trades_inserted, whale_trades_inserted, wallet_grade_changed, suspicious_trade_flagged, insider_radar_flag_raised, sharp_money_flow_detected, smart_money_flow_detected) only deliver to API keys on an active Pro subscription. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are owner-scoped to the API-key account that created the export and contain no download URL; use the authorized export status/download routes. Some entries are two spellings of one event: large_trades_inserted and whale_trades_inserted, trader_synced and whale_trader_synced, suspicious_trade_flagged and insider_radar_flag_raised, sharp_money_flow_detected and smart_money_flow_detected. Either spelling subscribes, and an endpoint receives deliveries under the spelling it registered.

WebhookEventType

String enum: large_trade_inserted_v2, large_trades_inserted, whale_trades_inserted, live_sports_updated, trader_synced, whale_trader_synced, large_positions_updated, wallet_grade_changed, suspicious_trade_flagged, insider_radar_flag_raised, sharp_money_flow_detected, smart_money_flow_detected, export_job_ready, export_job_failed, export_job_expired, export_job_cancelled.

WebhookRetryPolicy

WebhookSecretRotation

WebhookStatus

String enum: pending_verification, active, disabled.

WebhookVerification